From 742bcbf685bc51c5714e0be4b8a71d8b84c573c8 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 31 Jan 2023 14:30:55 -0800 Subject: [PATCH] compiler-rt/lib: Add .Linterceptor_sigsetjmp Older GNU assemblers generate R_X86_64_PC32 relocation against defined non-weak global branch targets with default visibility. A linker may issue an error when building a shared library. Add a local alias, .Linterceptor_sigsetjmp, to __interceptor_sigsetjmp to avoid R_X86_64_PC32 relocation for "jmp __interceptor_sigsetjmp" with older GNU assemblers. Fixes: https://github.com/llvm/llvm-project/issues/60426 Differential Revision: https://reviews.llvm.org/D142995 --- compiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S b/compiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S index 7566c1e..a5a3858 100644 --- a/compiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S +++ b/compiler-rt/lib/hwasan/hwasan_setjmp_x86_64.S @@ -37,13 +37,14 @@ __interceptor_setjmp: CFI_STARTPROC _CET_ENDBR xorl %esi, %esi - jmp __interceptor_sigsetjmp + jmp .Linterceptor_sigsetjmp CFI_ENDPROC ASM_SIZE(__interceptor_setjmp) .global __interceptor_sigsetjmp ASM_TYPE_FUNCTION(__interceptor_sigsetjmp) __interceptor_sigsetjmp: +.Linterceptor_sigsetjmp: CFI_STARTPROC _CET_ENDBR -- 2.7.4