public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
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.

  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).