sparc: Fix sparc64 memmove length comparison (BZ 31266)

The small counts copy bytes comparsion should be unsigned (as the
memmove size argument).  It fixes string/tst-memmove-overflow on
sparcv9, where the input size triggers an invalid code path.

Checked on sparc64-linux-gnu and sparcv9-linux-gnu.
This commit is contained in:
Adhemerval Zanella 2024-01-18 10:52:18 -03:00
parent 369efd8177
commit 926a4bdbb5

View File

@ -38,7 +38,7 @@ ENTRY(memmove)
/*
* normal, copy forwards
*/
2: ble %XCC, .Ldbytecp
2: bleu %XCC, .Ldbytecp
andcc %o1, 3, %o5 /* is src word aligned */
bz,pn %icc, .Laldst
cmp %o5, 2 /* is src half-word aligned */