re PR rtl-optimization/61926 (const-anchor optimisation is sensitive to ordering)
authorRichard Sandiford <rdsandiford@googlemail.com>
Sun, 27 Jul 2014 09:50:56 +0000 (09:50 +0000)
committerRichard Sandiford <rsandifo@gcc.gnu.org>
Sun, 27 Jul 2014 09:50:56 +0000 (09:50 +0000)
gcc/testsuite/
PR rtl-optimization/61926
* gcc.target/mips/const-anchor-1.c, gcc.target/mips/const-anchor-2.c:
Reverse argument order.
* gcc.target/mips/const-anchor-3.c, gcc.target/mips/const-anchor-4.c:
New XFAILed tests that match the original order.

From-SVN: r213093

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/mips/const-anchor-1.c
gcc/testsuite/gcc.target/mips/const-anchor-2.c
gcc/testsuite/gcc.target/mips/const-anchor-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/mips/const-anchor-4.c [new file with mode: 0644]

index 2d835c9639cf7f49e379affe7826cbed0f1dd0e5..ba3c09c2401eba802f75688918074c11b066d109 100644 (file)
@@ -1,3 +1,11 @@
+2014-07-27  Richard Sandiford  <rdsandiford@googlemail.com>
+
+       PR rtl-optimization/61926
+       * gcc.target/mips/const-anchor-1.c, gcc.target/mips/const-anchor-2.c:
+       Reverse argument order.
+       * gcc.target/mips/const-anchor-3.c, gcc.target/mips/const-anchor-4.c:
+       New XFAILed tests that match the original order.
+
 2014-07-26  Marek Polacek  <polacek@redhat.com>
 
        PR c/61077
index a5f01e4ec1a5f6e26d766b14c920b1d36a0dd734..c2726cc25fbb4ec58edbd593e7a7d52e49231a2f 100644 (file)
@@ -2,9 +2,9 @@
    (0x1234000) used to build another constant.  */
 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
 /* { dg-final { scan-assembler-not "0x12330000|305332224" } } */
-/* { dg-final { scan-assembler "\td?addiu\t\\\$5,\\\$\[0-9\]*,-1" } } */
+/* { dg-final { scan-assembler "\td?addiu\t\\\$4,\\\$\[0-9\]*,-1" } } */
 
 NOMIPS16 void f ()
 {
-  g (0x12340001, 0x1233ffff);
+  g (0x1233ffff, 0x12340001);
 }
index 8dad5a70b271b52b47c22e2be187a31b57263b0b..4932648061b4ab7c45f200092ae7149d251903fb 100644 (file)
@@ -1,9 +1,9 @@
 /* Derive a constant (0x30001) from another constant.  */
 /* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
 /* { dg-final { scan-assembler-not "0x300000|196608" } } */
-/* { dg-final { scan-assembler "\td?addiu\t\\\$5,\\\$\[0-9\]*,32763" } } */
+/* { dg-final { scan-assembler "\td?addiu\t\\\$4,\\\$\[0-9\]*,32763" } } */
 
 NOMIPS16 void f ()
 {
-  g (0x28006, 0x30001);
+  g (0x30001, 0x28006);
 }
diff --git a/gcc/testsuite/gcc.target/mips/const-anchor-3.c b/gcc/testsuite/gcc.target/mips/const-anchor-3.c
new file mode 100644 (file)
index 0000000..5988cc4
--- /dev/null
@@ -0,0 +1,11 @@
+/* Derive a constant (0x1233ffff) from an intermediate value
+   (0x1234000) used to build another constant.  */
+/* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
+/* See PR61926 for the XFAILs.  */
+/* { dg-final { scan-assembler-not "0x12330000|305332224" { xfail *-*-* } } } */
+/* { dg-final { scan-assembler "\td?addiu\t\\\$5,\\\$\[0-9\]*,-1" { xfail *-*-* } } } */
+
+NOMIPS16 void f ()
+{
+  g (0x12340001, 0x1233ffff);
+}
diff --git a/gcc/testsuite/gcc.target/mips/const-anchor-4.c b/gcc/testsuite/gcc.target/mips/const-anchor-4.c
new file mode 100644 (file)
index 0000000..a9e2631
--- /dev/null
@@ -0,0 +1,10 @@
+/* Derive a constant (0x30001) from another constant.  */
+/* { dg-skip-if "code quality test" { *-*-* } { "-O0" } { "" } } */
+/* See PR61926 for the XFAILs.  */
+/* { dg-final { scan-assembler-not "0x300000|196608" { xfail *-*-* } } } */
+/* { dg-final { scan-assembler "\td?addiu\t\\\$5,\\\$\[0-9\]*,32763" { xfail *-*-* }  } } */
+
+NOMIPS16 void f ()
+{
+  g (0x28006, 0x30001);
+}