8 #ifndef ARITHMETIC_EXPR_H 9 #define ARITHMETIC_EXPR_H 11 #include <llvm/IR/IRBuilder.h> 12 #include <llvm/IR/Module.h> 38 std::string type_to_string();
49 void code_gen(llvm::Module *M, llvm::IRBuilder<> &B,
50 llvm::BasicBlock *BreakBB);
65 #endif // ARITHMETIC_EXPR_H 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: ArithmeticExpr.cpp:12
void ast_code_gen()
Method for the reverse code generation from the AST. It prints out to the stdout the token itself...
Definition: ArithmeticExpr.cpp:61
Represents the three arithmetic operations that you can use and abuse in Brain.
Definition: ArithmeticExpr.h:34
void debug_description(int level)
Prints debug information when Brain's compiler has the active flags: -v | -emit-ast.
Definition: ArithmeticExpr.cpp:48