tinycc/lib
herman ten brugge 79a8229fb5 Add atomic functions for arm/arm64/riscv
Make code more compatible with gcc. Change
__atomic_store
__atomic_load
__atomic_exchange
__atomic_compare_exchange

Also add (include/stdatomic.h, lib/stdatomic.c):
atomic_thread_fence
atomic_signal_fence
atomic_is_lock_free

And gcc extensions (tcctok.h, tccgen.c, lib/stdatomic.c):
__atomic_fetch_nand
__atomic_and_fetch
__atomic_sub_fetch
__atomic_or_fetch
__atomic_xor_fetch
__atomic_and_fetch
__atomic_nand_fetch

Add new file lib/atomic.S with assembly code for __atomic_compare_exchange_n
for arm/arm64/riscv. Also update lib/Makefile.

Update testcode in 124_atomic_counter and 125_atomic_misc to test new functions.
Also update tests/tests2/Makefile to run tests on arm/arm64/riscv.
2022-10-16 18:51:56 +02:00
..
alloca-bt.S tcc/lib: reduce number of files 2021-08-03 22:49:18 +02:00
alloca.S tcc/lib: reduce number of files 2021-08-03 22:49:18 +02:00
armeabi.c OpenBSD: arm fix 2021-01-17 20:43:15 +01:00
armflush.c Use arm assembler in lib dir 2021-01-23 19:08:59 +01:00
atomic.S Add atomic functions for arm/arm64/riscv 2022-10-16 18:51:56 +02:00
bcheck.c tcc android-enabled (armeabi-v7a) 2022-07-24 09:51:32 +02:00
bt-dll.c Removed __bound_exit_dll from lib/bt-dll.c 2022-05-19 09:42:41 +02:00
bt-exe.c Add extra locking in bound checking code 2022-07-09 12:10:08 +02:00
bt-log.c rework leading underscores 2020-07-06 13:00:47 +02:00
dsohandle.c Define __dso_handle in libtcc1.a 2019-06-22 01:38:43 +02:00
fetch_and_add.S tcc/lib: reduce number of files 2021-08-03 22:49:18 +02:00
lib-arm64.c Fix conversions of subnormals to long double 2020-07-15 22:02:02 +02:00
libtcc1.c Added __faststorefence() MSVC intrinsic (required e.g. by sqlite3). 2021-07-04 13:32:55 +02:00
Makefile Add atomic functions for arm/arm64/riscv 2022-10-16 18:51:56 +02:00
stdatomic.c Add atomic functions for arm/arm64/riscv 2022-10-16 18:51:56 +02:00
tcov.c Fix tcov align and lock 2021-02-15 19:10:13 +01:00
va_list.c Struct va_arg fix 2020-09-17 08:42:28 +02:00