summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bx/src/debug.cpp
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bx/src/debug.cpp')
-rw-r--r--3rdparty/bx/src/debug.cpp24
1 files changed, 17 insertions, 7 deletions
diff --git a/3rdparty/bx/src/debug.cpp b/3rdparty/bx/src/debug.cpp
index 8e8bae122a6..062df287d7a 100644
--- a/3rdparty/bx/src/debug.cpp
+++ b/3rdparty/bx/src/debug.cpp
@@ -1,9 +1,8 @@
/*
- * Copyright 2010-2018 Branimir Karadzic. All rights reserved.
- * License: https://github.com/bkaradzic/bx#license-bsd-2-clause
+ * Copyright 2010-2022 Branimir Karadzic. All rights reserved.
+ * License: https://github.com/bkaradzic/bx/blob/master/LICENSE
*/
-#include "bx_p.h"
#include <bx/debug.h>
#include <bx/string.h> // isPrint
#include <bx/readerwriter.h> // WriterI
@@ -24,8 +23,8 @@ extern "C" __declspec(dllimport) void __stdcall OutputDebugStringA(const char* _
# include <CoreFoundation/CFString.h>
extern "C" void NSLog(CFStringRef _format, ...);
# endif // defined(__OBJC__)
-#elif 0 // BX_PLATFORM_EMSCRIPTEN
-# include <emscripten.h>
+#elif BX_PLATFORM_EMSCRIPTEN
+# include <emscripten/emscripten.h>
#else
# include <stdio.h> // fputs, fflush
#endif // BX_PLATFORM_WINDOWS
@@ -43,6 +42,17 @@ namespace bx
// NaCl doesn't like int 3:
// NativeClient: NaCl module load failed: Validation failure. File violates Native Client safety rules.
__asm__ ("int $3");
+#elif BX_PLATFORM_EMSCRIPTEN
+ emscripten_log(0
+ | EM_LOG_CONSOLE
+ | EM_LOG_ERROR
+ | EM_LOG_C_STACK
+ | EM_LOG_JS_STACK
+ , "debugBreak!"
+ );
+ // Doing emscripten_debugger() disables asm.js validation due to an emscripten bug
+ //emscripten_debugger();
+ EM_ASM({ debugger; });
#else // cross platform implementation
int* int3 = (int*)3L;
*int3 = 3;
@@ -69,7 +79,7 @@ namespace bx
# else
NSLog(__CFStringMakeConstantString("%s"), _out);
# endif // defined(__OBJC__)
-#elif 0 // BX_PLATFORM_EMSCRIPTEN
+#elif BX_PLATFORM_EMSCRIPTEN
emscripten_log(EM_LOG_CONSOLE, "%s", _out);
#else
fputs(_out, stdout);
@@ -137,7 +147,7 @@ namespace bx
if (NULL != _data)
{
- const uint8_t* data = reinterpret_cast<const uint8_t*>(_data);
+ const uint8_t* data = (const uint8_t*)_data;
char hex[HEX_DUMP_WIDTH*3+1];
char ascii[HEX_DUMP_WIDTH+1];
uint32_t hexPos = 0;