Make insn_addresses_new require an rtx_insn
authorDavid Malcolm <dmalcolm@redhat.com>
Fri, 29 Aug 2014 00:07:51 +0000 (00:07 +0000)
committerDavid Malcolm <dmalcolm@gcc.gnu.org>
Fri, 29 Aug 2014 00:07:51 +0000 (00:07 +0000)
commit17f385d8dabbfff8eeb45012d63c8cd232958330
tree8f06167e65a551690e63c81678d1990d5e257be2
parent3064b94272037d53a8c9886c3e347c063d2f0a40
Make insn_addresses_new require an rtx_insn

gcc/
2014-08-28  David Malcolm  <dmalcolm@redhat.com>

* insn-addr.h (insn_addresses_new): Strengthen param "insn" from
rtx to rtx_insn *.
* config/s390/s390.c (s390_split_branches): Eliminate top-level
local rtx "tmp", in favor of new local rtx "mem" and rtx_insn *
"set_insn".
(s390_mainpool_finish): In three places, split out a local rtx
"insn" into a local rtx - "set" or "pat" - and a rtx_insn *
"insn".  Strengthen local "pool_end" from rtx to rtx_code_label *
 and split another local rtx "insn" out into rtx "pat" and
rtx_insn * "insn".
* config/sh/sh.c (output_branchy_insn): Rather than working
directly on operands[9], introduce local rtx_code_label *
variables named "lab" in two places, working on them, and then
assigning them to operands[9], so that the intervening operations
are known by the type system to be on insns.

From-SVN: r214701
gcc/ChangeLog
gcc/config/s390/s390.c
gcc/config/sh/sh.c
gcc/insn-addr.h