[gcc r16-7048] aarch64: fix `asm.c` tests

Karl Meakin karmea01@gcc.gnu.org
Mon Jan 26 15:57:32 GMT 2026


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,


More information about the Gcc-cvs mailing list