[Intermediate Representation] Added skeleton

This commit is contained in:
Philippe Tillet
2018-12-31 22:47:31 -05:00
parent d260aefbd1
commit e7a4e70e22
22 changed files with 729 additions and 484 deletions

View File

@@ -1,10 +1,6 @@
#include <cstring>
#include <cstdio>
#include "ast.h"
#include "codegen.h"
#include "llvm/IR/IRPrintingPasses.h"
#include "llvm/IR/LegacyPassManager.h"
#include "llvm/IR/PassManager.h"
typedef struct yy_buffer_state * YY_BUFFER_STATE;
extern int yyparse();
@@ -29,12 +25,12 @@ int main() {
YY_BUFFER_STATE buffer = yy_scan_string(src);
yyparse();
yy_delete_buffer(buffer);
translation_unit *program = ast_root;
tdl::context context;
tdl::module module("matrix", &context);
program->codegen(&module);
llvm::PrintModulePass print(llvm::outs());
llvm::AnalysisManager<llvm::Module> analysis;
print.run(*module.handle(), analysis);
// translation_unit *program = ast_root;
// tdl::context context;
// tdl::module module("matrix", &context);
// program->codegen(&module);
// llvm::PrintModulePass print(llvm::outs());
// llvm::AnalysisManager<llvm::Module> analysis;
// print.run(*module.handle(), analysis);
return 0;
}