[commit] Fix SPU breakage (Re: [patch] Stop using JUMP_INSN for jump table data)

2013-04-03 Thread Ulrich Weigand
Steven Bosscher wrote: > GCC uses fake JUMP_INSNs as placeholders for jump table data. These > JUMP_INSNs have an ADDR_VEC or ADDR_DIFF_VEC as PATTERN, but they are > not real instructions and they are not inside basic blocks. This > results in special-casing JUMP_P insns in various places through

RE: [patch] Stop using JUMP_INSN for jump table data

2013-04-03 Thread Kyrylo Tkachov
Hi Steven, > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- > ow...@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

Re: [patch] Stop using JUMP_INSN for jump table data

2013-03-30 Thread Jeff Law
On 03/30/2013 07:10 AM, Steven Bosscher wrote: Right, the PA "explodes" table jumps to individual jumps in pa_reorg(). Yup. One of the many things I'd like to forget. Unlike other jumps on the PA, we can't nullify the delay slot to save space. The jump must always be 2 instructions. So we

Re: [patch] Stop using JUMP_INSN for jump table data

2013-03-30 Thread Steven Bosscher
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

Re: [patch] Stop using JUMP_INSN for jump table data

2013-03-30 Thread Jeff Law
On 03/29/2013 05:15 PM, Steven Bosscher wrote: Hello, GCC uses fake JUMP_INSNs as placeholders for jump table data. These JUMP_INSNs have an ADDR_VEC or ADDR_DIFF_VEC as PATTERN, but they are not real instructions and they are not inside basic blocks. This results in special-casing JUMP_P insns