From ab89f9ad268ca75c56e47cf5dd775bf1d8ba42e8 Mon Sep 17 00:00:00 2001 From: Austin Sun Date: Thu, 19 May 2016 16:01:31 -0700 Subject: [PATCH] dd --- ast_stmt.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ast_stmt.cc b/ast_stmt.cc index 527d93c..b491b36 100644 --- a/ast_stmt.cc +++ b/ast_stmt.cc @@ -289,11 +289,12 @@ llvm::Value * IfStmt::Emit(){ } llvm::Value * BreakStmt::Emit(){ + //goes to footer llvm::Value * val; llvm::LLVMContext * context = irgen.GetContext(); llvm::Function * func = irgen.GetFunction(); llvm::BasicBlock * breakBlock = llvm::BasicBlock::Create(*context, "breakBlock", func); - val=llvm::Create (breakBlock, irgen.GetBasicBlock()); + val=llvm::BranchInst::Create (breakBlock, irgen.GetBasicBlock()); } llvm::Value * ContinueStmt::Emit(){ @@ -301,7 +302,7 @@ llvm::Value * ContinueStmt::Emit(){ llvm::LLVMContext * context = irgen.GetContext(); llvm::Function * func = irgen.GetFunction(); llvm::BasicBlock * contBlock = llvm::BasicBlock::Create(*context, "contBlock", func); - val=llvm::Create (contBlock, irgen.GetBasicBlock()); + val=llvm::BranchInst::Create (contBlock, irgen.GetBasicBlock()); } //Not sure @@ -321,6 +322,7 @@ llvm::Value * SwitchStmt::Emit(){ llvm::Value * val; llvm::LLVMContext * context = irgen.GetContext(); llvm::Function * func = irgen.GetFunction(); + //find all cases and create a basic block for all of them for (int i = 0; i < cases->NumElements(); i++){ //cases->Nth(i)->Emit(); @@ -345,6 +347,7 @@ llvm::Value * Case::Emit(){ } llvm::Value * Default::Emit(){ + //stmt->emit(); return NULL; //stmt emit return null } -- 1.9.1