summaryrefslogtreecommitdiff
path: root/compiler/utils/x86/assembler_x86.h
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/utils/x86/assembler_x86.h')
-rw-r--r--compiler/utils/x86/assembler_x86.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/compiler/utils/x86/assembler_x86.h b/compiler/utils/x86/assembler_x86.h
index 522d57a63d..2fe3b7bec5 100644
--- a/compiler/utils/x86/assembler_x86.h
+++ b/compiler/utils/x86/assembler_x86.h
@@ -795,6 +795,8 @@ class X86Assembler final : public Assembler {
void rep_movsw();
X86Assembler* lock();
+ void cmpxchgb(const Address& address, ByteRegister reg);
+ void cmpxchgw(const Address& address, Register reg);
void cmpxchgl(const Address& address, Register reg);
void cmpxchg8b(const Address& address);
@@ -812,6 +814,14 @@ class X86Assembler final : public Assembler {
void LoadLongConstant(XmmRegister dst, int64_t value);
void LoadDoubleConstant(XmmRegister dst, double value);
+ void LockCmpxchgb(const Address& address, ByteRegister reg) {
+ lock()->cmpxchgb(address, reg);
+ }
+
+ void LockCmpxchgw(const Address& address, Register reg) {
+ lock()->cmpxchgw(address, reg);
+ }
+
void LockCmpxchgl(const Address& address, Register reg) {
lock()->cmpxchgl(address, reg);
}