]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Cherry-pick r266868 from upstream.
authorMaxim Ostapenko <m.ostapenko@samsung.com>
Thu, 21 Apr 2016 12:19:54 +0000 (12:19 +0000)
committerMaxim Ostapenko <chefmax@gcc.gnu.org>
Thu, 21 Apr 2016 12:19:54 +0000 (15:19 +0300)
PR sanitizer/70624
* asan/asan_mac.cc: Cherry pick upstream r266868.

From-SVN: r235338

libsanitizer/ChangeLog
libsanitizer/asan/asan_mac.cc

index c6cdc09badcf36bd7359a29df00367567ac6bb9d..1268507b92bd55ebf518743e23fc1f1c94db8711 100644 (file)
@@ -1,3 +1,8 @@
+2016-04-21  Maxim Ostapenko  <m.ostapenko@samsung.com>
+
+       PR sanitizer/70624
+       * asan/asan_mac.cc: Cherry pick upstream r266868.
+
 2016-01-19  Jakub Jelinek  <jakub@redhat.com>
 
        PR sanitizer/68824
index 20e37ffe7effd18b6e486ba519e3a130f4393665..ab3c6560825bd6ffa89d9f8fae9e16699f999b83 100644 (file)
@@ -97,10 +97,14 @@ void DisableReexec() {
   reexec_disabled = true;
 }
 
-extern "C" double dyldVersionNumber;
+extern "C" SANITIZER_WEAK_ATTRIBUTE double dyldVersionNumber;
 static const double kMinDyldVersionWithAutoInterposition = 360.0;
 
 bool DyldNeedsEnvVariable() {
+  // Although sanitizer support was added to LLVM on OS X 10.7+, GCC users
+  // still may want use them on older systems. On older Darwin platforms, dyld
+  // doesn't export dyldVersionNumber symbol and we simply return true.
+  if (!&dyldVersionNumber) return true;
   // If running on OS X 10.11+ or iOS 9.0+, dyld will interpose even if
   // DYLD_INSERT_LIBRARIES is not set. However, checking OS version via
   // GetMacosVersion() doesn't work for the simulator. Let's instead check