diff options
author | Richard Biener <rguenther@suse.de> | 2016-02-08 09:09:22 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2016-02-08 09:09:22 +0000 |
commit | 43f4a281a321cf24391870c340e2a52e8acb6b7f (patch) | |
tree | 432be309bd23dbde8ace856de84c5d8c7ecc89a5 /gcc | |
parent | e8dfe49e7d737db40010122c5fad7f4ca9926eaa (diff) | |
download | gcc-43f4a281a321cf24391870c340e2a52e8acb6b7f.zip gcc-43f4a281a321cf24391870c340e2a52e8acb6b7f.tar.gz gcc-43f4a281a321cf24391870c340e2a52e8acb6b7f.tar.bz2 |
re PR target/69274 (435.gromacs performance regression after r231814 on x86 Haswell and bdver2)
2016-02-08 Richard Biener <rguenther@suse.de>
PR rtl-optimization/69274
* ira.c (ira_setup_alts): Do not change recog_data.operand
order.
* gcc.target/i386/addr-sel-1.c: XFAIL.
From-SVN: r233209
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/ira.c | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/addr-sel-1.c | 2 |
4 files changed, 15 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2c4a8b6..3e80551 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-02-08 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/69274 + * ira.c (ira_setup_alts): Do not change recog_data.operand + order. + 2016-02-08 Jeff Law <law@redhat.com> PR tree-optimization/65917 @@ -1889,10 +1889,11 @@ ira_setup_alts (rtx_insn *insn, HARD_REG_SET &alts) } if (commutative < 0) break; - if (curr_swapped) - break; + /* Swap forth and back to avoid changing recog_data. */ std::swap (recog_data.operand[commutative], recog_data.operand[commutative + 1]); + if (curr_swapped) + break; } } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6aa927d..e0e68af 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2016-02-08 Richard Biener <rguenther@suse.de> + + PR rtl-optimization/69274 + * gcc.target/i386/addr-sel-1.c: XFAIL. + 2016-02-08 Jeff Law <law@redhat.com> PR tree-optimization/68541 diff --git a/gcc/testsuite/gcc.target/i386/addr-sel-1.c b/gcc/testsuite/gcc.target/i386/addr-sel-1.c index 27623ff..8b1b4d4 100644 --- a/gcc/testsuite/gcc.target/i386/addr-sel-1.c +++ b/gcc/testsuite/gcc.target/i386/addr-sel-1.c @@ -14,4 +14,4 @@ int f(int i) } /* { dg-final { scan-assembler "a\\+1" } } */ -/* { dg-final { scan-assembler "b\\+1" } } */ +/* { dg-final { scan-assembler "b\\+1" { xfail *-*-* } } } */ |