Commit 07ca8cc17842eac42a2bd477851e987ace68a2a0

Authored by Austin Sun
1 parent eefa7b6f61
Exists in master

break and continue should work

Showing 1 changed file with 4 additions and 3 deletions Side-by-side Diff

... ... @@ -301,7 +301,7 @@
301 301 llvm::LLVMContext * context = irgen.GetContext();
302 302 llvm::Function * func = irgen.GetFunction();
303 303 llvm::BasicBlock * contBlock = llvm::BasicBlock::Create(*context, "contBlock", func);
304   - val=llvm::Create (breakBlock, irgen.GetBasicBlock());
  304 + val=llvm::Create (contBlock, irgen.GetBasicBlock());
305 305 }
306 306  
307 307 //Not sure
... ... @@ -324,7 +324,6 @@
324 324 //find all cases and create a basic block for all of them
325 325 for (int i = 0; i < cases->NumElements(); i++){
326 326 //cases->Nth(i)->Emit();
327   -
328 327 //llvm::BasicBlock * headBlock = llvm::BasicBlock::Create(*context, "headBlock", func);
329 328 }
330 329 //Emit of expression
... ... @@ -333,7 +332,6 @@
333 332 //create switch instruction
334 333 //val=llvm::SwitchInst::Create(Value *Value, BasicBlock *Default, unsigned NumCases, BasicBlock *InsertAtEnd);
335 334 //for each case 'addCase to switch stmt', EMIT for stmt in case, create terminator instruction
336   -
337 335 }
338 336  
339 337 llvm::Value * SwitchLabel::Emit(){
340 338  
341 339  
... ... @@ -341,10 +339,13 @@
341 339 }
342 340  
343 341 llvm::Value * Case::Emit(){
  342 +
344 343 return NULL;
  344 + //stmt and label emit on stmt //return on label
345 345 }
346 346  
347 347 llvm::Value * Default::Emit(){
348 348 return NULL;
  349 + //stmt emit return null
349 350 }