comparison gen/irstate.cpp @ 1141:f99a3b393c03

Reorganize EnclosingHandlers to require less changes to the frontend and allow us to implement the synchronized storage class for functions.
author Christian Kamm <kamm incasoftware de>
date Tue, 24 Mar 2009 21:18:18 +0100
parents 8c73ff5f69e0
children ad7f2f1862d6
comparison
equal deleted inserted replaced
1137:45d73f0a9b43 1141:f99a3b393c03
32 end = e; 32 end = e;
33 builder.SetInsertPoint(b); 33 builder.SetInsertPoint(b);
34 } 34 }
35 35
36 ////////////////////////////////////////////////////////////////////////////////////////// 36 //////////////////////////////////////////////////////////////////////////////////////////
37 IRLoopScope::IRLoopScope() 37 IRTargetScope::IRTargetScope()
38 { 38 {
39 } 39 }
40 40
41 IRLoopScope::IRLoopScope(Statement* s, EnclosingHandler* enclosinghandler, llvm::BasicBlock* b, llvm::BasicBlock* e, bool isSwitch) 41 IRTargetScope::IRTargetScope(Statement* s, EnclosingHandler* enclosinghandler, llvm::BasicBlock* continueTarget, llvm::BasicBlock* breakTarget)
42 { 42 {
43 begin = b;
44 end = e;
45 //builder.SetInsertPoint(b);
46 this->s = s; 43 this->s = s;
47 this->enclosinghandler = enclosinghandler; 44 this->enclosinghandler = enclosinghandler;
48 this->isSwitch = isSwitch; 45 this->breakTarget = breakTarget;
46 this->continueTarget = continueTarget;
49 } 47 }
50 48
51 ////////////////////////////////////////////////////////////////////////////////////////// 49 //////////////////////////////////////////////////////////////////////////////////////////
52 IRState::IRState(llvm::Module* m) 50 IRState::IRState(llvm::Module* m)
53 : module(m), difactory(*m) 51 : module(m), difactory(*m)