re PR rtl-optimization/87763 (aarch64 target testcases fail after r265398)
authorSteve Ellcey <sellcey@marvell.com>
Wed, 10 Apr 2019 20:29:57 +0000 (20:29 +0000)
committerSteve Ellcey <sje@gcc.gnu.org>
Wed, 10 Apr 2019 20:29:57 +0000 (20:29 +0000)
2018-04-10  Steve Ellcey  <sellcey@marvell.com>

PR rtl-optimization/87763
* gcc.target/aarch64/combine_bfxil.c: Change some bfxil checks
to bfi.
* gcc.target/aarch64/combine_bfi_2.c: New test.

From-SVN: r270267

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/combine_bfi_2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/aarch64/combine_bfxil.c

index 4f69d6f..71ae617 100644 (file)
@@ -1,3 +1,10 @@
+2018-04-10  Steve Ellcey  <sellcey@marvell.com>
+
+       PR rtl-optimization/87763
+       * gcc.target/aarch64/combine_bfxil.c: Change some bfxil checks
+       to bfi.
+       * gcc.target/aarch64/combine_bfi_2.c: New test.
+
 2019-04-10  Jakub Jelinek  <jakub@redhat.com>
 
        PR middle-end/90025
diff --git a/gcc/testsuite/gcc.target/aarch64/combine_bfi_2.c b/gcc/testsuite/gcc.target/aarch64/combine_bfi_2.c
new file mode 100644 (file)
index 0000000..145282d
--- /dev/null
@@ -0,0 +1,15 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+int f1(int x, int y)
+{
+  return (y & 0xfffffff) | (((x <<28) & 0xf0000000));
+}
+
+
+int f2(int x, int y)
+{
+  return (((x <<28) & 0xf0000000)) | (y & 0xfffffff);
+}
+
+/* { dg-final { scan-assembler-times {\tbfi\t} 2 } } */
index 109f989..a2fb31c 100644 (file)
@@ -114,4 +114,5 @@ main (void)
   return 0;
 }
 
-/* { dg-final { scan-assembler-times "bfxil\\t" 18 } } */
+/* { dg-final { scan-assembler-times "bfxil\\t" 7 } } */
+/* { dg-final { scan-assembler-times "bfi\\t" 11 } } */