summaryrefslogtreecommitdiff
path: root/gcc/combine.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-22 07:40:26 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-05-22 07:40:26 +0000
commitf5ef1390e4526ed8d83edc8d528e78a80a3667e7 (patch)
treee077f1ff6c35cde9817f0a709edaf59ec48986c9 /gcc/combine.c
parent17822ef8b47e893b11a7e32bc82a23339501412c (diff)
downloadgcc-f5ef1390e4526ed8d83edc8d528e78a80a3667e7.tar.gz
* combine.c (gen_binary): Use swap_commutative_operands_p
(simplify_comparison): Likewise. * expmed.c (emit_store_flag): Likewise. * expr.c (compare_from_rtx): Likewise. (do_compare_rtx_and_jump): Likewise. * optabs.c (emit_cmp_and_jump_insn): Revert last patch; abort if not emitting a branch and operands want swapping. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42433 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/combine.c')
-rw-r--r--gcc/combine.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/combine.c b/gcc/combine.c
index 675b1fe3e91..e36cdefac45 100644
--- a/gcc/combine.c
+++ b/gcc/combine.c
@@ -9793,8 +9793,7 @@ gen_binary (code, mode, op0, op1)
rtx tem;
if (GET_RTX_CLASS (code) == 'c'
- && (GET_CODE (op0) == CONST_INT
- || (CONSTANT_P (op0) && GET_CODE (op1) != CONST_INT)))
+ && swap_commutative_operands_p (op0, op1))
tem = op0, op0 = op1, op1 = tem;
if (GET_RTX_CLASS (code) == '<')
@@ -9999,7 +9998,7 @@ simplify_comparison (code, pop0, pop1)
/* If the first operand is a constant, swap the operands and adjust the
comparison code appropriately, but don't do this if the second operand
is already a constant integer. */
- if (CONSTANT_P (op0) && GET_CODE (op1) != CONST_INT)
+ if (swap_commutative_operands_p (op0, op1))
{
tem = op0, op0 = op1, op1 = tem;
code = swap_condition (code);