diff --git a/.gitignore b/.gitignore index 02d5c37..e36bf11 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ compiler/config.mk +compiler/build/ +compiler/generated/ +ifcc-test-output/ diff --git a/compiler/CodeGenVisitor.cpp b/compiler/CodeGenVisitor.cpp index 12a56a7..31c0894 100644 --- a/compiler/CodeGenVisitor.cpp +++ b/compiler/CodeGenVisitor.cpp @@ -1,6 +1,6 @@ #include "CodeGenVisitor.h" -antlrcpp::Any CodeGenVisitor::visitProg(ifccParser::ProgContext *ctx) +antlrcpp::Any CodeGenVisitor::visitProg(ifccParser::ProgContext *ctx) { #ifdef __APPLE__ std::cout<< ".globl _main\n" ; @@ -11,7 +11,7 @@ antlrcpp::Any CodeGenVisitor::visitProg(ifccParser::ProgContext *ctx) #endif this->visit( ctx->return_stmt() ); - + std::cout << " ret\n"; return 0; @@ -22,7 +22,11 @@ antlrcpp::Any CodeGenVisitor::visitReturn_stmt(ifccParser::Return_stmtContext *c { int retval = stoi(ctx->CONST()->getText()); - std::cout << " movl $"<