aboutsummaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/main.c b/main.c
index df9807a..e0b06a7 100644
--- a/main.c
+++ b/main.c
@@ -3,6 +3,7 @@
#include <stdlib.h>
#include "cibic.tab.h"
#include "ast.h"
+#include "ssa.h"
#include "semantics.h"
extern char linebuff[];
@@ -51,6 +52,12 @@ void print_sem() {
/* cnode_debug_print(ast_root, 1); */
}
+void print_ssa() {
+ cibic_init();
+ yyparse();
+ ssa_generate(semantics_check(ast_root));
+}
+
void print_help() {
fprintf(stderr,
"CBIC: C Implemented Bare and Ingenuous Compiler\n\n"
@@ -114,7 +121,7 @@ int main(int argc, char **argv) {
{
case PRINT_AST: print_ast(); break;
case PRINT_HELP: print_help(); break;
- default: print_sem();
+ default: print_ssa();
}
return 0;
}