diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2018-05-09 10:39:49 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2019-01-03 18:38:15 -0200 |
commit | 0b13e25581afb4ce95373f18249b91c104280a13 (patch) | |
tree | 8ddaf3ba022a31225b13bc2edaa9eb26b74bf5da /sysdeps/posix/waitid.c | |
parent | 85c828a4626adda906f8844dc9c5a166c72d4f7d (diff) | |
download | glibc-0b13e25581afb4ce95373f18249b91c104280a13.zip glibc-0b13e25581afb4ce95373f18249b91c104280a13.tar.gz glibc-0b13e25581afb4ce95373f18249b91c104280a13.tar.bz2 |
i386: Remove bogus THREAD_ATOMIC_* macros
The x86 defines optimized THREAD_ATOMIC_* macros where reference always
the current thread instead of the one indicated by input 'descr' argument.
It work as long the input is the self thread pointer, however it generates
wrong code if the semantic is to set a bit atomicialy from another thread.
This is not an issue for current GLIBC usage, however the new cancellation
code expects that some synchronization code to atomically set bits from
different threads.
If some usage indeed proves to be a hotspot we can add an extra macro
with a more descriptive name (THREAD_ATOMIC_BIT_SET_SELF for instance)
where i386 might optimize it.
Checked on i686-linux-gnu.
* sysdeps/i686/nptl/tls.h (THREAD_ATOMIC_CMPXCHG_VAL,
THREAD_ATOMIC_AND, THREAD_ATOMIC_BIT_SET): Remove macros.
Diffstat (limited to 'sysdeps/posix/waitid.c')
0 files changed, 0 insertions, 0 deletions