Module Name: src Committed By: mrg Date: Sun Jul 11 22:41:39 UTC 2021
Modified Files: src/external/gpl3/gcc/dist/gcc/config/i386: i386.c i386.h netbsd-elf.h netbsd64.h Log Message: define a X86_32_ASAN_BIT_OFFSET macro that defaults differently on netbsd/i386 than other x86-32 targets. fixes PR#56280. To generate a diff of this commit: cvs rdiff -u -r1.24 -r1.25 src/external/gpl3/gcc/dist/gcc/config/i386/i386.c cvs rdiff -u -r1.14 -r1.15 src/external/gpl3/gcc/dist/gcc/config/i386/i386.h \ src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h \ src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/gpl3/gcc/dist/gcc/config/i386/i386.c diff -u src/external/gpl3/gcc/dist/gcc/config/i386/i386.c:1.24 src/external/gpl3/gcc/dist/gcc/config/i386/i386.c:1.25 --- src/external/gpl3/gcc/dist/gcc/config/i386/i386.c:1.24 Sun Apr 11 00:02:13 2021 +++ src/external/gpl3/gcc/dist/gcc/config/i386/i386.c Sun Jul 11 22:41:38 2021 @@ -1399,7 +1399,7 @@ ix86_asan_shadow_offset (void) { return TARGET_LP64 ? (TARGET_MACHO ? (HOST_WIDE_INT_1 << 44) : HOST_WIDE_INT_C (0x7fff8000)) - : (HOST_WIDE_INT_1 << 29); + : (HOST_WIDE_INT_1 << X86_32_ASAN_BIT_OFFSET); } /* Argument support functions. */ Index: src/external/gpl3/gcc/dist/gcc/config/i386/i386.h diff -u src/external/gpl3/gcc/dist/gcc/config/i386/i386.h:1.14 src/external/gpl3/gcc/dist/gcc/config/i386/i386.h:1.15 --- src/external/gpl3/gcc/dist/gcc/config/i386/i386.h:1.14 Sun Apr 11 00:02:14 2021 +++ src/external/gpl3/gcc/dist/gcc/config/i386/i386.h Sun Jul 11 22:41:39 2021 @@ -2975,6 +2975,9 @@ extern enum attr_cpu ix86_schedule; #define NUM_X86_64_MS_CLOBBERED_REGS 12 #endif +/* Standard location for 32-bit ASAN shadow map. */ +#define X86_32_ASAN_BIT_OFFSET 29 + /* Local variables: version-control: t Index: src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h diff -u src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h:1.14 src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h:1.15 --- src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h:1.14 Sun Apr 11 00:02:14 2021 +++ src/external/gpl3/gcc/dist/gcc/config/i386/netbsd-elf.h Sun Jul 11 22:41:39 2021 @@ -129,3 +129,7 @@ along with GCC; see the file COPYING3. /* Preserve i386 psABI */ #undef PREFERRED_STACK_BOUNDARY_DEFAULT #define PREFERRED_STACK_BOUNDARY_DEFAULT MIN_STACK_BOUNDARY + +/* NetBSD/x86 on 32-bit places the ASAN shadow map at 0x40000000. */ +#undef X86_32_ASAN_BIT_OFFSET +#define X86_32_ASAN_BIT_OFFSET 30 Index: src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h diff -u src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h:1.14 src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h:1.15 --- src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h:1.14 Sun Apr 11 00:02:14 2021 +++ src/external/gpl3/gcc/dist/gcc/config/i386/netbsd64.h Sun Jul 11 22:41:39 2021 @@ -73,3 +73,7 @@ along with GCC; see the file COPYING3. ((TARGET_64BIT || TARGET_SSE) ? 128 : 32) #define HAVE_ENABLE_EXECUTE_STACK + +/* NetBSD/x86 on 32-bit places the ASAN shadow map at 0x40000000. */ +#undef X86_32_ASAN_BIT_OFFSET +#define X86_32_ASAN_BIT_OFFSET 30