https://gcc.gnu.org/g:a33091a696a468db80253e031b15dcf0cc6db521
commit r16-7048-ga33091a696a468db80253e031b15dcf0cc6db521
Author: Karl Meakin <karl.meakin@arm.com>
Date: Thu Dec 11 16:49:14 2025 +0000
aarch64: fix `asm.c` tests
The assembly functions declared in `asm_1.c` and `asm_3` were not marked
global, so they could not be found by the linker, and would cause the
`asm_2.c` and `asm_4.c` test to fail. Fix by marking the functions with
`.globl`.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/sve/pcs/asm_1.c
* gcc.target/aarch64/sve/pcs/asm_3.c: Fix tests.
Diff:
---
gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_1.c | 8 +++++---
gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_3.c | 8 +++++---
2 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_1.c b/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_1.c
index 8be2094dc96d..9c42b7873bf2 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_1.c
@@ -6,11 +6,13 @@
#define ASM_FUNCTION(NAME, RET_TYPE, ARG_TYPE, INSN) \
extern RET_TYPE NAME (svbool_t, ARG_TYPE); \
asm( \
-" .type " #NAME ", %function\n" \
-#NAME ":\n" \
+" .type %cc0, %%function\n" \
+" .globl %cc0\n" \
+"%cc0:\n" \
" " INSN "\n" \
" ret\n" \
-" .size " #NAME ", .-" #NAME "\n" \
+" .size %cc0, .-%cc0\n" \
+: :":"(NAME ) \
)
ASM_FUNCTION (u8_callee, uint64_t, svuint8_t,
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_3.c b/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_3.c
index d5a36e52eab1..bcfa2c4c5418 100644
--- a/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_3.c
+++ b/gcc/testsuite/gcc.target/aarch64/sve/pcs/asm_3.c
@@ -6,11 +6,13 @@
#define ASM_FUNCTION(NAME, RET_TYPE, ARG_TYPE, INSN) \
extern RET_TYPE NAME (svbool_t, ARG_TYPE); \
asm( \
-" .type " #NAME ", %function\n" \
-#NAME ":\n" \
+" .type %cc0, %%function\n" \
+" .globl %cc0\n" \
+"%cc0:\n" \
" " INSN "\n" \
" ret\n" \
-" .size " #NAME ", .-" #NAME "\n" \
+" .size %cc0, .-%cc0\n" \
+: :":"(NAME ) \
)
ASM_FUNCTION (u8_callee, svuint8_t, svuint8x2_t,