mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-30 22:43:12 +03:00
Fix Niagara-4 memcpy bug on 32-bit.
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: On 32-bit, clear upper 32-bits of the length value in %o2 since we use branch-on-register tests which consider the entire 64-bit register.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2012-10-06 David S. Miller <davem@davemloft.net>
|
||||||
|
|
||||||
|
* sysdeps/sparc/sparc64/multiarch/memcpy-niagara4.S: On 32-bit, clear
|
||||||
|
upper 32-bits of the length value in %o2 since we use branch-on-register
|
||||||
|
tests which consider the entire 64-bit register.
|
||||||
|
|
||||||
2012-10-06 H.J. Lu <hongjiu.lu@intel.com>
|
2012-10-06 H.J. Lu <hongjiu.lu@intel.com>
|
||||||
|
|
||||||
* string/test-strstr.c (check2): Add a test for page boundary.
|
* string/test-strstr.c (check2): Add a test for page boundary.
|
||||||
|
@ -64,6 +64,9 @@ ENTRY(__memcpy_niagara4)
|
|||||||
100: /* %o0=dst, %o1=src, %o2=len */
|
100: /* %o0=dst, %o1=src, %o2=len */
|
||||||
mov %o0, %o3
|
mov %o0, %o3
|
||||||
101:
|
101:
|
||||||
|
#ifndef __arch64__
|
||||||
|
srl %o2, 0, %o2
|
||||||
|
#endif
|
||||||
brz,pn %o2, .Lexit
|
brz,pn %o2, .Lexit
|
||||||
cmp %o2, 3
|
cmp %o2, 3
|
||||||
ble,pn %icc, .Ltiny
|
ble,pn %icc, .Ltiny
|
||||||
|
Reference in New Issue
Block a user