diff options
author | Joseph Myers <joseph@codesourcery.com> | 2016-10-25 15:54:16 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2016-10-25 15:54:16 +0000 |
commit | 78b7adbaea643f2f213bb113e3ec933416a769a8 (patch) | |
tree | 915e40738f7ff5f1933c0d32741cbeb3972e4254 /sysdeps/unix/sysv/linux/alpha/shmctl.c | |
parent | 20973cf442dfbf94dc5b92cd78c1b91136db5266 (diff) | |
download | glibc-78b7adbaea643f2f213bb113e3ec933416a769a8.tar.gz glibc-78b7adbaea643f2f213bb113e3ec933416a769a8.tar.xz glibc-78b7adbaea643f2f213bb113e3ec933416a769a8.zip |
Fix cmpli usage in power6 memset.
Building glibc for powerpc64 with recent (2.27.51.20161012) binutils, with multi-arch enabled, I get the error: ../sysdeps/powerpc/powerpc64/power6/memset.S: Assembler messages: ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (5 is not between 0 and 1) ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: operand out of range (128 is not between 0 and 31) ../sysdeps/powerpc/powerpc64/power6/memset.S:254: Error: missing operand Indeed, cmpli is documented as a four-operand instruction, and looking at nearby code it seems likely cmpldi was intended. This patch fixes this powerpc64 code accordingly, and makes a corresponding change to the powerpc32 code. Tested for powerpc, powerpc64 and powerpc64le by Tulio Magno Quites Machado Filho * sysdeps/powerpc/powerpc32/power6/memset.S (memset): Use cmplwi instead of cmpli. * sysdeps/powerpc/powerpc64/power6/memset.S (memset): Use cmpldi instead of cmpli.
Diffstat (limited to 'sysdeps/unix/sysv/linux/alpha/shmctl.c')
0 files changed, 0 insertions, 0 deletions