diff options
author | Jakub Jelinek <jakub@redhat.com> | 2025-03-29 00:49:27 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2025-03-29 00:49:27 +0100 |
commit | 1a4aff76a2b104ff0b103c685b6c2ce8006fe6bb (patch) | |
tree | ccefb6e91cc2179b5fcb32ed479486deda285180 | |
parent | ea46ef1d21ce3bc6b7584cdf21b7b26d5daf72db (diff) | |
download | gcc-1a4aff76a2b104ff0b103c685b6c2ce8006fe6bb.zip gcc-1a4aff76a2b104ff0b103c685b6c2ce8006fe6bb.tar.gz gcc-1a4aff76a2b104ff0b103c685b6c2ce8006fe6bb.tar.bz2 |
testsuite: Fix up musttail2.C test
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.
-rw-r--r-- | gcc/testsuite/g++.dg/opt/musttail2.C | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/testsuite/g++.dg/opt/musttail2.C b/gcc/testsuite/g++.dg/opt/musttail2.C index ee55c1a..d12fcb2 100644 --- a/gcc/testsuite/g++.dg/opt/musttail2.C +++ b/gcc/testsuite/g++.dg/opt/musttail2.C @@ -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) |