summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen
diff options
context:
space:
mode:
Diffstat (limited to 'clang/lib/CodeGen')
-rw-r--r--clang/lib/CodeGen/CGStmt.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGStmt.cpp b/clang/lib/CodeGen/CGStmt.cpp
index 307dccff2f2..cbd8a897bd2 100644
--- a/clang/lib/CodeGen/CGStmt.cpp
+++ b/clang/lib/CodeGen/CGStmt.cpp
@@ -1003,7 +1003,10 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) {
llvm::InlineAsm *IA =
llvm::InlineAsm::get(FTy, AsmString, Constraints,
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
Builder.CreateStore(Result, ResultAddr);
}
OpenPOWER on IntegriCloud