[llvm] r284161 - [safestack] Reapply r283248 after moving X86-targeted SafeStack tests into
David L Kreitzer via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 13 13:57:51 PDT 2016
Author: dlkreitz
Date: Thu Oct 13 15:57:51 2016
New Revision: 284161
URL: http://llvm.org/viewvc/llvm-project?rev=284161&view=rev
Log:
[safestack] Reapply r283248 after moving X86-targeted SafeStack tests into
the X86 subdirectory. Original commit message:
Requires a valid TargetMachine to be passed to the SafeStack pass.
Patch by Michael LeMay
Differential revision: http://reviews.llvm.org/D24896
Modified:
llvm/trunk/lib/CodeGen/SafeStack.cpp
Modified: llvm/trunk/lib/CodeGen/SafeStack.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/SafeStack.cpp?rev=284161&r1=284160&r2=284161&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/SafeStack.cpp (original)
+++ llvm/trunk/lib/CodeGen/SafeStack.cpp Thu Oct 13 15:57:51 2016
@@ -357,9 +357,8 @@ bool SafeStack::IsSafeStackAlloca(const
Value *SafeStack::getOrCreateUnsafeStackPtr(IRBuilder<> &IRB, Function &F) {
// Check if there is a target-specific location for the unsafe stack pointer.
- if (TL)
- if (Value *V = TL->getSafeStackPointerLocation(IRB))
- return V;
+ if (Value *V = TL->getSafeStackPointerLocation(IRB))
+ return V;
// Otherwise, assume the target links with compiler-rt, which provides a
// thread-local variable with a magic name.
@@ -392,9 +391,7 @@ Value *SafeStack::getOrCreateUnsafeStack
}
Value *SafeStack::getStackGuard(IRBuilder<> &IRB, Function &F) {
- Value *StackGuardVar = nullptr;
- if (TL)
- StackGuardVar = TL->getIRStackGuard(IRB);
+ Value *StackGuardVar = TL->getIRStackGuard(IRB);
if (!StackGuardVar)
StackGuardVar =
F.getParent()->getOrInsertGlobal("__stack_chk_guard", StackPtrTy);
@@ -751,7 +748,9 @@ bool SafeStack::runOnFunction(Function &
return false;
}
- TL = TM ? TM->getSubtargetImpl(F)->getTargetLowering() : nullptr;
+ if (!TM)
+ report_fatal_error("Target machine is required");
+ TL = TM->getSubtargetImpl(F)->getTargetLowering();
SE = &getAnalysis<ScalarEvolutionWrapperPass>().getSE();
++NumFunctions;
More information about the llvm-commits
mailing list