diff options
author | David Edelsohn <edelsohn@gnu.org> | 2006-04-26 14:33:49 +0000 |
---|---|---|
committer | David Edelsohn <dje@gcc.gnu.org> | 2006-04-26 10:33:49 -0400 |
commit | 7b282ff9a0f32ed6d8ebd86f98cc784c5df13a5d (patch) | |
tree | 03e551a81fdd60fc093e742fda09f8226ceab35f /gcc/combine.c | |
parent | 444704336a95b02933a3bdf50c51ae556d2dd274 (diff) | |
download | gcc-7b282ff9a0f32ed6d8ebd86f98cc784c5df13a5d.zip gcc-7b282ff9a0f32ed6d8ebd86f98cc784c5df13a5d.tar.gz gcc-7b282ff9a0f32ed6d8ebd86f98cc784c5df13a5d.tar.bz2 |
re PR target/27282 (ICE in final_scan_insn, at final.c:2448 - could not split insn)
2006-04-26 David Edelsohn <edelsohn@gnu.org>
Paolo Bonzini <bonzini@gnu.org>
PR middle-end/27282
* combine.c (simplify_and_const_int_1): Use gen_int_mode.
(simplify_and_const_int): Same.
Co-Authored-By: Paolo Bonzini <bonzini@gnu.org>
From-SVN: r113275
Diffstat (limited to 'gcc/combine.c')
-rw-r--r-- | gcc/combine.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index 2ff106d..ed9c497 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -8190,8 +8190,7 @@ simplify_and_const_int_1 (enum machine_mode mode, rtx varop, return NULL_RTX; /* Otherwise, return an AND. */ - constop = trunc_int_for_mode (constop, mode); - return simplify_gen_binary (AND, mode, varop, GEN_INT (constop)); + return simplify_gen_binary (AND, mode, varop, gen_int_mode (constop, mode)); } @@ -8210,7 +8209,8 @@ simplify_and_const_int (rtx x, enum machine_mode mode, rtx varop, return tem; if (!x) - x = simplify_gen_binary (AND, GET_MODE (varop), varop, GEN_INT (constop)); + x = simplify_gen_binary (AND, GET_MODE (varop), varop, + gen_int_mode (constop, mode)); if (GET_MODE (x) != mode) x = gen_lowpart (mode, x); return x; |