Mark the cxa_guard_{abort,acquire,release} functions nounwind.

llvm-svn: 150435
This commit is contained in:
Nick Lewycky 2012-02-13 23:45:02 +00:00
parent aef4ca78c5
commit adcec49f96
1 changed files with 6 additions and 3 deletions

View File

@ -979,7 +979,8 @@ static llvm::Constant *getGuardAcquireFn(CodeGenModule &CGM,
llvm::FunctionType::get(CGM.getTypes().ConvertType(CGM.getContext().IntTy),
GuardPtrTy, /*isVarArg=*/false);
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_acquire");
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_acquire",
llvm::Attribute::NoUnwind);
}
static llvm::Constant *getGuardReleaseFn(CodeGenModule &CGM,
@ -988,7 +989,8 @@ static llvm::Constant *getGuardReleaseFn(CodeGenModule &CGM,
llvm::FunctionType *FTy =
llvm::FunctionType::get(CGM.VoidTy, GuardPtrTy, /*isVarArg=*/false);
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_release");
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_release",
llvm::Attribute::NoUnwind);
}
static llvm::Constant *getGuardAbortFn(CodeGenModule &CGM,
@ -997,7 +999,8 @@ static llvm::Constant *getGuardAbortFn(CodeGenModule &CGM,
llvm::FunctionType *FTy =
llvm::FunctionType::get(CGM.VoidTy, GuardPtrTy, /*isVarArg=*/false);
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_abort");
return CGM.CreateRuntimeFunction(FTy, "__cxa_guard_abort",
llvm::Attribute::NoUnwind);
}
namespace {