emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r117016: * conf_post.h (ADDRESS_SANITIZER_WORKAROUND


From: Paul Eggert
Subject: [Emacs-diffs] trunk r117016: * conf_post.h (ADDRESS_SANITIZER_WORKAROUND): Port to GCC 4.9.0
Date: Wed, 23 Apr 2014 18:23:31 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117016
revision-id: address@hidden
parent: address@hidden
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Wed 2014-04-23 11:23:28 -0700
message:
  * conf_post.h (ADDRESS_SANITIZER_WORKAROUND): Port to GCC 4.9.0
  
  and to clang 3.4, which have fixed the bug.  This should let us
  run a bit faster on these platforms when address sanitization is
  in effect.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/conf_post.h                conf_post.h-20120730211826-q0qbxxwh2emw52hd-1
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-04-22 21:32:51 +0000
+++ b/src/ChangeLog     2014-04-23 18:23:28 +0000
@@ -1,3 +1,10 @@
+2014-04-23  Paul Eggert  <address@hidden>
+
+       * conf_post.h (ADDRESS_SANITIZER_WORKAROUND): Port to GCC 4.9.0
+       and to clang 3.4, which have fixed the bug.  This should let us
+       run a bit faster on these platforms when address sanitization is
+       in effect.
+
 2014-04-22  Paul Eggert  <address@hidden>
 
        Port to GCC 4.9.0 with --enable-gcc-warnings.

=== modified file 'src/conf_post.h'
--- a/src/conf_post.h   2014-04-22 21:32:51 +0000
+++ b/src/conf_post.h   2014-04-23 18:23:28 +0000
@@ -226,14 +226,14 @@
 
 /* Work around GCC bug 59600: when a function is inlined, the inlined
    code may have its addresses sanitized even if the function has the
-   no_sanitize_address attribute.  This bug is present in GCC 4.8.2
-   and clang 3.3, the latest releases as of December 2013, and the
-   only platforms known to support address sanitization.  When the bug
-   is fixed the #if can be updated accordingly.  */
-#if ADDRESS_SANITIZER
+   no_sanitize_address attribute.  This bug is fixed in GCC 4.9.0 and
+   clang 3.4.  */
+#if (! ADDRESS_SANITIZER \
+     || ((4 < __GNUC__ + (9 <= __GNUC_MINOR__)) \
+        || 3 < __clang_major__ + (4 <= __clang_minor__)))
+# define ADDRESS_SANITIZER_WORKAROUND /* No workaround needed.  */
+#else
 # define ADDRESS_SANITIZER_WORKAROUND NO_INLINE
-#else
-# define ADDRESS_SANITIZER_WORKAROUND
 #endif
 
 /* Attribute of functions whose code should not have addresses


reply via email to

[Prev in Thread] Current Thread [Next in Thread]