summaryrefslogtreecommitdiff
path: root/libsanitizer
diff options
context:
space:
mode:
authorchefmax <chefmax@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-21 07:47:54 +0000
committerchefmax <chefmax@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-21 07:47:54 +0000
commit299794cf87a3749a1b40ff97bacfbe649c75c449 (patch)
treee324e6eab65584b85d63817b2f6db0c32e1eba46 /libsanitizer
parentc849f8ecab2c7578ea41fbd969f92b7be1e3855c (diff)
downloadgcc-299794cf87a3749a1b40ff97bacfbe649c75c449.tar.gz
libsanitizer/
PR bootstrap/63888 Reapply: 2015-02-20 Jakub Jelinek <jakub@redhat.com> * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation support until it is rewritten upstream. * c-c++-common/asan/pr63888.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@229114 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libsanitizer')
-rw-r--r--libsanitizer/ChangeLog11
-rw-r--r--libsanitizer/asan/asan_globals.cc4
2 files changed, 14 insertions, 1 deletions
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index 4e463efec46..80ce1585857 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,5 +1,16 @@
2015-10-21 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
+ PR bootstrap/63888
+ Reapply:
+ 2015-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation
+ support until it is rewritten upstream.
+
+ * c-c++-common/asan/pr63888.c: New test.
+
+2015-10-21 Maxim Ostapenko <m.ostapenko@partner.samsung.com>
+
PR sanitizer/63958
Reapply:
2014-10-14 David S. Miller <davem@davemloft.net>
diff --git a/libsanitizer/asan/asan_globals.cc b/libsanitizer/asan/asan_globals.cc
index b132c8b09b9..9c3588b8e08 100644
--- a/libsanitizer/asan/asan_globals.cc
+++ b/libsanitizer/asan/asan_globals.cc
@@ -144,7 +144,9 @@ static void RegisterGlobal(const Global *g) {
CHECK(AddrIsInMem(g->beg));
CHECK(AddrIsAlignedByGranularity(g->beg));
CHECK(AddrIsAlignedByGranularity(g->size_with_redzone));
- if (flags()->detect_odr_violation) {
+ // This "ODR violation" detection is fundamentally incompatible with
+ // how GCC registers globals. Disable as useless until rewritten upstream.
+ if (0 && flags()->detect_odr_violation) {
// Try detecting ODR (One Definition Rule) violation, i.e. the situation
// where two globals with the same name are defined in different modules.
if (__asan_region_is_poisoned(g->beg, g->size_with_redzone)) {