Commit 34c5627c by Eric Botcazou Committed by Eric Botcazou

linux.h (ASAN_CC1_SPEC): Define.

	* config/sparc/linux.h (ASAN_CC1_SPEC): Define.
	(CC1_SPEC): Use GNU_USER_TARGET_CC1_SPEC and ASAN_CC1_SPEC.
	* config/sparc/linux64.h (ASAN_CC1_SPEC): Likewise.
	(CC1_SPEC): Likewise.
	* config/sparc/sparc.c (sparc_asan_shadow_offset): Adjust for 64-bit.

From-SVN: r268950
parent 362432c0
2019-02-15 Eric Botcazou <ebotcazou@adacore.com> 2019-02-15 Eric Botcazou <ebotcazou@adacore.com>
* config/sparc/linux.h (ASAN_CC1_SPEC): Define.
(CC1_SPEC): Use GNU_USER_TARGET_CC1_SPEC and ASAN_CC1_SPEC.
* config/sparc/linux64.h (ASAN_CC1_SPEC): Likewise.
(CC1_SPEC): Likewise.
* config/sparc/sparc.c (sparc_asan_shadow_offset): Adjust for 64-bit.
2019-02-15 Eric Botcazou <ebotcazou@adacore.com>
* asan.c (asan_emit_stack_protection): Use full-sized mask to align * asan.c (asan_emit_stack_protection): Use full-sized mask to align
the base address on 64-bit strict-alignment platforms. the base address on 64-bit strict-alignment platforms.
......
...@@ -54,10 +54,11 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); ...@@ -54,10 +54,11 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS #define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS
/* This is for -profile to use -lc_p instead of -lc. */ #undef ASAN_CC1_SPEC
#define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
#undef CC1_SPEC #undef CC1_SPEC
#define CC1_SPEC "%{profile:-p} \ #define CC1_SPEC GNU_USER_TARGET_CC1_SPEC ASAN_CC1_SPEC
"
#undef SIZE_TYPE #undef SIZE_TYPE
#define SIZE_TYPE "unsigned int" #define SIZE_TYPE "unsigned int"
......
...@@ -143,24 +143,25 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); ...@@ -143,24 +143,25 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
#define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS #define DRIVER_SELF_SPECS MCPU_MTUNE_NATIVE_SPECS
#undef ASAN_CC1_SPEC
#define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
#undef CC1_SPEC #undef CC1_SPEC
#if DEFAULT_ARCH32_P #if DEFAULT_ARCH32_P
#define CC1_SPEC "%{profile:-p} \ #define CC1_SPEC GNU_USER_TARGET_CC1_SPEC ASAN_CC1_SPEC \
%{m32:%{m64:%emay not use both -m32 and -m64}} \ "%{m32:%{m64:%emay not use both -m32 and -m64}} \
%{m64:-mptr64 -mstack-bias -mlong-double-128 \ %{m64:-mptr64 -mstack-bias -mlong-double-128 \
%{!mcpu*:-mcpu=ultrasparc} \ %{!mcpu*:-mcpu=ultrasparc} \
%{!mno-vis:%{!mcpu=v9:-mvis}}} \ %{!mno-vis:%{!mcpu=v9:-mvis}}}"
"
#else #else
#define CC1_SPEC "%{profile:-p} \ #define CC1_SPEC GNU_USER_TARGET_CC1_SPEC ASAN_CC1_SPEC \
%{m32:%{m64:%emay not use both -m32 and -m64}} \ "%{m32:%{m64:%emay not use both -m32 and -m64}} \
%{m32:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \ %{m32:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \
%{!mcpu*:-mcpu=cypress}} \ %{!mcpu*:-mcpu=cypress}} \
%{mv8plus:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \ %{mv8plus:-mptr32 -mno-stack-bias %{!mlong-double-128:-mlong-double-64} \
%{!mcpu*:-mcpu=v9}} \ %{!mcpu*:-mcpu=v9}} \
%{!m32:%{!mcpu*:-mcpu=ultrasparc}} \ %{!m32:%{!mcpu*:-mcpu=ultrasparc}} \
%{!mno-vis:%{!m32:%{!mcpu=v9:-mvis}}} \ %{!mno-vis:%{!m32:%{!mcpu=v9:-mvis}}}"
"
#endif #endif
/* Support for a compile-time default CPU, et cetera. The rules are: /* Support for a compile-time default CPU, et cetera. The rules are:
......
...@@ -12524,7 +12524,7 @@ sparc_init_machine_status (void) ...@@ -12524,7 +12524,7 @@ sparc_init_machine_status (void)
static unsigned HOST_WIDE_INT static unsigned HOST_WIDE_INT
sparc_asan_shadow_offset (void) sparc_asan_shadow_offset (void)
{ {
return TARGET_ARCH64 ? HOST_WIDE_INT_C (0x7fff8000) : (HOST_WIDE_INT_1 << 29); return TARGET_ARCH64 ? (HOST_WIDE_INT_1 << 43) : (HOST_WIDE_INT_1 << 29);
} }
/* This is called from dwarf2out.c via TARGET_ASM_OUTPUT_DWARF_DTPREL. /* This is called from dwarf2out.c via TARGET_ASM_OUTPUT_DWARF_DTPREL.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment