[llvm-commits] [llvm-gcc-4.2] r59021 - in /llvm-gcc-4.2/trunk/gcc: common.opt config/darwin.c
Bill Wendling
isanbard at gmail.com
Mon Nov 10 20:28:22 PST 2008
Author: void
Date: Mon Nov 10 22:28:21 2008
New Revision: 59021
URL: http://llvm.org/viewvc/llvm-project?rev=59021&view=rev
Log:
- Enable stack protectors by default for Darwin 10.6 and later.
- Don't enable stack protectors by default for Darwin 10.5.
This isn't exact. If we're building a 10.5 binary on a 10.6 system, then stack
protectors should be enabled.
Modified:
llvm-gcc-4.2/trunk/gcc/common.opt
llvm-gcc-4.2/trunk/gcc/config/darwin.c
Modified: llvm-gcc-4.2/trunk/gcc/common.opt
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/common.opt?rev=59021&r1=59020&r2=59021&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/common.opt (original)
+++ llvm-gcc-4.2/trunk/gcc/common.opt Mon Nov 10 22:28:21 2008
@@ -1018,9 +1018,8 @@
-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name>
; APPLE LOCAL begin stack-protector default 5095227
-; LLVM LOCAL FIXME Don't add Init just yet
fstack-protector
-Common Report Var(flag_stack_protect, 1)
+Common Report Var(flag_stack_protect, 1) Init(-1)
Use propolice as a stack protection method
; APPLE LOCAL end stack-protector default 5095227
Modified: llvm-gcc-4.2/trunk/gcc/config/darwin.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/darwin.c?rev=59021&r1=59020&r2=59021&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/darwin.c (original)
+++ llvm-gcc-4.2/trunk/gcc/config/darwin.c Mon Nov 10 22:28:21 2008
@@ -2686,12 +2686,22 @@
/* APPLE LOCAL begin stack-protector default 5095227 */
/* Default flag_stack_protect to 1 if on 10.5 or later for user code,
or 10.6 or later for code identified as part of the kernel. */
+ /* LLVM LOCAL begin - Don't enable stack protectors by default for Leopard. */
+#ifndef ENABLE_LLVM
if (flag_stack_protect == -1
&& darwin_macosx_version_min
&& ((! flag_mkernel && ! flag_apple_kext
&& strverscmp (darwin_macosx_version_min, "10.5") >= 0)
|| strverscmp (darwin_macosx_version_min, "10.6") >= 0))
flag_stack_protect = 1;
+#else
+ if (flag_stack_protect == -1 && darwin_macosx_version_min)
+ if (strverscmp (darwin_macosx_version_min, "10.5") >= 0)
+ flag_stack_protect = 0;
+ else if (strverscmp (darwin_macosx_version_min, "10.6") >= 0)
+ flag_stack_protect = 1;
+#endif
+ /* LLVM LOCAL end - Don't enable stack protectors by default for Leopard. */
/* APPLE LOCAL end stack-protector default 5095227 */
/* APPLE LOCAL diff confuses me */
}
More information about the llvm-commits
mailing list