diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-05-22 07:40:26 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-05-22 07:40:26 +0000 |
commit | f5ef1390e4526ed8d83edc8d528e78a80a3667e7 (patch) | |
tree | e077f1ff6c35cde9817f0a709edaf59ec48986c9 /gcc/combine.c | |
parent | 17822ef8b47e893b11a7e32bc82a23339501412c (diff) | |
download | gcc-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.c | 5 |
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); |