aboutsummaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authorDavid Malcolm <dmalcolm@redhat.com>2014-09-09 15:14:03 +0000
committerDavid Malcolm <dmalcolm@gcc.gnu.org>2014-09-09 15:14:03 +0000
commitd6e1e8b8d1663dd2b25bc9e27ca099568848c641 (patch)
treee9fd85a935c135494fbf5adfc6fce9d4b291818a /gcc/combine.c
parent0cc97fc5522a17788b0d47550f37d592ffca56ff (diff)
downloadgcc-d6e1e8b8d1663dd2b25bc9e27ca099568848c641.zip
gcc-d6e1e8b8d1663dd2b25bc9e27ca099568848c641.tar.gz
gcc-d6e1e8b8d1663dd2b25bc9e27ca099568848c641.tar.bz2
Handcode gen_rtx_INSN
gcc/ChangeLog: 2014-09-09 David Malcolm <dmalcolm@redhat.com> * combine.c (try_combine): Eliminate checked cast on result of gen_rtx_INSN. * emit-rtl.c (gen_rtx_INSN): New function, improving over the prior autogenerated one by strengthening the return type and params 2 and 3 from rtx to rtx_insn *, and by naming the params. * gengenrtl.c (special_rtx): Add INSN to those that are special-cased. * rtl.h (gen_rtx_INSN): New prototype. From-SVN: r215083
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 60524b5..0ec7f85 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -2772,10 +2772,9 @@ try_combine (rtx_insn *i3, rtx_insn *i2, rtx_insn *i1, rtx_insn *i0,
never appear in the insn stream so giving it the same INSN_UID
as I2 will not cause a problem. */
- i1 = as_a <rtx_insn *> (
- gen_rtx_INSN (VOIDmode, NULL_RTX, i2, BLOCK_FOR_INSN (i2),
- XVECEXP (PATTERN (i2), 0, 1), INSN_LOCATION (i2),
- -1, NULL_RTX));
+ i1 = gen_rtx_INSN (VOIDmode, NULL, i2, BLOCK_FOR_INSN (i2),
+ XVECEXP (PATTERN (i2), 0, 1), INSN_LOCATION (i2),
+ -1, NULL_RTX);
INSN_UID (i1) = INSN_UID (i2);
SUBST (PATTERN (i2), XVECEXP (PATTERN (i2), 0, 0));