Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 9 Nov 2012 18:56:27 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r242835 - head/contrib/llvm/lib/Target/X86
Message-ID:  <201211091856.qA9IuRxX035169@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Fri Nov  9 18:56:27 2012
New Revision: 242835
URL: http://svnweb.freebsd.org/changeset/base/242835

Log:
  Reduce LLVM's default stack alignment for i386 from 16 to 4 bytes, as
  the FreeBSD ABI requires.  This is essentially a revert of upstream llvm
  commit r126226, and it will be reverted by upstream too.
  
  MFC after:	1 week

Modified:
  head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp

Modified: head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp
==============================================================================
--- head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp	Fri Nov  9 18:23:38 2012	(r242834)
+++ head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp	Fri Nov  9 18:56:27 2012	(r242835)
@@ -416,12 +416,12 @@ X86Subtarget::X86Subtarget(const std::st
   assert((!In64BitMode || HasX86_64) &&
          "64-bit code requested on a subtarget that doesn't support it!");
 
-  // Stack alignment is 16 bytes on Darwin, FreeBSD, Linux and Solaris (both
-  // 32 and 64 bit) and for all 64-bit targets.
+  // Stack alignment is 16 bytes on Darwin, Linux and Solaris (both 32 and 64
+  // bit) and for all 64-bit targets.
   if (StackAlignOverride)
     stackAlignment = StackAlignOverride;
-  else if (isTargetDarwin() || isTargetFreeBSD() || isTargetLinux() ||
-           isTargetSolaris() || In64BitMode)
+  else if (isTargetDarwin() || isTargetLinux() || isTargetSolaris() ||
+           In64BitMode)
     stackAlignment = 16;
 }
 



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