diff options
author | David Malcolm <dmalcolm@redhat.com> | 2014-08-21 09:40:09 +0000 |
---|---|---|
committer | David Malcolm <dmalcolm@gcc.gnu.org> | 2014-08-21 09:40:09 +0000 |
commit | 579f75aefaf6ad541772195667b4f3afbf738fe5 (patch) | |
tree | bdaedc88d062be340eb32158d131b0b8754dd0f9 /gcc/genpeep.c | |
parent | 622dbadfab3efe2677b5e789b4e930482630a99e (diff) | |
download | gcc-579f75aefaf6ad541772195667b4f3afbf738fe5.zip gcc-579f75aefaf6ad541772195667b4f3afbf738fe5.tar.gz gcc-579f75aefaf6ad541772195667b4f3afbf738fe5.tar.bz2 |
peephole returns an rtx_insn
2014-08-21 David Malcolm <dmalcolm@redhat.com>
* output.h (peephole): Strengthen return type from rtx to
rtx_insn *.
* rtl.h (delete_for_peephole): Likewise for both params.
* genpeep.c (main): In generated "peephole" function, strengthen
return type and local "insn" from rtx to rtx_insn *. For now,
rename param "ins1" to "uncast_ins1", adding "ins1" back as an
rtx_insn *, with a checked cast.
* jump.c (delete_for_peephole): Strengthen params "from", "to" and
locals "insn", "next", "prev" from rtx to rtx_insn *.
From-SVN: r214264
Diffstat (limited to 'gcc/genpeep.c')
-rw-r--r-- | gcc/genpeep.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/genpeep.c b/gcc/genpeep.c index a8afadb..bc2785e 100644 --- a/gcc/genpeep.c +++ b/gcc/genpeep.c @@ -378,8 +378,10 @@ from the machine description file `md'. */\n\n"); printf ("extern rtx peep_operand[];\n\n"); printf ("#define operands peep_operand\n\n"); - printf ("rtx\npeephole (rtx ins1)\n{\n"); - printf (" rtx insn ATTRIBUTE_UNUSED, x ATTRIBUTE_UNUSED, pat ATTRIBUTE_UNUSED;\n\n"); + printf ("rtx_insn *\npeephole (rtx uncast_ins1)\n{\n"); + printf (" rtx_insn *ins1 = as_a <rtx_insn *> (uncast_ins1);\n"); + printf (" rtx_insn *insn ATTRIBUTE_UNUSED;\n"); + printf (" rtx x ATTRIBUTE_UNUSED, pat ATTRIBUTE_UNUSED;\n\n"); /* Early out: no peepholes for insns followed by barriers. */ printf (" if (NEXT_INSN (ins1)\n"); |