diff options
author | Mikael Pettersson <mikpelinux@gmail.com> | 2017-01-06 21:21:02 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2017-01-06 14:21:02 -0700 |
commit | c24900be6b72261dff5eb8db097360b4c361c86e (patch) | |
tree | 12f0b63e0a1fa7277e22bbffda4163f666cabd23 /gcc/doc | |
parent | b69195a0f48add25066ee99ef00597715d3c1fe7 (diff) | |
download | gcc-c24900be6b72261dff5eb8db097360b4c361c86e.zip gcc-c24900be6b72261dff5eb8db097360b4c361c86e.tar.gz gcc-c24900be6b72261dff5eb8db097360b4c361c86e.tar.bz2 |
re PR target/57583 (large switches with jump tables are horribly broken on m68k)
2017-01-06 Mikael Pettersson <mikpelinux@gmail.com>
PR target/57583
* config/m68k/m68k.opt (LONG_JUMP_TABLE_OFFSETS): New option.
* config/m68k/linux.h (ASM_RETURN_CASE_JUMP): Handle
TARGET_LONG_JUMP_TABLE_OFFSETS.
* config/m68k/m68kelf.h (ASM_RETURN_CASE_JUMP): Likewise.
* config/m68k/netbsd-elf.h (ASM_RETURN_CASE_JUMP): Likewise.
* config/m68k/m68k.h (CASE_VECTOR_MODE): Likewise.
(ASM_OUTPUT_ADDR_DIFF_ELF): Likewise.
* config/m68k/m68k.md (tablejump expander): Likewise.
(*tablejump_pcrel_hi): Renamed from unnamed insn, reject
TARGET_LONG_JUMP_TABLE_OFFSETS.
(*tablejump_pcrel_si): New insn, handle TARGET_LONG_JUMP_TABLE_OFFSETS.
* doc/invoke.texi (M68K options): Add -mlong-jump-table-offsets.
From-SVN: r244184
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 83ac135..83a0222 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -837,7 +837,7 @@ Objective-C and Objective-C++ Dialects}. -mno-short -mhard-float -m68881 -msoft-float -mpcrel @gol -malign-int -mstrict-align -msep-data -mno-sep-data @gol -mshared-library-id=n -mid-shared-library -mno-id-shared-library @gol --mxgot -mno-xgot} +-mxgot -mno-xgot -mlong-jump-table-offsets} @emph{MCore Options} @gccoptlist{-mhardlit -mno-hardlit -mdiv -mno-div -mrelax-immediates @gol @@ -18476,6 +18476,11 @@ object file that accesses more than 8192 GOT entries. Very few do. These options have no effect unless GCC is generating position-independent code. +@item -mlong-jump-table-offsets +@opindex mlong-jump-table-offsets +Use 32-bit offsets in @code{switch} tables. The default is to use +16-bit offsets. + @end table @node MCore Options |