mirror of
https://sourceware.org/git/glibc.git
synced 2025-05-25 17:02:34 +03:00
Sparc memchr/memcmp/strncmp fixes from Il'ya Malakhov.
[BZ #17825] * sysdeps/sparc/sparc64/memchr.S: Fix signedness handling of length. * sysdeps/sparc/sparc64/memcmp.S: Likewise. * sysdeps/sparc/sparc64/strncmp.S: Likewise.
This commit is contained in:
parent
d1e44df1fa
commit
aa4980fc31
@ -1,3 +1,10 @@
|
|||||||
|
2015-04-17 Il'ya Malakhov <ilmalakhov@yandex.ru>
|
||||||
|
|
||||||
|
[BZ #17825]
|
||||||
|
* sysdeps/sparc/sparc64/memchr.S: Fix signedness handling of length.
|
||||||
|
* sysdeps/sparc/sparc64/memcmp.S: Likewise.
|
||||||
|
* sysdeps/sparc/sparc64/strncmp.S: Likewise.
|
||||||
|
|
||||||
2015-04-17 Roland McGrath <roland@hack.frob.com>
|
2015-04-17 Roland McGrath <roland@hack.frob.com>
|
||||||
|
|
||||||
Add preliminary port to Google Native Client on ARM.
|
Add preliminary port to Google Native Client on ARM.
|
||||||
|
@ -63,7 +63,8 @@ ENTRY(__memchr)
|
|||||||
be,pn %XCC, 12f /* CTI */
|
be,pn %XCC, 12f /* CTI */
|
||||||
#endif
|
#endif
|
||||||
sll %o1, 8, %g3 /* IEU0 Group */
|
sll %o1, 8, %g3 /* IEU0 Group */
|
||||||
add %o0, %o2, %o2 /* IEU1 */
|
addcc %o0, %o2, %o2 /* IEU1 */
|
||||||
|
movcs %XCC, -1, %o2 /* IEU0 Group */
|
||||||
|
|
||||||
sethi %hi(0x01010101), %g1 /* IEU0 Group */
|
sethi %hi(0x01010101), %g1 /* IEU0 Group */
|
||||||
or %g3, %o1, %g3 /* IEU1 */
|
or %g3, %o1, %g3 /* IEU1 */
|
||||||
|
@ -51,7 +51,7 @@ ENTRY(memcmp)
|
|||||||
2: mov %g1, %o3 /* IEU0 Group */
|
2: mov %g1, %o3 /* IEU0 Group */
|
||||||
subcc %o2, 8, %o2 /* IEU1 */
|
subcc %o2, 8, %o2 /* IEU1 */
|
||||||
|
|
||||||
bl,pn %XCC, 5f /* CTI */
|
bcs,pn %XCC, 5f /* CTI */
|
||||||
ldxa [%o0] ASI_PNF, %g1 /* Load Group */
|
ldxa [%o0] ASI_PNF, %g1 /* Load Group */
|
||||||
mov %g2, %o4 /* IEU0 */
|
mov %g2, %o4 /* IEU0 */
|
||||||
ldxa [%o0 + %o1] ASI_PNF, %g2 /* Load Group */
|
ldxa [%o0 + %o1] ASI_PNF, %g2 /* Load Group */
|
||||||
@ -125,7 +125,7 @@ ENTRY(memcmp)
|
|||||||
|
|
||||||
ldxa [%o0] ASI_PNF, %g5 /* Load */
|
ldxa [%o0] ASI_PNF, %g5 /* Load */
|
||||||
subcc %o2, 8, %o2 /* IEU1 Group */
|
subcc %o2, 8, %o2 /* IEU1 Group */
|
||||||
bl,pn %XCC, 6b /* CTI */
|
bcs,pn %XCC, 6b /* CTI */
|
||||||
or %o4, %o5, %o4 /* IEU0 */
|
or %o4, %o5, %o4 /* IEU0 */
|
||||||
|
|
||||||
cmp %o3, %o4 /* IEU1 Group */
|
cmp %o3, %o4 /* IEU1 Group */
|
||||||
|
@ -72,7 +72,7 @@ ENTRY(strncmp)
|
|||||||
|
|
||||||
add %o0, 8, %o0 /* IEU1 */
|
add %o0, 8, %o0 /* IEU1 */
|
||||||
2: subcc %o2, 8, %o2 /* IEU1 Group */
|
2: subcc %o2, 8, %o2 /* IEU1 Group */
|
||||||
bl,pn %XCC, 5f /* CTI */
|
bcs,pn %XCC, 5f /* CTI */
|
||||||
add %o1, 8, %o1 /* IEU0 */
|
add %o1, 8, %o1 /* IEU0 */
|
||||||
|
|
||||||
sub %g4, %g1, %g3 /* IEU0 Group */
|
sub %g4, %g1, %g3 /* IEU0 Group */
|
||||||
@ -310,7 +310,7 @@ ENTRY(strncmp)
|
|||||||
addcc %o0, 8, %o0 /* IEU1 */
|
addcc %o0, 8, %o0 /* IEU1 */
|
||||||
srlx %o4, %g6, %o5 /* IEU0 */
|
srlx %o4, %g6, %o5 /* IEU0 */
|
||||||
subcc %o2, 8, %o2 /* IEU1 Group */
|
subcc %o2, 8, %o2 /* IEU1 Group */
|
||||||
bl,pn %XCC, 5b /* CTI */
|
bcs,pn %XCC, 5b /* CTI */
|
||||||
|
|
||||||
or %o3, %o5, %o3 /* IEU0 */
|
or %o3, %o5, %o3 /* IEU0 */
|
||||||
cmp %g4, %o3 /* IEU1 Group */
|
cmp %g4, %o3 /* IEU1 Group */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user