Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions include/arch/x86/atomic.h
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ static inline bool atomic_test_bit(unsigned int bit, volatile void *addr) {
static inline bool atomic_test_and_set_bit(unsigned int bit, volatile void *addr) {
bool status;

asm volatile("lock bts %[bit], %[addr];"
asm volatile("lock btsl %[bit], %[addr];"
"setc %[status];"
: [ status ] "=r"(status)
: [ bit ] "Ir"(bit), [ addr ] "m"(*(uint8_t *) addr)
Expand All @@ -71,7 +71,7 @@ static inline bool atomic_test_and_set_bit(unsigned int bit, volatile void *addr
static inline bool atomic_test_and_reset_bit(unsigned int bit, volatile void *addr) {
bool status;

asm volatile("lock btr %[bit], %[addr];"
asm volatile("lock btrl %[bit], %[addr];"
"setc %[status];"
: [ status ] "=r"(status)
: [ bit ] "Ir"(bit), [ addr ] "m"(*(uint8_t *) addr)
Expand Down