]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Enhance 'gcc.target/nvptx/alias-*.c' assembler scanning
authorThomas Schwinge <tschwinge@baylibre.com>
Wed, 17 Jul 2024 13:27:51 +0000 (15:27 +0200)
committerThomas Schwinge <tschwinge@baylibre.com>
Thu, 5 Sep 2024 12:19:07 +0000 (14:19 +0200)
... in order to demonstrate unexpected behavior (XFAILed here).

PR target/104957
gcc/testsuite/
* gcc.target/nvptx/alias-1.c: Enhance assembler scanning.
* gcc.target/nvptx/alias-2.c: Likewise.
* gcc.target/nvptx/alias-3.c: Likewise.
* gcc.target/nvptx/alias-4.c: Likewise.
* gcc.target/nvptx/alias-to-alias-1.c: Likewise.

gcc/testsuite/gcc.target/nvptx/alias-1.c
gcc/testsuite/gcc.target/nvptx/alias-2.c
gcc/testsuite/gcc.target/nvptx/alias-3.c
gcc/testsuite/gcc.target/nvptx/alias-4.c
gcc/testsuite/gcc.target/nvptx/alias-to-alias-1.c

index 1c0642b14d91b6a115052b27158fa51a960bb8a3..0fb06495f6754611151310af0c25b7c2d980fb9a 100644 (file)
@@ -23,6 +23,15 @@ main (void)
   return 0;
 }
 
-/* { dg-final { scan-assembler-times "\\.alias f,__f;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.visible \\.func __f;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.visible \\.func f;" 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: f$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func f;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: f$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.alias f,__f;$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)\tcall __f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall f;$} 1 } } */
index 7a88b6f4f6f1d6c70f93925e3ea4e1a3985781fd..8ae8b5cfaed98e4e7586ffb9883be80dd66dee9a 100644 (file)
@@ -5,10 +5,18 @@
 
 #include "alias-1.c"
 
+/* Note extern and inlined, so still there.  */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f$} 1 } } */
+
 /* Inlined, so no alias.  */
-/* { dg-final { scan-assembler-not "\\.alias.*;" } } */
-/* { dg-final { scan-assembler-not "\\.visible \\.func f;" } } */
 
-/* Note extern and inlined, so still there.  */
-/* { dg-final { scan-assembler-times "\\.visible \\.func __f;" 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.alias f,__f;$} 0 } } */
 
+/* { dg-final { scan-assembler-times {(?n)\tcall __f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall f;$} 0 } } */
index b55ff26269e1db873ee33a98295ce97cc4a2f217..1906607f95f5a4db424a5e3b910c4ac9796f9d3f 100644 (file)
@@ -25,6 +25,15 @@ main (void)
   return 0;
 }
 
-/* { dg-final { scan-assembler-times "\\.alias f,__f;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.func __f;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.func f;" 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DECL: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.func __f;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DEF: __f$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.func __f$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DECL: f$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.func f;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DEF: f$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.alias f,__f;$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)\tcall __f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall f;$} 1 } } */
index b36fa420aa7e922092bbc323707b1d6eca934d70..98c1d4972b85ed32299039453954b9305d268552 100644 (file)
@@ -5,9 +5,18 @@
 
 #include "alias-3.c"
 
+/* Static and inlined, so it's deleted.  */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DECL: __f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DEF: __f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func __f$} 0 } } */
+
 /* Inlined, so no alias.  */
-/* { dg-final { scan-assembler-not "\\.alias.*;" } } */
-/* { dg-final { scan-assembler-not "\\.func f;" } } */
 
-/* Static and inlined, so it's deleted.  */
-/* { dg-final { scan-assembler-not "\\.func __f;" } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DECL: f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN FUNCTION DEF: f$} 0 } }
+   { dg-final { scan-assembler-times {(?n)^\.alias f,__f;$} 0 } } */
+
+/* { dg-final { scan-assembler-times {(?n)\tcall __f;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall f;$} 0 } } */
index 273baca89c4a229430bc16d6ea04183093a2498d..ebd62e1196491771997dd7bd46a8d6788a6bf20e 100644 (file)
@@ -19,9 +19,21 @@ main (void)
   return 0;
 }
 
-/* { dg-final { scan-assembler-times "\\.alias bar,foo;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.visible \\.func foo;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.visible \\.func bar;" 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: foo$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func foo;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: foo$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func foo$} 1 } } */
 
-/* { dg-final { scan-assembler-times "\\.alias baz,bar;" 1 } } */
-/* { dg-final { scan-assembler-times "\\.visible \\.func baz;" 1 } } */
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: bar$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func bar;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: bar$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.alias bar,foo;$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DECL: baz$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.visible \.func baz;$} 1 } }
+   { dg-final { scan-assembler-times {(?n)^// BEGIN GLOBAL FUNCTION DEF: baz$} 1 { xfail *-*-* } } }
+   { dg-final { scan-assembler-times {(?n)^\.alias baz,bar;$} 1 } } */
+
+/* { dg-final { scan-assembler-times {(?n)\tcall foo;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall bar;$} 0 } }
+   { dg-final { scan-assembler-times {(?n)\tcall baz;$} 1 } } */