History log of /seL4-camkes-master/projects/musllibc/arch/x86_64/atomic_arch.h
Revision Date Author Comments
# 28fa19b9 04-Aug-2017 Adrian Danis <Adrian.Danis@data61.csiro.au>

Fix up x86_64_sel4 arch after merge


# 5c3412d2 29-Mar-2016 Rich Felker <dalias@aerifal.cx>

fix regression disabling use of pause instruction for x86 a_spin

commits e24984efd5c6ac5ea8e6cb6cd914fa8435d458bc and
16b55298dc4b6a54d287d7494e04542667ef8861 inadvertently disabled the
a_spin implementations for i386, x86_64, and x32 by defining a macro
named a_pause instead of a_spin. this should not have caused any
functional regression, but it inhibited cpu relaxation while spinning
for locks.

bug reported by George Kulakowski.


# 16b55298 21-Jan-2016 Rich Felker <dalias@aerifal.cx>

clean up x86_64 (and x32) atomics for new atomics framework

this commit mostly makes consistent things like spacing, function
ordering in atomic_arch.h, argument names, use of volatile, etc.
a_ctz_l was also removed from x86_64 since atomic.h provides it
automatically using a_ctz_64.


# 1315596b 21-Jan-2016 Rich Felker <dalias@aerifal.cx>

refactor internal atomic.h

rather than having each arch provide its own atomic.h, there is a new
shared atomic.h in src/internal which pulls arch-specific definitions
from arc/$(ARCH)/atomic_arch.h. the latter can be extremely minimal,
defining only a_cas or new ll/sc type primitives which the shared
atomic.h will use to construct everything else.

this commit avoids making heavy changes to the individual archs'
atomic implementations. definitions which are identical or
near-identical to what the new shared atomic.h would produce have been
removed, but otherwise the changes made are just hooking up the
arch-specific files to the new infrastructure. major changes to take
advantage of the new system will come in subsequent commits.