diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2014-09-11 08:08:17 +0000 |
---|---|---|
committer | Georg-Johann Lay <gjl@gcc.gnu.org> | 2014-09-11 08:08:17 +0000 |
commit | ea3f2b240febca348d795e19ba908a34f78b206d (patch) | |
tree | 462a929a1a108e79a3e7461e386a0bfb888077a2 /config.sub | |
parent | c883e5fb6a12718325cebeb653a4ccf4668a723c (diff) | |
download | gcc-ea3f2b240febca348d795e19ba908a34f78b206d.zip gcc-ea3f2b240febca348d795e19ba908a34f78b206d.tar.gz gcc-ea3f2b240febca348d795e19ba908a34f78b206d.tar.bz2 |
re PR target/63223 ([avr] Make jumptables work with -Wl,--section-start,.text=)
gcc/
PR target/63223
* config/avr/avr.md (*tablejump.3byte-pc): New insn.
(*tablejump): Restrict to !AVR_HAVE_EIJMP_EICALL. Add void clobber.
(casesi): Expand to *tablejump.3byte-pc if AVR_HAVE_EIJMP_EICALL.
libgcc/
PR target/63223
* config/avr/libgcc.S (__tablejump2__): Rewrite to use RAMPZ, ELPM
and R24 as needed. Make work for all devices and .text locations.
(__do_global_ctors, __do_global_dtors): Use word addresses.
(__tablejump__, __tablejump_elpm__): Remove functions.
* t-avr (LIB1ASMFUNCS): Remove _tablejump, _tablejump_elpm.
Add _tablejump2.
(XICALL, XIJMP): New macros.
From-SVN: r215152
Diffstat (limited to 'config.sub')
0 files changed, 0 insertions, 0 deletions