Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Feb 2016 20:00:22 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r295543 - projects/clang380-import/contrib/llvm/lib/Target/X86
Message-ID:  <201602112000.u1BK0MAk091451@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Thu Feb 11 20:00:22 2016
New Revision: 295543
URL: https://svnweb.freebsd.org/changeset/base/295543

Log:
  For now, disable shrink-wrapping (a new optimization pass that computes
  the safe point to insert the prologue and epilogue of the function) on
  X86.  This prevents problems with some functions using TLS, such as in
  jemalloc, and which was the cause for Address Sanitizer crashes.  The
  correct fix is still being discussed upstream.

Modified:
  projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp

Modified: projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp
==============================================================================
--- projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp	Thu Feb 11 18:37:02 2016	(r295542)
+++ projects/clang380-import/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp	Thu Feb 11 20:00:22 2016	(r295543)
@@ -2593,6 +2593,9 @@ bool X86FrameLowering::canUseAsEpilogue(
 bool X86FrameLowering::enableShrinkWrapping(const MachineFunction &MF) const {
   // If we may need to emit frameless compact unwind information, give
   // up as this is currently broken: PR25614.
+#if 1
+  return false;
+#else
   return (MF.getFunction()->hasFnAttribute(Attribute::NoUnwind) || hasFP(MF)) &&
          // The lowering of segmented stack and HiPE only support entry blocks
          // as prologue blocks: PR26107.
@@ -2601,6 +2604,7 @@ bool X86FrameLowering::enableShrinkWrapp
          // - adjustForHiPEPrologue
          MF.getFunction()->getCallingConv() != CallingConv::HiPE &&
          !MF.shouldSplitStack();
+#endif
 }
 
 MachineBasicBlock::iterator X86FrameLowering::restoreWin32EHStackPointers(



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201602112000.u1BK0MAk091451>