mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-02-28 09:33:27 +01:00
[svn r336] Made sure calls within a landing pad area are invokes.
Nested trys still need some consideration.
This commit is contained in:
@@ -87,7 +87,7 @@ DValue* DtoAAIndex(Type* type, DValue* aa, DValue* key)
|
||||
pkey = DtoBitCast(pkey, funcTy->getParamType(3));
|
||||
|
||||
// call runtime
|
||||
LLValue* ret = gIR->ir->CreateCall4(func, aaval, keyti, valsize, pkey, "aa.index");
|
||||
LLValue* ret = gIR->CreateCallOrInvoke4(func, aaval, keyti, valsize, pkey, "aa.index")->get();
|
||||
|
||||
// cast return value
|
||||
const LLType* targettype = getPtrToType(DtoType(type));
|
||||
@@ -125,7 +125,7 @@ DValue* DtoAAIn(Type* type, DValue* aa, DValue* key)
|
||||
pkey = DtoBitCast(pkey, funcTy->getParamType(2));
|
||||
|
||||
// call runtime
|
||||
LLValue* ret = gIR->ir->CreateCall3(func, aaval, keyti, pkey, "aa.in");
|
||||
LLValue* ret = gIR->CreateCallOrInvoke3(func, aaval, keyti, pkey, "aa.in")->get();
|
||||
|
||||
// cast return value
|
||||
const LLType* targettype = DtoType(type);
|
||||
@@ -169,5 +169,5 @@ void DtoAARemove(DValue* aa, DValue* key)
|
||||
args.push_back(pkey);
|
||||
|
||||
// call runtime
|
||||
gIR->ir->CreateCall(func, args.begin(), args.end(),"");
|
||||
gIR->CreateCallOrInvoke(func, args.begin(), args.end());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user