mirror of
https://github.com/DoneJS-Runtime/quickjs-done-nextgen.git
synced 2025-01-09 17:43:15 +00:00
Enable all debug flags when compiling in debug mode
They still need to be individually enabled either via API or with the -D CLI flag, but there is no need to modify the code and re-compile.
This commit is contained in:
parent
8c58e01928
commit
114b8a4095
2 changed files with 23 additions and 29 deletions
|
@ -177,11 +177,6 @@ endif()
|
||||||
|
|
||||||
add_library(qjs ${qjs_sources})
|
add_library(qjs ${qjs_sources})
|
||||||
target_compile_definitions(qjs PRIVATE ${qjs_defines})
|
target_compile_definitions(qjs PRIVATE ${qjs_defines})
|
||||||
if(CMAKE_BUILD_TYPE MATCHES Debug OR DUMP_LEAKS)
|
|
||||||
target_compile_definitions(qjs PRIVATE
|
|
||||||
DUMP_LEAKS
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
target_include_directories(qjs PUBLIC
|
target_include_directories(qjs PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
|
||||||
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
|
||||||
|
|
47
quickjs.c
47
quickjs.c
|
@ -67,31 +67,30 @@
|
||||||
#define CONFIG_ATOMICS
|
#define CONFIG_ATOMICS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Debug trace system:
|
// Debug trace system: the debug output will be produced to the dump stream (currently
|
||||||
// uncomment one or more DUMP_XXX definition to produce debug output.
|
// stdout) if qjs is invoked with -D<bitmask> with the corresponding bit set.
|
||||||
// define the DUMP_XXX symbol as empty or 0 for unconditional output
|
|
||||||
// otherwhise the debug output will be produced to the dump stream (currently
|
|
||||||
// stdout) if qjs is invoked with -d<bitmask> with the corresponding bit set.
|
|
||||||
|
|
||||||
//#define DUMP_BYTECODE_FINAL 0x01 /* dump pass 3 final byte code */
|
#ifndef NDEBUG
|
||||||
//#define DUMP_BYTECODE_PASS2 0x02 /* dump pass 2 code */
|
#define DUMP_BYTECODE_FINAL 0x01 /* dump pass 3 final byte code */
|
||||||
//#define DUMP_BYTECODE_PASS1 0x04 /* dump pass 1 code */
|
#define DUMP_BYTECODE_PASS2 0x02 /* dump pass 2 code */
|
||||||
//#define DUMP_BYTECODE_HEX 0x10 /* dump bytecode in hex */
|
#define DUMP_BYTECODE_PASS1 0x04 /* dump pass 1 code */
|
||||||
//#define DUMP_BYTECODE_PC2LINE 0x20 /* dump line number table */
|
#define DUMP_BYTECODE_HEX 0x10 /* dump bytecode in hex */
|
||||||
//#define DUMP_BYTECODE_STACK 0x40 /* dump compute_stack_size */
|
#define DUMP_BYTECODE_PC2LINE 0x20 /* dump line number table */
|
||||||
//#define DUMP_BYTECODE_STEP 0x80 /* dump executed bytecode */
|
#define DUMP_BYTECODE_STACK 0x40 /* dump compute_stack_size */
|
||||||
//#define DUMP_READ_OBJECT 0x100 /* dump the marshalled objects at load time */
|
#define DUMP_BYTECODE_STEP 0x80 /* dump executed bytecode */
|
||||||
//#define DUMP_FREE 0x200 /* dump every object free */
|
#define DUMP_READ_OBJECT 0x100 /* dump the marshalled objects at load time */
|
||||||
//#define DUMP_GC 0x400 /* dump the occurrence of the automatic GC */
|
#define DUMP_FREE 0x200 /* dump every object free */
|
||||||
//#define DUMP_GC_FREE 0x800 /* dump objects freed by the GC */
|
#define DUMP_GC 0x400 /* dump the occurrence of the automatic GC */
|
||||||
//#define DUMP_MODULE_RESOLVE 0x1000 /* dump module resolution steps */
|
#define DUMP_GC_FREE 0x800 /* dump objects freed by the GC */
|
||||||
//#define DUMP_PROMISE 0x2000 /* dump promise steps */
|
#define DUMP_MODULE_RESOLVE 0x1000 /* dump module resolution steps */
|
||||||
//#define DUMP_LEAKS 0x4000 /* dump leaked objects and strings in JS_FreeRuntime */
|
#define DUMP_PROMISE 0x2000 /* dump promise steps */
|
||||||
//#define DUMP_ATOM_LEAKS 0x8000 /* dump leaked atoms in JS_FreeRuntime */
|
#define DUMP_LEAKS 0x4000 /* dump leaked objects and strings in JS_FreeRuntime */
|
||||||
//#define DUMP_MEM 0x10000 /* dump memory usage in JS_FreeRuntime */
|
#define DUMP_ATOM_LEAKS 0x8000 /* dump leaked atoms in JS_FreeRuntime */
|
||||||
//#define DUMP_OBJECTS 0x20000 /* dump objects in JS_FreeRuntime */
|
#define DUMP_MEM 0x10000 /* dump memory usage in JS_FreeRuntime */
|
||||||
//#define DUMP_ATOMS 0x40000 /* dump atoms in JS_FreeRuntime */
|
#define DUMP_OBJECTS 0x20000 /* dump objects in JS_FreeRuntime */
|
||||||
//#define DUMP_SHAPES 0x80000 /* dump shapes in JS_FreeRuntime */
|
#define DUMP_ATOMS 0x40000 /* dump atoms in JS_FreeRuntime */
|
||||||
|
#define DUMP_SHAPES 0x80000 /* dump shapes in JS_FreeRuntime */
|
||||||
|
#endif
|
||||||
|
|
||||||
//#define FORCE_GC_AT_MALLOC /* test the GC by forcing it before each object allocation */
|
//#define FORCE_GC_AT_MALLOC /* test the GC by forcing it before each object allocation */
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue