diff options
author | Jim Wilson <wilson@cygnus.com> | 1999-02-18 16:00:12 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1999-02-18 08:00:12 -0800 |
commit | 2d37187d57d10094fdf68facbc741513dfabe51a (patch) | |
tree | 71c15ca24b4edcee2daa632bc575c3b9301baf4e /gcc | |
parent | 6de1e2a9787e105521817b86422b50bd410560fe (diff) | |
download | gcc-2d37187d57d10094fdf68facbc741513dfabe51a.zip gcc-2d37187d57d10094fdf68facbc741513dfabe51a.tar.gz gcc-2d37187d57d10094fdf68facbc741513dfabe51a.tar.bz2 |
Fix m68k-elf coldfire run-time address error for tablejumps.
* m68kelf.h (ASM_RETURN_CASE_JUMP): Add 5200 support.
From-SVN: r25288
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/config/m68k/m68kelf.h | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d8a8c01..d4e3b4f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +Thu Feb 18 15:52:49 1999 Jim Wilson <wilson@cygnus.com> + + * m68kelf.h (ASM_RETURN_CASE_JUMP): Add 5200 support. + 1999-02-18 18:32 -0500 Zack Weinberg <zack@rabi.columbia.edu> * cpplib.c: Kill define of STDC_VALUE. Don't include output.h diff --git a/gcc/config/m68k/m68kelf.h b/gcc/config/m68k/m68kelf.h index fad325b..476692d 100644 --- a/gcc/config/m68k/m68kelf.h +++ b/gcc/config/m68k/m68kelf.h @@ -73,7 +73,13 @@ Boston, MA 02111-1307, USA. */ /* config/m68k.md has an explicit reference to the program counter, prefix this by the register prefix. */ -#define ASM_RETURN_CASE_JUMP return "jmp %%pc@(2,%0:w)" +#define ASM_RETURN_CASE_JUMP \ + do { \ + if (TARGET_5200) \ + return "ext%.l %0\n\tjmp %%pc@(2,%0:l)"; \ + else \ + return "jmp %%pc@(2,%0:w)"; \ + } while (0) /* How to refer to registers in assembler output. This sequence is indexed by compiler's hard-register-number. |