From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7829) id BA52F394BE17; Tue, 7 Jun 2022 18:36:00 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BA52F394BE17 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Matheus Castanho To: glibc-cvs@sourceware.org Subject: [glibc/release/2.34/master] powerpc: Fix VSX register number on __strncpy_power9 [BZ #29197] X-Act-Checkin: glibc X-Git-Author: Matheus Castanho X-Git-Refname: refs/heads/release/2.34/master X-Git-Oldrev: 9947f2df19a6c5b5706ed3b002199dbb9fef17b1 X-Git-Newrev: 4c92a1041257c0155c6aa7a182fe5f78e477b0e6 Message-Id: <20220607183600.BA52F394BE17@sourceware.org> Date: Tue, 7 Jun 2022 18:36:00 +0000 (GMT) X-BeenThere: glibc-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Glibc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Jun 2022 18:36:00 -0000 https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4c92a1041257c0155c6aa7a182fe5f78e477b0e6 commit 4c92a1041257c0155c6aa7a182fe5f78e477b0e6 Author: Matheus Castanho Date: Tue Jun 7 10:27:26 2022 -0300 powerpc: Fix VSX register number on __strncpy_power9 [BZ #29197] __strncpy_power9 initializes VR 18 with zeroes to be used throughout the code, including when zero-padding the destination string. However, the v18 reference was mistakenly being used for stxv and stxvl, which take a VSX vector as operand. The code ended up using the uninitialized VSR 18 register by mistake. Both occurrences have been changed to use the proper VSX number for VR 18 (i.e. VSR 50). Tested on powerpc, powerpc64 and powerpc64le. Signed-off-by: Kewen Lin (cherry picked from commit 0218463dd8265ed937622f88ac68c7d984fe0cfc) Diff: --- sysdeps/powerpc/powerpc64/le/power9/strncpy.S | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sysdeps/powerpc/powerpc64/le/power9/strncpy.S b/sysdeps/powerpc/powerpc64/le/power9/strncpy.S index 291941c1e5..5421525ace 100644 --- a/sysdeps/powerpc/powerpc64/le/power9/strncpy.S +++ b/sysdeps/powerpc/powerpc64/le/power9/strncpy.S @@ -352,7 +352,7 @@ L(zero_padding_loop): cmpldi cr6,r5,16 /* Check if length was reached. */ ble cr6,L(zero_padding_end) - stxv v18,0(r11) + stxv 32+v18,0(r11) addi r11,r11,16 addi r5,r5,-16 @@ -360,7 +360,7 @@ L(zero_padding_loop): L(zero_padding_end): sldi r10,r5,56 /* stxvl wants size in top 8 bits */ - stxvl v18,r11,r10 /* Partial store */ + stxvl 32+v18,r11,r10 /* Partial store */ blr .align 4