]> Git Repo - uclibc-ng.git/commit
linuxthread/arm: Unlock ldrex/strex varsion of testandset for __ARM_ARCH >= 7
authorVladimir Murzin <[email protected]>
Mon, 18 Jul 2022 11:57:24 +0000 (12:57 +0100)
committerWaldemar Brodkorb <[email protected]>
Wed, 20 Jul 2022 09:47:17 +0000 (11:47 +0200)
commit01961b12bc71d6eb4d9bda3632d73bb6764b8e85
tree621ddba67fecbb149e1b5186bbd9baab78986432
parenta13b4d8aabe9b525fa280f4a240e89d991d7f106
linuxthread/arm: Unlock ldrex/strex varsion of testandset for __ARM_ARCH >= 7

Thomas has repored failure building ARM 32-bit systems for ARMv8 cores

  CC libpthread/linuxthreads/mutex.os
/tmp/ccn8SFKU.s: Assembler messages:
/tmp/ccn8SFKU.s:162: Error: swp{b} use is obsoleted for ARMv8 and later
/tmp/ccn8SFKU.s:186: Error: swp{b} use is obsoleted for ARMv8 and later
/tmp/ccn8SFKU.s:203: Error: swp{b} use is obsoleted for ARMv8 and later
/tmp/ccn8SFKU.s:224: Error: swp{b} use is obsoleted for ARMv8 and later
make[1]: *** [Makerules:369: libpthread/linuxthreads/mutex.os] Error 1

This is due to libpthread/linuxthreads/sysdeps/arm/pt-machine.h which
uses the swp instruction that is not allowed on ARMv8.

All __ARM_ARCH >= 7 support ldrex/strex instructions, so unlock
testandset() varaint for them.

Reported-by: Thomas Petazzoni <[email protected]>
Signed-off-by: Vladimir Murzin <[email protected]>
libpthread/linuxthreads/sysdeps/arm/pt-machine.h
This page took 0.025707 seconds and 4 git commands to generate.