I'm sorry for so long delay. Please apply the patch.
2017-07-05 14:19 GMT+04:00 Georg-Johann Lay <a...@gjlay.de>: > Ping #3 > > http://gcc.gnu.org/ml/gcc-patches/2017-06/msg01029.html > > As avr maintainers are off-line, would a global maintainer have > a look at this? > > Thanks, > > Johann > > > > > On 27.06.2017 12:01, Georg-Johann Lay wrote: >> >> Ping #2 >> >> http://gcc.gnu.org/ml/gcc-patches/2017-06/msg01029.html >> >> On 14.06.2017 14:03, Georg-Johann Lay wrote: >>> >>> Hi, >>> >>> Since PR71151 we have jump-tables in .text so that branches >>> crossing the tables have longer offsets that needed. >>> >>> This moves jump-tables out of test again, but not into >>> .progmem.gcc_sw_tables like before PR71151, but into >>> the currently unused but existing .jumptables. >>> >>> Since PR63223 there is no restriction on the location >>> of jump-tables, they can even reside above 128KiB without >>> problems. >>> >>> Also adds -mlog=insn_addresses to dump insn addresses >>> as asm comments before respective instruction. >>> >>> The patch implements ASM_OUTPUT_ADDR_VEC so that avr.c >>> gains full control over the table generation. >>> >>> Tested on ATmega2560. >>> >>> Ok to apply? >>> >>> Johann >>> >>> >>> gcc/ >>> Move jump-tables out of .text again. >>> >>> PR target/81075 >>> * config/avr/avr.c (ASM_OUTPUT_ADDR_VEC_ELT): Remove function. >>> (ASM_OUTPUT_ADDR_VEC): New function. >>> (avr_adjust_insn_length) [JUMP_TABLE_DATA_P]: Return 0. >>> (avr_final_prescan_insn) [avr_log.insn_addresses]: Dump >>> INSN_ADDRESSes as asm comment. >>> * config/avr/avr.h (JUMP_TABLES_IN_TEXT_SECTION): Adjust comment. >>> (ASM_OUTPUT_ADDR_VEC_ELT): Remove define. >>> (ASM_OUTPUT_ADDR_VEC): Define to avr_output_addr_vec. >>> * config/avr/avr.md (*tablejump): Adjust comment. >>> * config/avr/elf.h (ASM_OUTPUT_BEFORE_CASE_LABEL): Remove. >>> * config/avr/avr-log.c (avr_log_set_avr_log) <insn_addresses>: >>> New detail. >>> * config/avr/avr-protos.h (avr_output_addr_vec_elt): Remove proto. >>> (avr_output_addr_vec): New proto. >>> (avr_log_t) <insn_addresses>: New field. >> >> >> >