From 8b32b6842fd6808bd8a03afdfd64e4e76d1f42b6 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Thu, 30 Nov 1995 12:47:02 -0800 Subject: [PATCH] (ASM_SPEC, LINK_SPEC): Pass on -mrelax. (RELAX_BIT, TARGET_RELAX): New macros. (TARGET_SWITCHES): Add -mrelax. From-SVN: r10650 --- gcc/config/sh/sh.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 4456c27153d..59068ba315e 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -42,9 +42,9 @@ Boston, MA 02111-1307, USA. */ #define CPP_PREDEFINES "-D__sh__ -Acpu(sh) -Amachine(sh)" -#define ASM_SPEC "%{ml:-little}" +#define ASM_SPEC "%{ml:-little} %{mrelax:-relax}" -#define LINK_SPEC "%{ml:-m shl}" +#define LINK_SPEC "%{ml:-m shl} %{mrelax:-relax}" /* We can not debug without a frame pointer. */ /* #define CAN_DEBUG_WITHOUT_FP */ @@ -71,6 +71,7 @@ extern int target_flags; #define SH3_BIT (1<<10) #define SPACE_BIT (1<<13) #define BIGTABLE_BIT (1<<14) +#define RELAX_BIT (1<<15) #define HITACHI_BIT (1<<22) #define PADSTRUCT_BIT (1<<28) #define LITTLE_ENDIAN_BIT (1<<29) @@ -101,6 +102,10 @@ extern int target_flags; /* Nonzero to use long jump tables. */ #define TARGET_BIGTABLE (target_flags & BIGTABLE_BIT) +/* Nonzero to generate pseudo-ops needed by the assembler and linker + to do function call relaxing. */ +#define TARGET_RELAX (target_flags & RELAX_BIT) + /* Nonzero if using Hitachi's calling convention. */ #define TARGET_HITACHI (target_flags & HITACHI_BIT) @@ -127,6 +132,7 @@ extern int target_flags; {"isize", ISIZE_BIT}, \ {"l", LITTLE_ENDIAN_BIT}, \ {"padstruct", PADSTRUCT_BIT}, \ + {"relax", RELAX_BIT}, \ {"space", SPACE_BIT}, \ {"", TARGET_DEFAULT} \ } -- 2.30.2