[PATCH][combine][obvious] Use std::swap instead of manually swapping
Hi all, This is another one of those std::swap patches, this time I was in the combine neighbourhood Bootstrapped on x86_64 and tested on aarch64. Precedents suggest these changes are considered obvious. So I'll commit this in a couple of days unless someone objects. Thanks, Kyrill 2015-04-27 Kyrylo Tkachov kyrylo.tkac...@arm.com * combine.c (simplify_if_then_else): Use std::swap instead of manually swapping. (known_cond): Likewise. (simplify_comparison): Likewise. commit e8aa8f2ec22cf548bc05f0f8e56a13a2bdd1c228 Author: Kyrylo Tkachov kyrylo.tkac...@arm.com Date: Fri Apr 24 17:47:14 2015 +0100 [combine][obvious] Use std::swap instead of manually swapping diff --git a/gcc/combine.c b/gcc/combine.c index 9f840cb..5f7cbc0 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -6185,7 +6185,7 @@ simplify_if_then_else (rtx x) if (false_code == EQ) { swapped = 1, true_code = EQ, false_code = NE; - temp = true_rtx, true_rtx = false_rtx, false_rtx = temp; + std::swap (true_rtx, false_rtx); } /* If we are comparing against zero and the expression being tested has @@ -6250,7 +6250,7 @@ simplify_if_then_else (rtx x) SUBST (XEXP (x, 1), false_rtx); SUBST (XEXP (x, 2), true_rtx); - temp = true_rtx, true_rtx = false_rtx, false_rtx = temp; + std::swap (true_rtx, false_rtx); cond = XEXP (x, 0); /* It is possible that the conditional has been simplified out. */ @@ -9022,7 +9022,6 @@ static rtx known_cond (rtx x, enum rtx_code cond, rtx reg, rtx val) { enum rtx_code code = GET_CODE (x); - rtx temp; const char *fmt; int i, j; @@ -9062,7 +9061,7 @@ known_cond (rtx x, enum rtx_code cond, rtx reg, rtx val) else if (COMPARISON_P (x) || COMMUTATIVE_ARITH_P (x)) { if (rtx_equal_p (XEXP (x, 0), val)) - cond = swap_condition (cond), temp = val, val = reg, reg = temp; + cond = swap_condition (cond), std::swap (val, reg); if (rtx_equal_p (XEXP (x, 0), reg) rtx_equal_p (XEXP (x, 1), val)) { @@ -11454,7 +11453,7 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1) is already a constant integer. */ if (swap_commutative_operands_p (op0, op1)) { - tem = op0, op0 = op1, op1 = tem; + std::swap (op0, op1); code = swap_condition (code); } @@ -12341,7 +12340,7 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1) /* We may have changed the comparison operands. Re-canonicalize. */ if (swap_commutative_operands_p (op0, op1)) { - tem = op0, op0 = op1, op1 = tem; + std::swap (op0, op1); code = swap_condition (code); }
Re: [PATCH][combine][obvious] Use std::swap instead of manually swapping
On Mon, Apr 27, 2015 at 10:55:17AM +0100, Kyrill Tkachov wrote: Precedents suggest these changes are considered obvious. So I'll commit this in a couple of days unless someone objects. Yes it's obvious. One tiny thing... @@ -9062,7 +9061,7 @@ known_cond (rtx x, enum rtx_code cond, rtx reg, rtx val) else if (COMPARISON_P (x) || COMMUTATIVE_ARITH_P (x)) { if (rtx_equal_p (XEXP (x, 0), val)) - cond = swap_condition (cond), temp = val, val = reg, reg = temp; + cond = swap_condition (cond), std::swap (val, reg); if (rtx_equal_p (XEXP (x, 0), reg) rtx_equal_p (XEXP (x, 1), val)) { Might as well write this as two statements, like everywhere else, e.g. @@ -11454,7 +11453,7 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1) is already a constant integer. */ if (swap_commutative_operands_p (op0, op1)) { - tem = op0, op0 = op1, op1 = tem; + std::swap (op0, op1); code = swap_condition (code); } Thanks, Segher
RE: [PATCH][combine][obvious] Use std::swap instead of manually swapping
On 27/04/15 15:37, Segher Boessenkool wrote: On Mon, Apr 27, 2015 at 10:55:17AM +0100, Kyrill Tkachov wrote: Precedents suggest these changes are considered obvious. So I'll commit this in a couple of days unless someone objects. Yes it's obvious. One tiny thing... @@ -9062,7 +9061,7 @@ known_cond (rtx x, enum rtx_code cond, rtx reg, rtx val) else if (COMPARISON_P (x) || COMMUTATIVE_ARITH_P (x)) { if (rtx_equal_p (XEXP (x, 0), val)) -cond = swap_condition (cond), temp = val, val = reg, reg = temp; +cond = swap_condition (cond), std::swap (val, reg); if (rtx_equal_p (XEXP (x, 0), reg) rtx_equal_p (XEXP (x, 1), val)) { Might as well write this as two statements, like everywhere else, e.g. @@ -11454,7 +11453,7 @@ simplify_comparison (enum rtx_code code, rtx *pop0, rtx *pop1) is already a constant integer. */ if (swap_commutative_operands_p (op0, op1)) { - tem = op0, op0 = op1, op1 = tem; + std::swap (op0, op1); code = swap_condition (code); } Thanks, Thanks, here's what I committed with r222468. Kyrill Segher combine-swap.patch Description: Binary data
Re: [PATCH][combine][obvious] Use std::swap instead of manually swapping
On 04/27/2015 08:37 AM, Segher Boessenkool wrote: On Mon, Apr 27, 2015 at 10:55:17AM +0100, Kyrill Tkachov wrote: Precedents suggest these changes are considered obvious. So I'll commit this in a couple of days unless someone objects. Yes it's obvious. One tiny thing... @@ -9062,7 +9061,7 @@ known_cond (rtx x, enum rtx_code cond, rtx reg, rtx val) else if (COMPARISON_P (x) || COMMUTATIVE_ARITH_P (x)) { if (rtx_equal_p (XEXP (x, 0), val)) - cond = swap_condition (cond), temp = val, val = reg, reg = temp; + cond = swap_condition (cond), std::swap (val, reg); if (rtx_equal_p (XEXP (x, 0), reg) rtx_equal_p (XEXP (x, 1), val)) { Might as well write this as two statements, like everywhere else, e.g. Agreed. I really dislike using ',' like is shown above from a readability standpoint. jeff