From 361d4392cf5425bf560f88895f22df61b273fe4e Mon Sep 17 00:00:00 2001 From: Hans Wennborg Date: Mon, 4 Dec 2017 22:21:15 +0000 Subject: Revert r319490 "XOR the frame pointer with the stack cookie when protecting the stack" This broke the Chromium build (crbug.com/791714). Reverting while investigating. > Summary: This strengthens the guard and matches MSVC. > > Reviewers: hans, etienneb > > Subscribers: hiraditya, JDevlieghere, vlad.tsyrklevich, llvm-commits > > Differential Revision: https://reviews.llvm.org/D40622 > > git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@319490 91177308-0d34-0410-b5e6-96231b3b80d8 llvm-svn: 319706 --- llvm/lib/Target/X86/X86ISelLowering.cpp | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp') diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index de3df34ec44..073b4e01377 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -1687,19 +1687,6 @@ bool X86TargetLowering::useLoadStackGuardNode() const { return Subtarget.isTargetMachO() && Subtarget.is64Bit(); } -bool X86TargetLowering::useStackGuardXorFP() const { - // Currently only MSVC CRTs XOR the frame pointer into the stack guard value. - return Subtarget.getTargetTriple().isOSMSVCRT(); -} - -SDValue X86TargetLowering::emitStackGuardXorFP(SelectionDAG &DAG, SDValue Val, - const SDLoc &DL) const { - EVT PtrTy = getPointerTy(DAG.getDataLayout()); - unsigned XorOp = Subtarget.is64Bit() ? X86::XOR64_FP : X86::XOR32_FP; - MachineSDNode *Node = DAG.getMachineNode(XorOp, DL, PtrTy, Val); - return SDValue(Node, 0); -} - TargetLoweringBase::LegalizeTypeAction X86TargetLowering::getPreferredVectorAction(EVT VT) const { if (ExperimentalVectorWideningLegalization && -- cgit v1.2.3