+2015-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/63888
+ * c-c++-common/asan/pr63888.c: New test.
+
2015-02-23 Oleg Endo <olegendo@gcc.gnu.org>
PR target/65163
--- /dev/null
+/* PR bootstrap/63888 */
+/* { dg-do run } */
+
+__attribute__((noinline, noclone)) int
+foo (int x)
+{
+ int v = 0;
+ switch (x)
+ {
+ case 11: v = 67; break;
+ case 12: v = 68; break;
+ case 13: v = 69; break;
+ }
+ return v;
+}
+
+__attribute__((noinline, noclone)) int
+bar (int x)
+{
+ int v = 0;
+ switch (x)
+ {
+ case 18: v = 67; break;
+ case 19: v = 68; break;
+ case 20: v = 69; break;
+ }
+ return v;
+}
+
+int
+main ()
+{
+ return foo (11) - 67 + bar (19) - 68;
+}
+2015-02-20 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/63888
+ * asan/asan_globals.cc (RegisterGlobal): Disable detect_odr_violation
+ support until it is rewritten upstream.
+
2015-01-26 Matthias Klose <doko@ubuntu.com>
* configure.ac: Move AM_ENABLE_MULTILIB before AC_PROG_CC.
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)) {