sparc: Fix broken memset for sparc32 [BZ #31068]

Message ID 20231115122943.22799-1-ludwig.rydberg@gaisler.com
State Committed
Commit 578190b7e43305141512dee777e4a3b3e8159393
Headers
Series sparc: Fix broken memset for sparc32 [BZ #31068] |

Checks

Context Check Description
redhat-pt-bot/TryBot-apply_patch success Patch applied to master at the time it was sent
redhat-pt-bot/TryBot-32bit success Build for i686
linaro-tcwg-bot/tcwg_glibc_build--master-arm warning Patch is already merged
linaro-tcwg-bot/tcwg_glibc_check--master-arm warning Patch is already merged
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 warning Patch is already merged
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 warning Patch is already merged

Commit Message

Ludwig Rydberg Nov. 15, 2023, 12:29 p.m. UTC
  From: Andreas Larsson <andreas@gaisler.com>

Fixes commit a61933fe27df ("sparc: Remove bzero optimization") that
after moving code jumped to the wrong label 4.

Verfied by successfully running string/test-memset on sparc32.

Signed-off-by: Andreas Larsson <andreas@gaisler.com>
Signed-off-by: Ludwig Rydberg <ludwig.rydberg@gaisler.com>
---
 sysdeps/sparc/sparc32/memset.S | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)


base-commit: 8f22e36238c94e2a89da624e03c224895f9dd691
  

Comments

Adhemerval Zanella Netto Nov. 15, 2023, 1:26 p.m. UTC | #1
On 15/11/23 09:29, Ludwig Rydberg wrote:
> From: Andreas Larsson <andreas@gaisler.com>
> 
> Fixes commit a61933fe27df ("sparc: Remove bzero optimization") that
> after moving code jumped to the wrong label 4.
> 
> Verfied by successfully running string/test-memset on sparc32.
> 
> Signed-off-by: Andreas Larsson <andreas@gaisler.com>
> Signed-off-by: Ludwig Rydberg <ludwig.rydberg@gaisler.com>

LGTM, thanks.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>

> ---
>  sysdeps/sparc/sparc32/memset.S | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/sysdeps/sparc/sparc32/memset.S b/sysdeps/sparc/sparc32/memset.S
> index ca29ff568501..1dc3a640e874 100644
> --- a/sysdeps/sparc/sparc32/memset.S
> +++ b/sysdeps/sparc/sparc32/memset.S
> @@ -55,7 +55,7 @@ ENTRY(memset)
>  
>  	andcc		%o0, 3, %o2
>  	bne		3f
> -4:	 andcc		%o0, 4, %g0
> +5:	 andcc		%o0, 4, %g0
>  
>  	be		2f
>  	 mov		%g3, %g2
> @@ -139,7 +139,7 @@ ENTRY(memset)
>  	stb		%g3, [%o0 + 0x02]
>  2:	sub		%o2, 4, %o2
>  	add		%o1, %o2, %o1
> -	b		4b
> +	b		5b
>  	 sub		%o0, %o2, %o0
>  END(memset)
>  libc_hidden_builtin_def (memset)
> 
> base-commit: 8f22e36238c94e2a89da624e03c224895f9dd691
  

Patch

diff --git a/sysdeps/sparc/sparc32/memset.S b/sysdeps/sparc/sparc32/memset.S
index ca29ff568501..1dc3a640e874 100644
--- a/sysdeps/sparc/sparc32/memset.S
+++ b/sysdeps/sparc/sparc32/memset.S
@@ -55,7 +55,7 @@  ENTRY(memset)
 
 	andcc		%o0, 3, %o2
 	bne		3f
-4:	 andcc		%o0, 4, %g0
+5:	 andcc		%o0, 4, %g0
 
 	be		2f
 	 mov		%g3, %g2
@@ -139,7 +139,7 @@  ENTRY(memset)
 	stb		%g3, [%o0 + 0x02]
 2:	sub		%o2, 4, %o2
 	add		%o1, %o2, %o1
-	b		4b
+	b		5b
 	 sub		%o0, %o2, %o0
 END(memset)
 libc_hidden_builtin_def (memset)