aboutsummaryrefslogtreecommitdiff
path: root/gcc/cse.c
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2004-04-29 07:50:55 +0000
committerPaolo Bonzini <bonzini@gcc.gnu.org>2004-04-29 07:50:55 +0000
commitc6fb08ad284af074092aa4fb9edd1a9a44014b49 (patch)
tree4be29049b780d10dd9423c8ad52d77c6929b956b /gcc/cse.c
parent6cf1ac42db0684f0c386ec9a665ddcaa12a4f1c9 (diff)
downloadgcc-c6fb08ad284af074092aa4fb9edd1a9a44014b49.zip
gcc-c6fb08ad284af074092aa4fb9edd1a9a44014b49.tar.gz
gcc-c6fb08ad284af074092aa4fb9edd1a9a44014b49.tar.bz2
combine.c (combine_simplify_rtx): Adjust call to use simplify_relational_operation.
2004-04-29 Paolo Bonzini <bonzini@gnu.org> * combine.c (combine_simplify_rtx): Adjust call to use simplify_relational_operation. Do not use SELECT_CC_MODE when a comparison already has a MODE_CC mode. (simplify_set): simplify_relational_operation may now return another relational expression. * cse.c (fold_rtx): simplify_relational_operation now takes of computing the comparison mode. * dojump.c (compare_from_rtx): Use simplify_relational_operation, remove dead code. (do_compare_rtx_and_jump): Likewise. * integrate.c (subst_constants): simplify_relational_operation may now return another relational expression. * simplify-rtx.c (simplify_gen_relational): Move most code to the new simplify_relational_operation and simplify_relational_operation_1 functions. (simplify_relational_operation): Rewritten. (simplify_relational_operation_1): New function. (simplify_ternary_operation): simplify_relational_operation may now return another relational expression. (simplify_rtx): Remove unnecessary temp variable. From-SVN: r81282
Diffstat (limited to 'gcc/cse.c')
-rw-r--r--gcc/cse.c20
1 files changed, 5 insertions, 15 deletions
diff --git a/gcc/cse.c b/gcc/cse.c
index 0a7281e..e155db9 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -3924,21 +3924,11 @@ fold_rtx (rtx x, rtx insn)
}
}
- new = simplify_relational_operation (code, mode,
- (mode_arg0 != VOIDmode
- ? mode_arg0
- : (GET_MODE (const_arg0
- ? const_arg0
- : folded_arg0)
- != VOIDmode)
- ? GET_MODE (const_arg0
- ? const_arg0
- : folded_arg0)
- : GET_MODE (const_arg1
- ? const_arg1
- : folded_arg1)),
- const_arg0 ? const_arg0 : folded_arg0,
- const_arg1 ? const_arg1 : folded_arg1);
+ {
+ rtx op0 = const_arg0 ? const_arg0 : folded_arg0;
+ rtx op1 = const_arg1 ? const_arg1 : folded_arg1;
+ new = simplify_relational_operation (code, mode, mode_arg0, op0, op1);
+ }
break;
case RTX_BIN_ARITH: