This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RE: [patch] Stop using JUMP_INSN for jump table data
- From: "Kyrylo Tkachov" <kyrylo dot tkachov at arm dot com>
- To: "'Steven Bosscher'" <stevenb dot gcc at gmail dot com>
- Cc: "GCC Patches" <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 3 Apr 2013 11:33:14 +0100
- Subject: RE: [patch] Stop using JUMP_INSN for jump table data
- References: <CABu31nOPJ-+ixTfOqAGWMqg4nbKXHP_OWuitre8=1H__cc8S+Q at mail dot gmail dot com> <5156E26B dot 7040503 at redhat dot com> <CABu31nNZnfmkR2Tm8GxZVg+vL3t-BbTo3yGM0jHBepDCkN7BWQ at mail dot gmail dot com>
Hi Steven,
> From: gcc-patches-owner@gcc.gnu.org [mailto:gcc-patches-
> owner@gcc.gnu.org] On Behalf Of Steven Bosscher
> Sent: 30 March 2013 13:10
> To: Jeff Law
> Cc: GCC Patches
> Subject: Re: [patch] Stop using JUMP_INSN for jump table data
>
> On Sat, Mar 30, 2013 at 2:02 PM, Jeff Law wrote:
>
> > OK.
>
> Thanks for the quick review!
>
> > Note that on at least one target, the jump table data is actual code
> (PA).
> > I don't think it makes a difference at this stage, but please keep
> that in
> > mind as you continue this work.
>
> Right, the PA "explodes" table jumps to individual jumps in
> pa_reorg(). I actually tested on PA too (on my US$15 bargain HP
> visualize J5600 workstation :-) and things work just fine. I'm more
> concerned about some of the back ends that use
> {next,prev}_{real,active}_insn to find jump table data after a
> JUMP_INSN instead of using tablejump_p, but we'll see and I'll
> obviously be on the hook to fix any fall-out.
Unfortunately, this patch breaks arm-none-eabi, arm-none-linux-gnueabi(hf)
and aarch64-none-elf.
See PR56809 for more info. GCC ICEs when building newlib and produces
invalid assembly when building glibc.
Any ideas?
>
> Ciao!
> Steven
Thanks,
Kyrill