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
13d_m3BeginExternC
14
15void ProfileHit (cstr_t i_operationName);
16
17#ifdef DEBUG
18
19void dump_type_stack (IM3Compilation o);
20void log_opcode (IM3Compilation o, m3opcode_t i_opcode);
21const char * get_indention_string (IM3Compilation o);
22void log_emit (IM3Compilation o, IM3Operation i_operation);
23
24cstr_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
36d_m3EndExternC
37
38#endif // m3_info_h
39