diff options
author | Richard Earnshaw <rearnsha@arm.com> | 2002-03-18 11:26:24 +0000 |
---|---|---|
committer | Richard Earnshaw <rearnsha@gcc.gnu.org> | 2002-03-18 11:26:24 +0000 |
commit | 657d9449e89fc00908ae18fb063fe54ff8bdcaee (patch) | |
tree | 26d7156b5d3be51ac40b7883e864783742cf5808 /gcc/config/arm/coff.h | |
parent | ffd696af84c29fe41b43e74fb6e4ada9076102d6 (diff) | |
download | gcc-657d9449e89fc00908ae18fb063fe54ff8bdcaee.tar.gz |
arm.md (tablejump): Make this a define_expand.
* arm.md (tablejump): Make this a define_expand. For PIC add the
offset to the base of the table.
(thumb_tablejump): Matcher for Thumb tablejump insn.
* config/arm/aout.h (ASM_OUTPUT_ADDR_DIFF_ELT): Output thumb entries
as the difference of two labels.
* config/arm/aof.h (ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
* config/arm/elf.h (JUMP_TABLES_IN_TEXT_SECTION): Only put ARM jump
tables in the code.
* config/arm/coff.h (JUMP_TABLES_IN_TEXT_SECTION): Likewise.
* arm.c (get_jump_table_size): If the table is not in the text
section, return zero.
From-SVN: r50960
Diffstat (limited to 'gcc/config/arm/coff.h')
-rw-r--r-- | gcc/config/arm/coff.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/config/arm/coff.h b/gcc/config/arm/coff.h index f53dace9056..c9f0d9277ab 100644 --- a/gcc/config/arm/coff.h +++ b/gcc/config/arm/coff.h @@ -72,7 +72,9 @@ Boston, MA 02111-1307, USA. */ /* Define this macro if jump tables (for `tablejump' insns) should be output in the text section, along with the assembler instructions. Otherwise, the readonly data section is used. */ -#define JUMP_TABLES_IN_TEXT_SECTION 1 +/* We put ARM jump tables in the text section, because it makes the code + more efficient, but for Thumb it's better to put them out of band. */ +#define JUMP_TABLES_IN_TEXT_SECTION (TARGET_ARM) #undef READONLY_DATA_SECTION #define READONLY_DATA_SECTION rdata_section |