]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: Fix up musttail2.C test
authorJakub Jelinek <jakub@redhat.com>
Fri, 28 Mar 2025 23:49:27 +0000 (00:49 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Fri, 28 Mar 2025 23:49:27 +0000 (00:49 +0100)
On Wed, Mar 26, 2025 at 10:10:07AM -0700, Andi Kleen wrote:
> I think this needs to be target external_tailcall, otherwise you will
> fail on targets that don't support that.
>
> Or alternatively make this not extern.

You're right (although I don't remember which targets are
non-external_musttail).

Here is a patch to define the function.

2025-03-28  Jakub Jelinek  <jakub@redhat.com>

* g++.dg/opt/musttail2.C (foo): Define the function instead of
just declaring it, add [[gnu::noipa]] attribute to it.

gcc/testsuite/g++.dg/opt/musttail2.C

index ee55c1a18df101c1b7cbd4b39679df752435f85e..d12fcb2e397d7a282879d2a346859ffa12221065 100644 (file)
@@ -4,7 +4,12 @@
 // { dg-final { scan-tree-dump-times "  \[^\n\r]* = foo \\\(\[^\n\r]*\\\); \\\[tail call\\\] \\\[must tail call\\\]" 1 "optimized" } }
 
 struct S { S () {} };
-char *foo (S);
+
+[[gnu::noipa]] char *
+foo (S)
+{
+  return 0;
+}
 
 char *
 bar (S)