gcc/ * builtins.c (fold_builtin_atomic_always_lock_free): Make "lock-free" conditional on existance of a fast atomic load. * optabs-query.c (can_atomic_load_p): New function. * optabs-query.h (can_atomic_load_p): Declare it. * optabs.c (expand_atomic_exchange): Always delegate to libatomic if no fast atomic load is available for the particular size of access. (expand_atomic_compare_and_swap): Likewise. (expand_atomic_load): Likewise. (expand_atomic_store): Likewise. (expand_atomic_fetch_op): Likewise. * testsuite/lib/target-supports.exp (check_effective_target_sync_int_128): Remove x86 because it provides no fast atomic load. (check_effective_target_sync_int_128_runtime): Likewise. libatomic/ * acinclude.m4: Add #define FAST_ATOMIC_LDST_*. * auto-config.h.in: Regenerate. * config/x86/host-config.h (FAST_ATOMIC_LDST_16): Define to 0. (atomic_compare_exchange_n): New. * glfree.c (EXACT, LARGER): Change condition and add comments. From-SVN: r245098
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
config | Loading commit data... | |
testsuite | Loading commit data... | |
.gitignore | Loading commit data... | |
ChangeLog | Loading commit data... | |
Makefile.am | Loading commit data... | |
Makefile.in | Loading commit data... | |
acinclude.m4 | Loading commit data... | |
aclocal.m4 | Loading commit data... | |
auto-config.h.in | Loading commit data... | |
cas_n.c | Loading commit data... | |
configure | Loading commit data... | |
configure.ac | Loading commit data... | |
configure.tgt | Loading commit data... | |
exch_n.c | Loading commit data... | |
fadd_n.c | Loading commit data... | |
fand_n.c | Loading commit data... | |
fence.c | Loading commit data... | |
fenv.c | Loading commit data... | |
fior_n.c | Loading commit data... | |
flag.c | Loading commit data... | |
fnand_n.c | Loading commit data... | |
fop_n.c | Loading commit data... | |
fsub_n.c | Loading commit data... | |
fxor_n.c | Loading commit data... | |
gcas.c | Loading commit data... | |
gexch.c | Loading commit data... | |
glfree.c | Loading commit data... | |
gload.c | Loading commit data... | |
gstore.c | Loading commit data... | |
host-config.h | Loading commit data... | |
init.c | Loading commit data... | |
libatomic.map | Loading commit data... | |
libatomic_i.h | Loading commit data... | |
load_n.c | Loading commit data... | |
store_n.c | Loading commit data... | |
tas_n.c | Loading commit data... |