[compiler-rt] 4032ce3 - Revert "[compiler-rt][AArch64] Allow platform-specific mangling of SME routines. (#119864)"

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 16 09:40:23 PST 2024


Author: Sander de Smalen
Date: 2024-12-16T17:39:04Z
New Revision: 4032ce3413d0230b0ccba1203536f9cb35e5c3b5

URL: https://github.com/llvm/llvm-project/commit/4032ce3413d0230b0ccba1203536f9cb35e5c3b5
DIFF: https://github.com/llvm/llvm-project/commit/4032ce3413d0230b0ccba1203536f9cb35e5c3b5.diff

LOG: Revert "[compiler-rt][AArch64] Allow platform-specific mangling of SME routines. (#119864)"

This reverts commit e0fb3acd8a0b2a9340b9b2ae370c84c98f1a5cc2.

Added: 
    

Modified: 
    compiler-rt/lib/builtins/aarch64/sme-abi.S
    compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/builtins/aarch64/sme-abi.S b/compiler-rt/lib/builtins/aarch64/sme-abi.S
index 45bd221655fd66..a6bb921bd9e6b9 100644
--- a/compiler-rt/lib/builtins/aarch64/sme-abi.S
+++ b/compiler-rt/lib/builtins/aarch64/sme-abi.S
@@ -40,7 +40,7 @@ DEFINE_COMPILERRT_PRIVATE_FUNCTION(do_abort)
   .cfi_offset w30, -24
   .cfi_offset w29, -32
   .cfi_offset 46, -16
-  bl  SYMBOL_NAME(__arm_sme_state)
+  bl  __arm_sme_state
   tbz  x0, #0, 2f
 1:
   smstop sm
@@ -54,7 +54,7 @@ END_COMPILERRT_FUNCTION(do_abort)
 // __arm_sme_state fills the result registers based on a local
 // that is set as part of the compiler-rt startup code.
 //   __aarch64_has_sme_and_tpidr2_el0
-DEFINE_COMPILERRT_FUNCTION(__arm_sme_state)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_sme_state)
   .variant_pcs __arm_sme_state
   BTI_C
   mov x0, xzr
@@ -70,9 +70,9 @@ DEFINE_COMPILERRT_FUNCTION(__arm_sme_state)
   mrs x1, TPIDR2_EL0
 1:
   ret
-END_COMPILERRT_FUNCTION(__arm_sme_state)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_sme_state)
 
-DEFINE_COMPILERRT_FUNCTION(__arm_tpidr2_restore)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_tpidr2_restore)
   .variant_pcs __arm_tpidr2_restore
   BTI_C
   // If TPIDR2_EL0 is nonnull, the subroutine aborts in some platform-specific
@@ -106,9 +106,9 @@ DEFINE_COMPILERRT_FUNCTION(__arm_tpidr2_restore)
   ret
 2:
   b  SYMBOL_NAME(do_abort)
-END_COMPILERRT_FUNCTION(__arm_tpidr2_restore)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_tpidr2_restore)
 
-DEFINE_COMPILERRT_FUNCTION(__arm_tpidr2_save)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_tpidr2_save)
   .variant_pcs __arm_tpidr2_save
   BTI_C
   // If the current thread does not have access to TPIDR2_EL0, the subroutine
@@ -147,10 +147,9 @@ DEFINE_COMPILERRT_FUNCTION(__arm_tpidr2_save)
   ret
 2:
   b  SYMBOL_NAME(do_abort)
-END_COMPILERRT_FUNCTION(__arm_tpidr2_save)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_tpidr2_save)
 
-DEFINE_COMPILERRT_FUNCTION(__arm_za_disable)
-  .cfi_startproc
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_za_disable)
   .variant_pcs __arm_za_disable
   BTI_C
   // If the current thread does not have access to SME, the subroutine does
@@ -167,7 +166,7 @@ DEFINE_COMPILERRT_FUNCTION(__arm_za_disable)
   .cfi_def_cfa w29, 16
   .cfi_offset w30, -8
   .cfi_offset w29, -16
-  bl  SYMBOL_NAME(__arm_tpidr2_save)
+  bl  __arm_tpidr2_save
 
   // * Set TPIDR2_EL0 to null.
   msr TPIDR2_EL0, xzr
@@ -182,10 +181,9 @@ DEFINE_COMPILERRT_FUNCTION(__arm_za_disable)
   .cfi_restore w29
 0:
   ret
-  .cfi_endproc
-END_COMPILERRT_FUNCTION(__arm_za_disable)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_za_disable)
 
-DEFINE_COMPILERRT_FUNCTION(__arm_get_current_vg)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_get_current_vg)
   .variant_pcs __arm_get_current_vg
   BTI_C
 
@@ -202,7 +200,7 @@ DEFINE_COMPILERRT_FUNCTION(__arm_get_current_vg)
 2:
   mov     x0, xzr
   ret
-END_COMPILERRT_FUNCTION(__arm_get_current_vg)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_get_current_vg)
 
 NO_EXEC_STACK_DIRECTIVE
 

diff  --git a/compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S b/compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
index 092b499b3d3bfc..6e13a03691cfd6 100644
--- a/compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
+++ b/compiler-rt/lib/builtins/aarch64/sme-libc-mem-routines.S
@@ -52,7 +52,7 @@
    The loop tail is handled by always copying 64 bytes from the end.
 */
 
-DEFINE_COMPILERRT_FUNCTION(__arm_sc_memcpy)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_sc_memcpy)
         add     srcend1, src, count
         add     dstend1, dstin, count
         cmp     count, 128
@@ -232,7 +232,7 @@ L(copy64_from_start):
         stp     B_l, B_h, [dstin, 16]
         stp     C_l, C_h, [dstin]
         ret
-END_COMPILERRT_FUNCTION(__arm_sc_memcpy)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_sc_memcpy)
 
 DEFINE_COMPILERRT_FUNCTION_ALIAS(__arm_sc_memmove, __arm_sc_memcpy)
 
@@ -250,7 +250,7 @@ DEFINE_COMPILERRT_FUNCTION_ALIAS(__arm_sc_memmove, __arm_sc_memcpy)
 #define dstend2  x4
 #define zva_val  x5
 
-DEFINE_COMPILERRT_FUNCTION(__arm_sc_memset)
+DEFINE_COMPILERRT_OUTLINE_FUNCTION_UNMANGLED(__arm_sc_memset)
 #ifdef __ARM_FEATURE_SVE
         mov     z0.b, valw
 #else
@@ -346,6 +346,6 @@ L(no_zva_loop):
         stp     q0, q0, [dstend2, -64]
         stp     q0, q0, [dstend2, -32]
         ret
-END_COMPILERRT_FUNCTION(__arm_sc_memset)
+END_COMPILERRT_OUTLINE_FUNCTION(__arm_sc_memset)
 
 #endif // __aarch64__


        


More information about the llvm-commits mailing list