forked from OSchip/llvm-project
Replace the "NoFramePointerElimNonLeaf" target option with a function attribute.
llvm-svn: 187092
This commit is contained in:
parent
869950e9e0
commit
a9cc8c0385
|
@ -412,13 +412,10 @@ TargetMachine *EmitAssemblyHelper::CreateTargetMachine(bool MustCreateTM) {
|
|||
// Set frame pointer elimination mode.
|
||||
if (!CodeGenOpts.DisableFPElim) {
|
||||
Options.NoFramePointerElim = false;
|
||||
Options.NoFramePointerElimNonLeaf = false;
|
||||
} else if (CodeGenOpts.OmitLeafFramePointer) {
|
||||
Options.NoFramePointerElim = false;
|
||||
Options.NoFramePointerElimNonLeaf = true;
|
||||
} else {
|
||||
Options.NoFramePointerElim = true;
|
||||
Options.NoFramePointerElimNonLeaf = true;
|
||||
}
|
||||
|
||||
if (CodeGenOpts.UseInitArray)
|
||||
|
|
|
@ -1072,6 +1072,18 @@ void CodeGenModule::ConstructAttributeList(const CGFunctionInfo &FI,
|
|||
CodeGenOpts.SoftFloat ? "true" : "false");
|
||||
FuncAttrs.addAttribute("stack-protector-buffer-size",
|
||||
llvm::utostr(CodeGenOpts.SSPBufferSize));
|
||||
|
||||
bool NoFramePointerElimNonLeaf;
|
||||
if (!CodeGenOpts.DisableFPElim) {
|
||||
NoFramePointerElimNonLeaf = false;
|
||||
} else if (CodeGenOpts.OmitLeafFramePointer) {
|
||||
NoFramePointerElimNonLeaf = true;
|
||||
} else {
|
||||
NoFramePointerElimNonLeaf = true;
|
||||
}
|
||||
|
||||
FuncAttrs.addAttribute("no-frame-pointer-elim-non-leaf",
|
||||
NoFramePointerElimNonLeaf ? "true" : "false");
|
||||
}
|
||||
|
||||
QualType RetTy = FI.getReturnType();
|
||||
|
|
Loading…
Reference in New Issue