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>