inline asm calls should be nounwind. Chris, please review.
llvm-svn: 65866
This commit is contained in:
parent
4c71f563e7
commit
b3b675c35e
|
@ -1003,7 +1003,10 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) {
|
||||||
llvm::InlineAsm *IA =
|
llvm::InlineAsm *IA =
|
||||||
llvm::InlineAsm::get(FTy, AsmString, Constraints,
|
llvm::InlineAsm::get(FTy, AsmString, Constraints,
|
||||||
S.isVolatile() || S.getNumOutputs() == 0);
|
S.isVolatile() || S.getNumOutputs() == 0);
|
||||||
llvm::Value *Result = Builder.CreateCall(IA, Args.begin(), Args.end(), "");
|
llvm::CallInst *Result
|
||||||
|
= Builder.CreateCall(IA, Args.begin(), Args.end(), "");
|
||||||
|
Result->addAttribute(~0, llvm::Attribute::NoUnwind);
|
||||||
|
|
||||||
if (ResultAddr) // FIXME: volatility
|
if (ResultAddr) // FIXME: volatility
|
||||||
Builder.CreateStore(Result, ResultAddr);
|
Builder.CreateStore(Result, ResultAddr);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue