gcc/ChangeLog:
* config/mips/mips.cc (mips_asan_shadow_offset): Reformat
to handle the N32 ABI.
* config/mips/mips.h (SUBTARGET_SHADOW_OFFSET): Remove
the macro, as it is not needed anymore.
static unsigned HOST_WIDE_INT
mips_asan_shadow_offset (void)
{
- return SUBTARGET_SHADOW_OFFSET;
+ if (mips_abi == ABI_N32)
+ return (HOST_WIDE_INT_1 << 29);
+ if (POINTER_SIZE == 64)
+ return (HOST_WIDE_INT_1 << 37);
+ else
+ return HOST_WIDE_INT_C (0x0aaa0000);
}
/* Implement TARGET_STARTING_FRAME_OFFSET. See mips_compute_frame_info
&& !TARGET_MICROMIPS && !TARGET_FIX_24K)
#define NEED_INDICATE_EXEC_STACK 0
-
-/* Define the shadow offset for asan. Other OS's can override in the
- respective tm.h files. */
-#ifndef SUBTARGET_SHADOW_OFFSET
-#define SUBTARGET_SHADOW_OFFSET \
- (POINTER_SIZE == 64 ? HOST_WIDE_INT_1 << 37 : HOST_WIDE_INT_C (0x0aaa0000))
-#endif