| 1 | // |
| 2 | // m3_info.h |
| 3 | // |
| 4 | // Created by Steven Massey on 12/6/19. |
| 5 | // Copyright © 2019 Steven Massey. All rights reserved. |
| 6 | // |
| 7 | |
| 8 | #ifndef m3_info_h |
| 9 | #define m3_info_h |
| 10 | |
| 11 | #include "m3_compile.h" |
| 12 | |
| 13 | d_m3BeginExternC |
| 14 | |
| 15 | void ProfileHit (cstr_t i_operationName); |
| 16 | |
| 17 | #ifdef DEBUG |
| 18 | |
| 19 | void dump_type_stack (IM3Compilation o); |
| 20 | void log_opcode (IM3Compilation o, m3opcode_t i_opcode); |
| 21 | const char * get_indention_string (IM3Compilation o); |
| 22 | void log_emit (IM3Compilation o, IM3Operation i_operation); |
| 23 | |
| 24 | cstr_t SPrintFuncTypeSignature (IM3FuncType i_funcType); |
| 25 | |
| 26 | #else // DEBUG |
| 27 | |
| 28 | #define dump_type_stack(...) {} |
| 29 | #define log_opcode(...) {} |
| 30 | #define get_indention_string(...) "" |
| 31 | #define emit_stack_dump(...) {} |
| 32 | #define log_emit(...) {} |
| 33 | |
| 34 | #endif // DEBUG |
| 35 | |
| 36 | d_m3EndExternC |
| 37 | |
| 38 | #endif // m3_info_h |
| 39 | |