1// 2// Copyright (c) 2002-2010 The ANGLE Project Authors. All rights reserved. 3// Use of this source code is governed by a BSD-style license that can be 4// found in the LICENSE file. 5// 6 7// debug.cpp: Debugging utilities. 8 9#include "compiler/translator/compilerdebug.h" 10 11#include <stdarg.h> 12#include <stdio.h> 13 14#include "compiler/translator/InitializeParseContext.h" 15#include "compiler/translator/ParseContext.h" 16 17#ifdef TRACE_ENABLED 18static const int kTraceBufferLen = 1024; 19 20extern "C" { 21void Trace(const char *format, ...) { 22 if (!format) return; 23 24 TParseContext* parseContext = GetGlobalParseContext(); 25 if (parseContext) { 26 char buf[kTraceBufferLen]; 27 va_list args; 28 va_start(args, format); 29 vsnprintf(buf, kTraceBufferLen, format, args); 30 va_end(args); 31 32 parseContext->trace(buf); 33 } 34} 35} // extern "C" 36#endif // TRACE_ENABLED 37 38