13 #include <llvm/Transforms/Utils/BuildLibCalls.h> 14 #include <llvm/IR/IRBuilder.h> 15 #include <llvm/IR/Module.h> 18 #include "../general/ASTInfo.h" 35 void code_gen(llvm::Module *M, llvm::IRBuilder<> &B,
36 llvm::BasicBlock *BreakBB);
51 #endif // DEBUG_EXPR_H static ASTInfo * instance()
Returns the instance of ASTInfo class if the member _instance is nullptr, otherwise it creates a new ...
Definition: ASTInfo.cpp:15
Abstract class in which all expressions in Brain implement from.
Definition: Expr.h:62
void code_gen(llvm::Module *M, llvm::IRBuilder<> &B, llvm::BasicBlock *BreakBB)
Generates the IR (Intermediate Representation) code to be executed by llvm.
Definition: DebugExpr.cpp:10
Class that represents the debug operator in Brain.
Definition: DebugExpr.h:23
bool is_using_io_lib
Controls if the io.ll module is included within the module which is being interpreted, if the module does not uses any function defined in io.c so it won't include io.ll in their .ll code.
Definition: ASTInfo.h:62
void debug_description(int level)
Prints debug information when Brain's compiler has the active flags: -v | -emit-ast.
Definition: DebugExpr.cpp:25
void ast_code_gen()
Method for the reverse code generation from the AST. It prints out to the stdout the token itself...
Definition: DebugExpr.cpp:37