Linux MIPS Architecture development
 help / color / mirror / Atom feed
* [PATCH] MIPS: lib: Remove '.hidden' for local symbols
@ 2026-06-09  3:36 Nathan Chancellor
  2026-06-15 10:27 ` Thomas Bogendoerfer
  0 siblings, 1 reply; 2+ messages in thread
From: Nathan Chancellor @ 2026-06-09  3:36 UTC (permalink / raw)
  To: Thomas Bogendoerfer; +Cc: linux-mips, linux-kernel, Nathan Chancellor

After a recent change in binutils that warns when local symbols have
non-default visibility [1], there are a couple instances when building
arch/mips:

  Assembler messages:
  {standard input}: Warning: local symbol `__memset' has non-default visibility
  Assembler messages:
  {standard input}: Warning: local symbol `__memcpy' has non-default visibility

Remove the '.hidden' directives for these symbols to clear up the
warnings, as they are pointless with a local symbol, which is by
definition hidden. This results in no changes to these symbols in nm's
output when assembled with various copies of binutils.

Closes: https://lore.kernel.org/20260509122517.GA1108596@ax162/
Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=c4150acbda1b3ce0602f79cbb7700b39e577be7e [1]
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
 arch/mips/lib/memcpy.S | 2 --
 arch/mips/lib/memset.S | 2 --
 2 files changed, 4 deletions(-)

diff --git a/arch/mips/lib/memcpy.S b/arch/mips/lib/memcpy.S
index a4b4e805ff13..84f85aba6f4b 100644
--- a/arch/mips/lib/memcpy.S
+++ b/arch/mips/lib/memcpy.S
@@ -274,7 +274,6 @@
 	/* initialize __memcpy if this the first time we execute this macro */
 	.ifnotdef __memcpy
 	.set __memcpy, 1
-	.hidden __memcpy /* make sure it does not leak */
 	.endif
 
 	/*
@@ -538,7 +537,6 @@
 	.if __memcpy == 1
 	END(memcpy)
 	.set __memcpy, 0
-	.hidden __memcpy
 	.endif
 
 .Ll_exc_copy\@:
diff --git a/arch/mips/lib/memset.S b/arch/mips/lib/memset.S
index 79405c32cc85..ab087406da66 100644
--- a/arch/mips/lib/memset.S
+++ b/arch/mips/lib/memset.S
@@ -89,7 +89,6 @@
 	/* Initialize __memset if this is the first time we call this macro */
 	.ifnotdef __memset
 	.set __memset, 1
-	.hidden __memset /* Make sure it does not leak */
 	.endif
 
 	sltiu		t0, a2, STORSIZE	/* very small region? */
@@ -231,7 +230,6 @@
 	.if __memset == 1
 	END(memset)
 	.set __memset, 0
-	.hidden __memset
 	.endif
 
 #ifdef CONFIG_CPU_NO_LOAD_STORE_LR

---
base-commit: 6d96cc123ce33cd74e799c5434440393ed022bb7
change-id: 20260608-mips-fix-binutils-visibility-warning-71e531e65f78

Best regards,
--  
Cheers,
Nathan


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] MIPS: lib: Remove '.hidden' for local symbols
  2026-06-09  3:36 [PATCH] MIPS: lib: Remove '.hidden' for local symbols Nathan Chancellor
@ 2026-06-15 10:27 ` Thomas Bogendoerfer
  0 siblings, 0 replies; 2+ messages in thread
From: Thomas Bogendoerfer @ 2026-06-15 10:27 UTC (permalink / raw)
  To: Nathan Chancellor; +Cc: linux-mips, linux-kernel

On Mon, Jun 08, 2026 at 08:36:25PM -0700, Nathan Chancellor wrote:
> After a recent change in binutils that warns when local symbols have
> non-default visibility [1], there are a couple instances when building
> arch/mips:
> 
>   Assembler messages:
>   {standard input}: Warning: local symbol `__memset' has non-default visibility
>   Assembler messages:
>   {standard input}: Warning: local symbol `__memcpy' has non-default visibility
> 
> Remove the '.hidden' directives for these symbols to clear up the
> warnings, as they are pointless with a local symbol, which is by
> definition hidden. This results in no changes to these symbols in nm's
> output when assembled with various copies of binutils.
> 
> Closes: https://lore.kernel.org/20260509122517.GA1108596@ax162/
> Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=c4150acbda1b3ce0602f79cbb7700b39e577be7e [1]
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> ---
>  arch/mips/lib/memcpy.S | 2 --
>  arch/mips/lib/memset.S | 2 --
>  2 files changed, 4 deletions(-)
> 
> diff --git a/arch/mips/lib/memcpy.S b/arch/mips/lib/memcpy.S
> index a4b4e805ff13..84f85aba6f4b 100644
> --- a/arch/mips/lib/memcpy.S
> +++ b/arch/mips/lib/memcpy.S
> @@ -274,7 +274,6 @@
>  	/* initialize __memcpy if this the first time we execute this macro */
>  	.ifnotdef __memcpy
>  	.set __memcpy, 1
> -	.hidden __memcpy /* make sure it does not leak */
>  	.endif
>  
>  	/*
> @@ -538,7 +537,6 @@
>  	.if __memcpy == 1
>  	END(memcpy)
>  	.set __memcpy, 0
> -	.hidden __memcpy
>  	.endif
>  
>  .Ll_exc_copy\@:
> diff --git a/arch/mips/lib/memset.S b/arch/mips/lib/memset.S
> index 79405c32cc85..ab087406da66 100644
> --- a/arch/mips/lib/memset.S
> +++ b/arch/mips/lib/memset.S
> @@ -89,7 +89,6 @@
>  	/* Initialize __memset if this is the first time we call this macro */
>  	.ifnotdef __memset
>  	.set __memset, 1
> -	.hidden __memset /* Make sure it does not leak */
>  	.endif
>  
>  	sltiu		t0, a2, STORSIZE	/* very small region? */
> @@ -231,7 +230,6 @@
>  	.if __memset == 1
>  	END(memset)
>  	.set __memset, 0
> -	.hidden __memset
>  	.endif
>  
>  #ifdef CONFIG_CPU_NO_LOAD_STORE_LR
> 
> ---
> base-commit: 6d96cc123ce33cd74e799c5434440393ed022bb7
> change-id: 20260608-mips-fix-binutils-visibility-warning-71e531e65f78

applied to mips-next

Thomas.

-- 
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea.                                                [ RFC1925, 2.3 ]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-06-15 10:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-09  3:36 [PATCH] MIPS: lib: Remove '.hidden' for local symbols Nathan Chancellor
2026-06-15 10:27 ` Thomas Bogendoerfer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox