sgx-lkl icon indicating copy to clipboard operation
sgx-lkl copied to clipboard

Replace atomic.h and __atomic usage with stdatomic.h

Open letmaik opened this issue 5 years ago • 0 comments

The following files include the internal musl header atomic.h:

  • src/enclave/enclave_event_channel.c
    • __atomic_fetch_add, __atomic_add_fetch, __atomic_load_n, __atomic_compare_exchange_n
    • Note that no a_* functions are used, so the header include is redundant.
  • src/include/enclave/lthread.h
    • a_crash, a_spin
  • src/include/enclave/ticketlock.h
    • a_fetch_add_uint, a_spin, a_barrier, a_cas_64
  • src/sched/futex.c
    • a_barrier, a_fetch_add

We should eventually switch to the C11 stdatomic.h header to avoid the dependency on internal musl headers and compiler-specific __atomic builtins.

letmaik avatar Jul 17 '20 12:07 letmaik