From: Georg-Johann Lay <avr@gjlay.de>
To: gcc-patches <gcc-patches@gcc.gnu.org>
Cc: Denis Chertykov <chertykov@gmail.com>
Subject: [patch,avr][Ping #2] PR81075: Move jump-tables out of .text
Date: Tue, 27 Jun 2017 10:01:00 -0000 [thread overview]
Message-ID: <c4d23f1c-7a84-1612-a04a-fad4b57d2474@gjlay.de> (raw)
In-Reply-To: <c9def580-6777-66c8-2623-1b8df8c61079@gjlay.de>
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.
next prev parent reply other threads:[~2017-06-27 10:01 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-14 12:03 [patch,avr] " Georg-Johann Lay
2017-06-22 20:27 ` [patch,avr][ping #1] " Georg-Johann Lay
2017-06-27 10:01 ` Georg-Johann Lay [this message]
2017-07-05 10:19 ` [patch,avr][Ping #3] " Georg-Johann Lay
2017-07-08 5:02 ` Denis Chertykov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c4d23f1c-7a84-1612-a04a-fad4b57d2474@gjlay.de \
--to=avr@gjlay.de \
--cc=chertykov@gmail.com \
--cc=gcc-patches@gcc.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).