aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/asmtest.S3
-rw-r--r--x86_64-asm.h3
2 files changed, 6 insertions, 0 deletions
diff --git a/tests/asmtest.S b/tests/asmtest.S
index dbc6c15..c19db06 100644
--- a/tests/asmtest.S
+++ b/tests/asmtest.S
@@ -535,6 +535,9 @@ cmpxchgw %ax, 0x1000
cmpxchgl %eax, 0x1000
invlpg 0x1000
cmpxchg8b 0x1002
+#ifdef __x86_64__
+cmpxchg16b (%rax)
+#endif
fcmovb %st(5), %st
fcmove %st(5), %st
diff --git a/x86_64-asm.h b/x86_64-asm.h
index 4db3268..675e7df 100644
--- a/x86_64-asm.h
+++ b/x86_64-asm.h
@@ -394,6 +394,9 @@ ALT(DEF_ASM_OP2(cmpxchgb, 0x0fb0, 0, OPC_MODRM | OPC_BWLX, OPT_REG, OPT_REG | OP
/* pentium */
DEF_ASM_OP1(cmpxchg8b, 0x0fc7, 1, OPC_MODRM, OPT_EA )
+ /* AMD 64 */
+ DEF_ASM_OP1(cmpxchg16b, 0x480fc7, 1, OPC_MODRM, OPT_EA )
+
/* pentium pro */
ALT(DEF_ASM_OP2(cmovo, 0x0f40, 0, OPC_MODRM | OPC_TEST | OPC_WLX, OPT_REGW | OPT_EA, OPT_REGW))