b35b8125 | 19-May-2023 |
Richard Henderson <richard.henderson@linaro.org> |
qemu/atomic128: Improve cmpxchg fallback for atomic16_set
Use __sync_bool_compare_and_swap_16 to control the loop, rather than a separate comparison.
Reviewed-by: Alex Bennée <alex.bennee@linaro.or
qemu/atomic128: Improve cmpxchg fallback for atomic16_set
Use __sync_bool_compare_and_swap_16 to control the loop, rather than a separate comparison.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
show more ...
|
21c38f31 | 19-May-2023 |
Richard Henderson <richard.henderson@linaro.org> |
qemu/atomic128: Split atomic16_read
Create both atomic16_read_ro and atomic16_read_rw. Previously we pretended that we had atomic16_read in system mode, because we "know" that all ram is always writ
qemu/atomic128: Split atomic16_read
Create both atomic16_read_ro and atomic16_read_rw. Previously we pretended that we had atomic16_read in system mode, because we "know" that all ram is always writable to the host. Now, expose read-only and read-write versions all of the time.
For aarch64, do not fall back to __atomic_read_16 even if supported by the compiler, to work around a clang bug.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
show more ...
|
333c813b | 18-May-2023 |
Richard Henderson <richard.henderson@linaro.org> |
include/qemu: Move CONFIG_ATOMIC128_OPT handling to atomic128.h
Not only the routines in ldst_atomicity.c.inc need markup, but also the ones in the headers.
Reviewed-by: Alex Bennée <alex.bennee@li
include/qemu: Move CONFIG_ATOMIC128_OPT handling to atomic128.h
Not only the routines in ldst_atomicity.c.inc need markup, but also the ones in the headers.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
show more ...
|