Reactor: Copy new debug macros to Reactor.
Fix up all calls to `assert()` in [LLVM,Subzero]Reactor.cpp with an appropriate call to one of these macros.
Bug: b/127433389
Change-Id: I188add3929c46932b8de5acf2ac4b2ac83b0768b
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/29055
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Tested-by: Ben Clayton <bclayton@google.com>
diff --git a/src/Reactor/Debug.cpp b/src/Reactor/Debug.cpp
index adfcabd..7f0d2cd 100644
--- a/src/Reactor/Debug.cpp
+++ b/src/Reactor/Debug.cpp
@@ -14,26 +14,61 @@
#include "Debug.hpp"
-#include <stdio.h>
+#include <string>
#include <stdarg.h>
namespace rr
{
-void trace(const char *format, ...)
+
+void tracev(const char *format, va_list args)
{
+#ifndef RR_DISABLE_TRACE
if(false)
{
- FILE *file = fopen("debug.txt", "a");
+ FILE *file = fopen(TRACE_OUTPUT_FILE, "a");
if(file)
{
- va_list vararg;
- va_start(vararg, format);
- vfprintf(file, format, vararg);
- va_end(vararg);
-
+ vfprintf(file, format, args);
fclose(file);
}
}
+#endif
}
-}
\ No newline at end of file
+
+void trace(const char *format, ...)
+{
+ va_list vararg;
+ va_start(vararg, format);
+ tracev(format, vararg);
+ va_end(vararg);
+}
+
+void warn(const char *format, ...)
+{
+ va_list vararg;
+ va_start(vararg, format);
+ tracev(format, vararg);
+ va_end(vararg);
+
+ va_start(vararg, format);
+ vfprintf(stderr, format, vararg);
+ va_end(vararg);
+}
+
+void abort(const char *format, ...)
+{
+ va_list vararg;
+
+ va_start(vararg, format);
+ tracev(format, vararg);
+ va_end(vararg);
+
+ va_start(vararg, format);
+ vfprintf(stderr, format, vararg);
+ va_end(vararg);
+
+ ::abort();
+}
+
+} // namespace rr