diff options
author | Kyrylo Tkachov <kyrylo.tkachov@arm.com> | 2015-02-04 13:53:56 +0000 |
---|---|---|
committer | Kyrylo Tkachov <ktkachov@gcc.gnu.org> | 2015-02-04 13:53:56 +0000 |
commit | a1ac80507d37425ef84fa68431bb2c63d6b27fef (patch) | |
tree | 7041efec9b37a932620bd30c24cd98a0ca8d8fbe /gcc | |
parent | cb5c6c29bd43d21f7ab86d53605bc728c5fb5374 (diff) | |
download | gcc-a1ac80507d37425ef84fa68431bb2c63d6b27fef.zip gcc-a1ac80507d37425ef84fa68431bb2c63d6b27fef.tar.gz gcc-a1ac80507d37425ef84fa68431bb2c63d6b27fef.tar.bz2 |
[AArch64] Use std::swap instead of manually swapping in aarch64-ldpstp.md
* config/aarch64/aarch64-ldpstp.md: Use std::swap instead of
manual swaps in all peepholes.
From-SVN: r220403
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-ldpstp.md | 168 |
2 files changed, 53 insertions, 120 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 165f521..d63c59c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + * config/aarch64/aarch64-ldpstp.md: Use std::swap instead of + manual swaps in all peepholes. + +2015-02-04 Kyrylo Tkachov <kyrylo.tkachov@arm.com> + * config/aarch64/aarch64.c (aarch64_evpc_ext): Use std::swap instead of manual swapping implementation. (aarch64_expand_vec_perm_const_1): Likewise. diff --git a/gcc/config/aarch64/aarch64-ldpstp.md b/gcc/config/aarch64/aarch64-ldpstp.md index af8d50e..8d6d882 100644 --- a/gcc/config/aarch64/aarch64-ldpstp.md +++ b/gcc/config/aarch64/aarch64-ldpstp.md @@ -27,18 +27,14 @@ [(parallel [(set (match_dup 0) (match_dup 1)) (set (match_dup 2) (match_dup 3))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -51,18 +47,14 @@ [(parallel [(set (match_dup 0) (match_dup 1)) (set (match_dup 2) (match_dup 3))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[0], &base, &offset_1); extract_base_offset_in_addr (operands[2], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -75,18 +67,14 @@ [(parallel [(set (match_dup 0) (match_dup 1)) (set (match_dup 2) (match_dup 3))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -99,18 +87,14 @@ [(parallel [(set (match_dup 0) (match_dup 1)) (set (match_dup 2) (match_dup 3))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[0], &base, &offset_1); extract_base_offset_in_addr (operands[2], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -125,18 +109,14 @@ [(parallel [(set (match_dup 0) (sign_extend:DI (match_dup 1))) (set (match_dup 2) (sign_extend:DI (match_dup 3)))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -149,18 +129,14 @@ [(parallel [(set (match_dup 0) (zero_extend:DI (match_dup 1))) (set (match_dup 2) (zero_extend:DI (match_dup 3)))])] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[2]; - operands[2] = tmp; - tmp = operands[1]; - operands[1] = operands[3]; - operands[3] = tmp; + std::swap (operands[0], operands[2]); + std::swap (operands[1], operands[3]); } }) @@ -183,24 +159,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, true, <MODE>mode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, true, <MODE>mode, UNKNOWN)) @@ -223,24 +191,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, true, <MODE>mode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, true, <MODE>mode, UNKNOWN)) @@ -263,24 +223,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, true, SImode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, true, SImode, SIGN_EXTEND)) @@ -303,24 +255,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, true, SImode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[1], &base, &offset_1); extract_base_offset_in_addr (operands[3], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, true, SImode, ZERO_EXTEND)) @@ -343,24 +287,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, false, <MODE>mode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[0], &base, &offset_1); extract_base_offset_in_addr (operands[2], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, false, <MODE>mode, UNKNOWN)) @@ -383,24 +319,16 @@ "aarch64_operands_adjust_ok_for_ldpstp (operands, false, <MODE>mode)" [(const_int 0)] { - rtx base, offset_1, offset_2, tmp; + rtx base, offset_1, offset_2; extract_base_offset_in_addr (operands[0], &base, &offset_1); extract_base_offset_in_addr (operands[2], &base, &offset_2); if (INTVAL (offset_1) > INTVAL (offset_2)) { - tmp = operands[0]; - operands[0] = operands[6]; - operands[6] = tmp; - tmp = operands[1]; - operands[1] = operands[7]; - operands[7] = tmp; - tmp = operands[2]; - operands[2] = operands[4]; - operands[4] = tmp; - tmp = operands[3]; - operands[3] = operands[5]; - operands[5] = tmp; + std::swap (operands[0], operands[6]); + std::swap (operands[1], operands[7]); + std::swap (operands[2], operands[4]); + std::swap (operands[3], operands[5]); } if (aarch64_gen_adjusted_ldpstp (operands, false, <MODE>mode, UNKNOWN)) |