[llvm] r369367 - [MCA][X86] Add tests for LOCK variants of standard X86 arithmetic ops
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 20 04:13:20 PDT 2019
Modified: llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s?rev=369367&r1=369366&r2=369367&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s Tue Aug 20 04:13:20 2019
@@ -4,115 +4,152 @@
adcb $0, %al
adcb $0, %dil
adcb $0, (%rax)
+lock adcb $0, (%rax)
adcb $7, %al
adcb $7, %dil
adcb $7, (%rax)
+lock adcb $7, (%rax)
adcb %sil, %dil
adcb %sil, (%rax)
+lock adcb %sil, (%rax)
adcb (%rax), %dil
adcw $0, %ax
adcw $0, %di
adcw $0, (%rax)
+lock adcw $0, (%rax)
adcw $511, %ax
adcw $511, %di
adcw $511, (%rax)
+lock adcw $511, (%rax)
adcw $7, %di
adcw $7, (%rax)
+lock adcw $7, (%rax)
adcw %si, %di
adcw %si, (%rax)
+lock adcw %si, (%rax)
adcw (%rax), %di
adcl $0, %eax
adcl $0, %edi
adcl $0, (%rax)
+lock adcl $0, (%rax)
adcl $665536, %eax
adcl $665536, %edi
adcl $665536, (%rax)
+lock adcl $665536, (%rax)
adcl $7, %edi
adcl $7, (%rax)
+lock adcl $7, (%rax)
adcl %esi, %edi
adcl %esi, (%rax)
+lock adcl %esi, (%rax)
adcl (%rax), %edi
adcq $0, %rax
adcq $0, %rdi
adcq $0, (%rax)
+lock adcq $0, (%rax)
adcq $665536, %rax
adcq $665536, %rdi
adcq $665536, (%rax)
+lock adcq $665536, (%rax)
adcq $7, %rdi
adcq $7, (%rax)
+lock adcq $7, (%rax)
adcq %rsi, %rdi
adcq %rsi, (%rax)
+lock adcq %rsi, (%rax)
adcq (%rax), %rdi
addb $7, %al
addb $7, %dil
addb $7, (%rax)
+lock addb $7, (%rax)
addb %sil, %dil
addb %sil, (%rax)
+lock addb %sil, (%rax)
addb (%rax), %dil
addw $511, %ax
addw $511, %di
addw $511, (%rax)
+lock addw $511, (%rax)
addw $7, %di
addw $7, (%rax)
+lock addw $7, (%rax)
addw %si, %di
addw %si, (%rax)
+lock addw %si, (%rax)
addw (%rax), %di
addl $665536, %eax
addl $665536, %edi
addl $665536, (%rax)
+lock addl $665536, (%rax)
addl $7, %edi
addl $7, (%rax)
+lock addl $7, (%rax)
addl %esi, %edi
addl %esi, (%rax)
+lock addl %esi, (%rax)
addl (%rax), %edi
addq $665536, %rax
addq $665536, %rdi
addq $665536, (%rax)
+lock addq $665536, (%rax)
addq $7, %rdi
addq $7, (%rax)
+lock addq $7, (%rax)
addq %rsi, %rdi
addq %rsi, (%rax)
+lock addq %rsi, (%rax)
addq (%rax), %rdi
andb $7, %al
andb $7, %dil
andb $7, (%rax)
+lock andb $7, (%rax)
andb %sil, %dil
andb %sil, (%rax)
+lock andb %sil, (%rax)
andb (%rax), %dil
andw $511, %ax
andw $511, %di
andw $511, (%rax)
+lock andw $511, (%rax)
andw $7, %di
andw $7, (%rax)
+lock andw $7, (%rax)
andw %si, %di
andw %si, (%rax)
+lock andw %si, (%rax)
andw (%rax), %di
andl $665536, %eax
andl $665536, %edi
andl $665536, (%rax)
+lock andl $665536, (%rax)
andl $7, %edi
andl $7, (%rax)
+lock andl $7, (%rax)
andl %esi, %edi
andl %esi, (%rax)
+lock andl %esi, (%rax)
andl (%rax), %edi
andq $665536, %rax
andq $665536, %rdi
andq $665536, (%rax)
+lock andq $665536, (%rax)
andq $7, %rdi
andq $7, (%rax)
+lock andq $7, (%rax)
andq %rsi, %rdi
andq %rsi, (%rax)
+lock andq %rsi, (%rax)
andq (%rax), %rdi
bsfw %si, %di
@@ -141,6 +178,9 @@ btw %si, (%rax)
btcw %si, (%rax)
btrw %si, (%rax)
btsw %si, (%rax)
+lock btcw %si, (%rax)
+lock btrw %si, (%rax)
+lock btsw %si, (%rax)
btw $7, %di
btcw $7, %di
btrw $7, %di
@@ -149,6 +189,9 @@ btw $7, (%rax)
btcw $7, (%rax)
btrw $7, (%rax)
btsw $7, (%rax)
+lock btcw $7, (%rax)
+lock btrw $7, (%rax)
+lock btsw $7, (%rax)
btl %esi, %edi
btcl %esi, %edi
@@ -158,6 +201,9 @@ btl %esi, (%rax)
btcl %esi, (%rax)
btrl %esi, (%rax)
btsl %esi, (%rax)
+lock btcl %esi, (%rax)
+lock btrl %esi, (%rax)
+lock btsl %esi, (%rax)
btl $7, %edi
btcl $7, %edi
btrl $7, %edi
@@ -166,6 +212,9 @@ btl $7, (%rax)
btcl $7, (%rax)
btrl $7, (%rax)
btsl $7, (%rax)
+lock btcl $7, (%rax)
+lock btrl $7, (%rax)
+lock btsl $7, (%rax)
btq %rsi, %rdi
btcq %rsi, %rdi
@@ -175,6 +224,9 @@ btq %rsi, (%rax)
btcq %rsi, (%rax)
btrq %rsi, (%rax)
btsq %rsi, (%rax)
+lock btcq %rsi, (%rax)
+lock btrq %rsi, (%rax)
+lock btsq %rsi, (%rax)
btq $7, %rdi
btcq $7, %rdi
btrq $7, %rdi
@@ -183,6 +235,9 @@ btq $7, (%rax)
btcq $7, (%rax)
btrq $7, (%rax)
btsq $7, (%rax)
+lock btcq $7, (%rax)
+lock btrq $7, (%rax)
+lock btsq $7, (%rax)
cbw
cwde
@@ -254,12 +309,16 @@ cpuid
decb %dil
decb (%rax)
+lock decb (%rax)
decw %di
decw (%rax)
+lock decw (%rax)
decl %edi
decl (%rax)
+lock decl (%rax)
decq %rdi
decq (%rax)
+lock decq (%rax)
divb %dil
divb (%rax)
@@ -320,12 +379,16 @@ inl %dx, %eax
incb %dil
incb (%rax)
+lock incb (%rax)
incw %di
incw (%rax)
+lock incw (%rax)
incl %edi
incl (%rax)
+lock incl (%rax)
incq %rdi
incq (%rax)
+lock incq (%rax)
insb
insw
@@ -386,12 +449,16 @@ mulq (%rax)
negb %dil
negb (%r8)
+lock negb (%r8)
negw %si
negw (%r9)
+lock negw (%r9)
negl %edx
negl (%rax)
+lock negl (%rax)
negq %rcx
negq (%r10)
+lock negq (%r10)
nop
nopw %di
@@ -403,45 +470,60 @@ nopq (%r9)
notb %dil
notb (%r8)
+lock notb (%r8)
notw %si
notw (%r9)
+lock notw (%r9)
notl %edx
notl (%rax)
+lock notl (%rax)
notq %rcx
notq (%r10)
+lock notq (%r10)
orb $7, %al
orb $7, %dil
orb $7, (%rax)
+lock orb $7, (%rax)
orb %sil, %dil
orb %sil, (%rax)
+lock orb %sil, (%rax)
orb (%rax), %dil
orw $511, %ax
orw $511, %di
orw $511, (%rax)
+lock orw $511, (%rax)
orw $7, %di
orw $7, (%rax)
+lock orw $7, (%rax)
orw %si, %di
orw %si, (%rax)
+lock orw %si, (%rax)
orw (%rax), %di
orl $665536, %eax
orl $665536, %edi
orl $665536, (%rax)
+lock orl $665536, (%rax)
orl $7, %edi
orl $7, (%rax)
+lock orl $7, (%rax)
orl %esi, %edi
orl %esi, (%rax)
+lock orl %esi, (%rax)
orl (%rax), %edi
orq $665536, %rax
orq $665536, %rdi
orq $665536, (%rax)
+lock orq $665536, (%rax)
orq $7, %rdi
orq $7, (%rax)
+lock orq $7, (%rax)
orq %rsi, %rdi
orq %rsi, (%rax)
+lock orq %rsi, (%rax)
orq (%rax), %rdi
outb %al, $7
@@ -647,47 +729,62 @@ shrq %cl, (%rax)
sbbb $0, %al
sbbb $0, %dil
sbbb $0, (%rax)
+lock sbbb $0, (%rax)
sbbb $7, %al
sbbb $7, %dil
sbbb $7, (%rax)
+lock sbbb $7, (%rax)
sbbb %sil, %dil
sbbb %sil, (%rax)
+lock sbbb %sil, (%rax)
sbbb (%rax), %dil
sbbw $0, %ax
sbbw $0, %di
sbbw $0, (%rax)
+lock sbbw $0, (%rax)
sbbw $511, %ax
sbbw $511, %di
sbbw $511, (%rax)
+lock sbbw $511, (%rax)
sbbw $7, %di
sbbw $7, (%rax)
+lock sbbw $7, (%rax)
sbbw %si, %di
sbbw %si, (%rax)
+lock sbbw %si, (%rax)
sbbw (%rax), %di
sbbl $0, %eax
sbbl $0, %edi
sbbl $0, (%rax)
+lock sbbl $0, (%rax)
sbbl $665536, %eax
sbbl $665536, %edi
sbbl $665536, (%rax)
+lock sbbl $665536, (%rax)
sbbl $7, %edi
sbbl $7, (%rax)
+lock sbbl $7, (%rax)
sbbl %esi, %edi
sbbl %esi, (%rax)
+lock sbbl %esi, (%rax)
sbbl (%rax), %edi
sbbq $0, %rax
sbbq $0, %rdi
sbbq $0, (%rax)
+lock sbbq $0, (%rax)
sbbq $665536, %rax
sbbq $665536, %rdi
sbbq $665536, (%rax)
+lock sbbq $665536, (%rax)
sbbq $7, %rdi
sbbq $7, (%rax)
+lock sbbq $7, (%rax)
sbbq %rsi, %rdi
sbbq %rsi, (%rax)
+lock sbbq %rsi, (%rax)
sbbq (%rax), %rdi
scasb
@@ -766,35 +863,46 @@ stosq
subb $7, %al
subb $7, %dil
subb $7, (%rax)
+lock subb $7, (%rax)
subb %sil, %dil
subb %sil, (%rax)
+lock subb %sil, (%rax)
subb (%rax), %dil
subw $511, %ax
subw $511, %di
subw $511, (%rax)
+lock subw $511, (%rax)
subw $7, %di
subw $7, (%rax)
+lock subw $7, (%rax)
subw %si, %di
subw %si, (%rax)
+lock subw %si, (%rax)
subw (%rax), %di
subl $665536, %eax
subl $665536, %edi
subl $665536, (%rax)
+lock subl $665536, (%rax)
subl $7, %edi
subl $7, (%rax)
+lock subl $7, (%rax)
subl %esi, %edi
subl %esi, (%rax)
+lock subl %esi, (%rax)
subl (%rax), %edi
subq $665536, %rax
subq $665536, %rdi
subq $665536, (%rax)
+lock subq $665536, (%rax)
subq $7, %rdi
subq $7, (%rax)
+lock subq $7, (%rax)
subq %rsi, %rdi
subq %rsi, (%rax)
+lock subq %rsi, (%rax)
subq (%rax), %rdi
testb $7, %al
@@ -833,65 +941,84 @@ wrmsr
xaddb %bl, %cl
xaddb %bl, (%rcx)
+lock xaddb %bl, (%rcx)
xaddw %bx, %cx
xaddw %ax, (%rbx)
+lock xaddw %ax, (%rbx)
xaddl %ebx, %ecx
xaddl %eax, (%rbx)
+lock xaddl %eax, (%rbx)
xaddq %rbx, %rcx
xaddq %rax, (%rbx)
+lock xaddq %rax, (%rbx)
xchgb %bl, %cl
xchgb %bl, (%rbx)
+lock xchgb %bl, (%rbx)
xchgw %ax, %bx
xchgw %bx, %cx
xchgw %ax, (%rbx)
+lock xchgw %ax, (%rbx)
xchgl %eax, %ebx
xchgl %ebx, %ecx
xchgl %eax, (%rbx)
+lock xchgl %eax, (%rbx)
xchgq %rax, %rbx
xchgq %rbx, %rcx
xchgq %rax, (%rbx)
+lock xchgq %rax, (%rbx)
xlatb
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
+lock xorb $7, (%rax)
xorb %sil, %dil
xorb %sil, (%rax)
+lock xorb %sil, (%rax)
xorb (%rax), %dil
xorw $511, %ax
xorw $511, %di
xorw $511, (%rax)
+lock xorw $511, (%rax)
xorw $7, %di
xorw $7, (%rax)
+lock xorw $7, (%rax)
xorw %si, %di
xorw %si, (%rax)
+lock xorw %si, (%rax)
xorw (%rax), %di
xorl $665536, %eax
xorl $665536, %edi
xorl $665536, (%rax)
+lock xorl $665536, (%rax)
xorl $7, %edi
xorl $7, (%rax)
+lock xorl $7, (%rax)
xorl %esi, %edi
xorl %esi, (%rax)
+lock xorl %esi, (%rax)
xorl (%rax), %edi
xorq $665536, %rax
xorq $665536, %rdi
xorq $665536, (%rax)
+lock xorq $665536, (%rax)
xorq $7, %rdi
xorq $7, (%rax)
+lock xorq $7, (%rax)
xorq %rsi, %rdi
xorq %rsi, (%rax)
+lock xorq %rsi, (%rax)
xorq (%rax), %rdi
# CHECK: Instruction Info:
@@ -906,104 +1033,141 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 2 0.50 adcb $0, %al
# CHECK-NEXT: 1 1 0.50 adcb $0, %dil
# CHECK-NEXT: 6 8 1.00 * * adcb $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcb $0, (%rax)
# CHECK-NEXT: 2 2 0.50 adcb $7, %al
# CHECK-NEXT: 1 1 0.50 adcb $7, %dil
# CHECK-NEXT: 6 8 1.00 * * adcb $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcb $7, (%rax)
# CHECK-NEXT: 1 1 0.50 adcb %sil, %dil
# CHECK-NEXT: 6 8 1.00 * * adcb %sil, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * adcb (%rax), %dil
# CHECK-NEXT: 1 1 0.50 adcw $0, %ax
# CHECK-NEXT: 1 1 0.50 adcw $0, %di
# CHECK-NEXT: 6 8 1.00 * * adcw $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcw $0, (%rax)
# CHECK-NEXT: 2 2 0.50 adcw $511, %ax
# CHECK-NEXT: 1 1 0.50 adcw $511, %di
# CHECK-NEXT: 6 8 1.00 * * adcw $511, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcw $511, (%rax)
# CHECK-NEXT: 1 1 0.50 adcw $7, %di
# CHECK-NEXT: 6 8 1.00 * * adcw $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcw $7, (%rax)
# CHECK-NEXT: 1 1 0.50 adcw %si, %di
# CHECK-NEXT: 6 8 1.00 * * adcw %si, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * adcw (%rax), %di
# CHECK-NEXT: 1 1 0.50 adcl $0, %eax
# CHECK-NEXT: 1 1 0.50 adcl $0, %edi
# CHECK-NEXT: 6 8 1.00 * * adcl $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcl $0, (%rax)
# CHECK-NEXT: 2 2 0.50 adcl $665536, %eax
# CHECK-NEXT: 1 1 0.50 adcl $665536, %edi
# CHECK-NEXT: 6 8 1.00 * * adcl $665536, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcl $665536, (%rax)
# CHECK-NEXT: 1 1 0.50 adcl $7, %edi
# CHECK-NEXT: 6 8 1.00 * * adcl $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcl $7, (%rax)
# CHECK-NEXT: 1 1 0.50 adcl %esi, %edi
# CHECK-NEXT: 6 8 1.00 * * adcl %esi, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * adcl (%rax), %edi
# CHECK-NEXT: 1 1 0.50 adcq $0, %rax
# CHECK-NEXT: 1 1 0.50 adcq $0, %rdi
# CHECK-NEXT: 6 8 1.00 * * adcq $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcq $0, (%rax)
# CHECK-NEXT: 2 2 0.50 adcq $665536, %rax
# CHECK-NEXT: 1 1 0.50 adcq $665536, %rdi
# CHECK-NEXT: 6 8 1.00 * * adcq $665536, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcq $665536, (%rax)
# CHECK-NEXT: 1 1 0.50 adcq $7, %rdi
# CHECK-NEXT: 6 8 1.00 * * adcq $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcq $7, (%rax)
# CHECK-NEXT: 1 1 0.50 adcq %rsi, %rdi
# CHECK-NEXT: 6 8 1.00 * * adcq %rsi, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock adcq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * adcq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 addb $7, %al
# CHECK-NEXT: 1 1 0.25 addb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * addb $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addb %sil, %dil
# CHECK-NEXT: 3 7 1.00 * * addb %sil, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * addb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 addw $511, %ax
# CHECK-NEXT: 1 1 0.25 addw $511, %di
# CHECK-NEXT: 3 7 1.00 * * addw $511, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 addw $7, %di
# CHECK-NEXT: 3 7 1.00 * * addw $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addw %si, %di
# CHECK-NEXT: 3 7 1.00 * * addw %si, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * addw (%rax), %di
# CHECK-NEXT: 1 1 0.25 addl $665536, %eax
# CHECK-NEXT: 1 1 0.25 addl $665536, %edi
# CHECK-NEXT: 3 7 1.00 * * addl $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addl $7, %edi
# CHECK-NEXT: 3 7 1.00 * * addl $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addl %esi, %edi
# CHECK-NEXT: 3 7 1.00 * * addl %esi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * addl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 addq $665536, %rax
# CHECK-NEXT: 1 1 0.25 addq $665536, %rdi
# CHECK-NEXT: 3 7 1.00 * * addq $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addq $7, %rdi
# CHECK-NEXT: 3 7 1.00 * * addq $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * addq %rsi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock addq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * addq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 andb $7, %al
# CHECK-NEXT: 1 1 0.25 andb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * andb $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andb %sil, %dil
# CHECK-NEXT: 3 7 1.00 * * andb %sil, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * andb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 andw $511, %ax
# CHECK-NEXT: 1 1 0.25 andw $511, %di
# CHECK-NEXT: 3 7 1.00 * * andw $511, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 andw $7, %di
# CHECK-NEXT: 3 7 1.00 * * andw $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andw %si, %di
# CHECK-NEXT: 3 7 1.00 * * andw %si, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * andw (%rax), %di
# CHECK-NEXT: 1 1 0.25 andl $665536, %eax
# CHECK-NEXT: 1 1 0.25 andl $665536, %edi
# CHECK-NEXT: 3 7 1.00 * * andl $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andl $7, %edi
# CHECK-NEXT: 3 7 1.00 * * andl $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andl %esi, %edi
# CHECK-NEXT: 3 7 1.00 * * andl %esi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * andl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 andq $665536, %rax
# CHECK-NEXT: 1 1 0.25 andq $665536, %rdi
# CHECK-NEXT: 3 7 1.00 * * andq $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andq $7, %rdi
# CHECK-NEXT: 3 7 1.00 * * andq $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * andq %rsi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock andq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * andq (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 bsfw %si, %di
# CHECK-NEXT: 1 3 1.00 bsrw %si, %di
@@ -1027,6 +1191,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 6 1.00 * * btcw %si, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btrw %si, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btsw %si, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btcw %si, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btrw %si, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btsw %si, (%rax)
# CHECK-NEXT: 1 1 0.50 btw $7, %di
# CHECK-NEXT: 1 1 0.50 btcw $7, %di
# CHECK-NEXT: 1 1 0.50 btrw $7, %di
@@ -1035,6 +1202,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 4 6 1.00 * * btcw $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btrw $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btsw $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btcw $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btrw $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btsw $7, (%rax)
# CHECK-NEXT: 1 1 0.50 btl %esi, %edi
# CHECK-NEXT: 1 1 0.50 btcl %esi, %edi
# CHECK-NEXT: 1 1 0.50 btrl %esi, %edi
@@ -1043,6 +1213,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 6 1.00 * * btcl %esi, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btrl %esi, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btsl %esi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btcl %esi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btrl %esi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btsl %esi, (%rax)
# CHECK-NEXT: 1 1 0.50 btl $7, %edi
# CHECK-NEXT: 1 1 0.50 btcl $7, %edi
# CHECK-NEXT: 1 1 0.50 btrl $7, %edi
@@ -1051,6 +1224,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 4 6 1.00 * * btcl $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btrl $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btsl $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btcl $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btrl $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btsl $7, (%rax)
# CHECK-NEXT: 1 1 0.50 btq %rsi, %rdi
# CHECK-NEXT: 1 1 0.50 btcq %rsi, %rdi
# CHECK-NEXT: 1 1 0.50 btrq %rsi, %rdi
@@ -1059,6 +1235,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 6 1.00 * * btcq %rsi, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btrq %rsi, (%rax)
# CHECK-NEXT: 3 6 1.00 * * btsq %rsi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btcq %rsi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btrq %rsi, (%rax)
+# CHECK-NEXT: 3 6 1.00 * * lock btsq %rsi, (%rax)
# CHECK-NEXT: 1 1 0.50 btq $7, %rdi
# CHECK-NEXT: 1 1 0.50 btcq $7, %rdi
# CHECK-NEXT: 1 1 0.50 btrq $7, %rdi
@@ -1067,6 +1246,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 4 6 1.00 * * btcq $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btrq $7, (%rax)
# CHECK-NEXT: 4 6 1.00 * * btsq $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btcq $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btrq $7, (%rax)
+# CHECK-NEXT: 4 6 1.00 * * lock btsq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 cbtw
# CHECK-NEXT: 1 1 0.25 cwtl
# CHECK-NEXT: 1 1 0.25 cltq
@@ -1125,12 +1307,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 8 18 2.00 U cpuid
# CHECK-NEXT: 1 1 0.25 decb %dil
# CHECK-NEXT: 3 7 1.00 * * decb (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock decb (%rax)
# CHECK-NEXT: 1 1 0.25 decw %di
# CHECK-NEXT: 3 7 1.00 * * decw (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock decw (%rax)
# CHECK-NEXT: 1 1 0.25 decl %edi
# CHECK-NEXT: 3 7 1.00 * * decl (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock decl (%rax)
# CHECK-NEXT: 1 1 0.25 decq %rdi
# CHECK-NEXT: 3 7 1.00 * * decq (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock decq (%rax)
# CHECK-NEXT: 1 25 10.00 U divb %dil
# CHECK-NEXT: 2 29 10.00 * U divb (%rax)
# CHECK-NEXT: 32 76 8.00 U divw %si
@@ -1182,12 +1368,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 23 35 5.00 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.25 incb %dil
# CHECK-NEXT: 3 7 1.00 * * incb (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock incb (%rax)
# CHECK-NEXT: 1 1 0.25 incw %di
# CHECK-NEXT: 3 7 1.00 * * incw (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock incw (%rax)
# CHECK-NEXT: 1 1 0.25 incl %edi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * incq (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock incq (%rax)
# CHECK-NEXT: 8 20 1.25 U insb %dx, %es:(%rdi)
# CHECK-NEXT: 8 20 1.25 U insw %dx, %es:(%rdi)
# CHECK-NEXT: 8 20 1.25 U insl %dx, %es:(%rdi)
@@ -1236,12 +1426,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 9 1.00 * mulq (%rax)
# CHECK-NEXT: 1 1 0.25 negb %dil
# CHECK-NEXT: 3 7 1.00 * * negb (%r8)
+# CHECK-NEXT: 3 7 1.00 * * lock negb (%r8)
# CHECK-NEXT: 1 1 0.25 negw %si
# CHECK-NEXT: 3 7 1.00 * * negw (%r9)
+# CHECK-NEXT: 3 7 1.00 * * lock negw (%r9)
# CHECK-NEXT: 1 1 0.25 negl %edx
# CHECK-NEXT: 3 7 1.00 * * negl (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock negl (%rax)
# CHECK-NEXT: 1 1 0.25 negq %rcx
# CHECK-NEXT: 3 7 1.00 * * negq (%r10)
+# CHECK-NEXT: 3 7 1.00 * * lock negq (%r10)
# CHECK-NEXT: 1 1 0.17 nop
# CHECK-NEXT: 1 1 0.17 nopw %di
# CHECK-NEXT: 1 1 0.17 nopw (%rcx)
@@ -1251,41 +1445,56 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.17 nopq (%r9)
# CHECK-NEXT: 1 1 0.25 notb %dil
# CHECK-NEXT: 3 7 1.00 * * notb (%r8)
+# CHECK-NEXT: 3 7 1.00 * * lock notb (%r8)
# CHECK-NEXT: 1 1 0.25 notw %si
# CHECK-NEXT: 3 7 1.00 * * notw (%r9)
+# CHECK-NEXT: 3 7 1.00 * * lock notw (%r9)
# CHECK-NEXT: 1 1 0.25 notl %edx
# CHECK-NEXT: 3 7 1.00 * * notl (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock notl (%rax)
# CHECK-NEXT: 1 1 0.25 notq %rcx
# CHECK-NEXT: 3 7 1.00 * * notq (%r10)
+# CHECK-NEXT: 3 7 1.00 * * lock notq (%r10)
# CHECK-NEXT: 1 1 0.25 orb $7, %al
# CHECK-NEXT: 1 1 0.25 orb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * orb $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orb %sil, %dil
# CHECK-NEXT: 3 7 1.00 * * orb %sil, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * orb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 orw $511, %ax
# CHECK-NEXT: 1 1 0.25 orw $511, %di
# CHECK-NEXT: 3 7 1.00 * * orw $511, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 orw $7, %di
# CHECK-NEXT: 3 7 1.00 * * orw $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orw %si, %di
# CHECK-NEXT: 3 7 1.00 * * orw %si, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * orw (%rax), %di
# CHECK-NEXT: 1 1 0.25 orl $665536, %eax
# CHECK-NEXT: 1 1 0.25 orl $665536, %edi
# CHECK-NEXT: 3 7 1.00 * * orl $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orl $7, %edi
# CHECK-NEXT: 3 7 1.00 * * orl $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orl %esi, %edi
# CHECK-NEXT: 3 7 1.00 * * orl %esi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 orq $665536, %rax
# CHECK-NEXT: 1 1 0.25 orq $665536, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orq $7, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq %rsi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock orq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orq (%rax), %rdi
# CHECK-NEXT: 23 35 5.00 U outb %al, $7
# CHECK-NEXT: 23 35 5.00 U outb %al, %dx
@@ -1473,44 +1682,59 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 2 0.50 sbbb $0, %al
# CHECK-NEXT: 1 1 0.50 sbbb $0, %dil
# CHECK-NEXT: 6 8 1.00 * * sbbb $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbb $0, (%rax)
# CHECK-NEXT: 2 2 0.50 sbbb $7, %al
# CHECK-NEXT: 1 1 0.50 sbbb $7, %dil
# CHECK-NEXT: 6 8 1.00 * * sbbb $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbb $7, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbb %sil, %dil
# CHECK-NEXT: 6 8 1.00 * * sbbb %sil, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * sbbb (%rax), %dil
# CHECK-NEXT: 1 1 0.50 sbbw $0, %ax
# CHECK-NEXT: 1 1 0.50 sbbw $0, %di
# CHECK-NEXT: 6 8 1.00 * * sbbw $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbw $0, (%rax)
# CHECK-NEXT: 2 2 0.50 sbbw $511, %ax
# CHECK-NEXT: 1 1 0.50 sbbw $511, %di
# CHECK-NEXT: 6 8 1.00 * * sbbw $511, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbw $511, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbw $7, %di
# CHECK-NEXT: 6 8 1.00 * * sbbw $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbw $7, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbw %si, %di
# CHECK-NEXT: 6 8 1.00 * * sbbw %si, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * sbbw (%rax), %di
# CHECK-NEXT: 1 1 0.50 sbbl $0, %eax
# CHECK-NEXT: 1 1 0.50 sbbl $0, %edi
# CHECK-NEXT: 6 8 1.00 * * sbbl $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbl $0, (%rax)
# CHECK-NEXT: 2 2 0.50 sbbl $665536, %eax
# CHECK-NEXT: 1 1 0.50 sbbl $665536, %edi
# CHECK-NEXT: 6 8 1.00 * * sbbl $665536, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbl $665536, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbl $7, %edi
# CHECK-NEXT: 6 8 1.00 * * sbbl $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbl $7, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbl %esi, %edi
# CHECK-NEXT: 6 8 1.00 * * sbbl %esi, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * sbbl (%rax), %edi
# CHECK-NEXT: 1 1 0.50 sbbq $0, %rax
# CHECK-NEXT: 1 1 0.50 sbbq $0, %rdi
# CHECK-NEXT: 6 8 1.00 * * sbbq $0, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbq $0, (%rax)
# CHECK-NEXT: 2 2 0.50 sbbq $665536, %rax
# CHECK-NEXT: 1 1 0.50 sbbq $665536, %rdi
# CHECK-NEXT: 6 8 1.00 * * sbbq $665536, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbq $665536, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbq $7, %rdi
# CHECK-NEXT: 6 8 1.00 * * sbbq $7, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbq $7, (%rax)
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 6 8 1.00 * * sbbq %rsi, (%rax)
+# CHECK-NEXT: 6 8 1.00 * * lock sbbq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * sbbq (%rax), %rdi
# CHECK-NEXT: 3 7 0.50 U scasb %es:(%rdi), %al
# CHECK-NEXT: 3 7 0.50 U scasw %es:(%rdi), %ax
@@ -1581,32 +1805,43 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subb $7, %al
# CHECK-NEXT: 1 1 0.25 subb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * subb $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subb %sil, %dil
# CHECK-NEXT: 3 7 1.00 * * subb %sil, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * subb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 subw $511, %ax
# CHECK-NEXT: 1 1 0.25 subw $511, %di
# CHECK-NEXT: 3 7 1.00 * * subw $511, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 subw $7, %di
# CHECK-NEXT: 3 7 1.00 * * subw $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subw %si, %di
# CHECK-NEXT: 3 7 1.00 * * subw %si, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * subw (%rax), %di
# CHECK-NEXT: 1 1 0.25 subl $665536, %eax
# CHECK-NEXT: 1 1 0.25 subl $665536, %edi
# CHECK-NEXT: 3 7 1.00 * * subl $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subl $7, %edi
# CHECK-NEXT: 3 7 1.00 * * subl $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subl %esi, %edi
# CHECK-NEXT: 3 7 1.00 * * subl %esi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 subq $665536, %rax
# CHECK-NEXT: 1 1 0.25 subq $665536, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subq $7, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 testb $7, %al
# CHECK-NEXT: 1 1 0.25 testb $7, %dil
@@ -1638,53 +1873,72 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U wrmsr
# CHECK-NEXT: 3 2 0.75 xaddb %bl, %cl
# CHECK-NEXT: 5 7 1.00 * * xaddb %bl, (%rcx)
+# CHECK-NEXT: 5 7 1.00 * * lock xaddb %bl, (%rcx)
# CHECK-NEXT: 3 2 0.75 xaddw %bx, %cx
# CHECK-NEXT: 5 7 1.00 * * xaddw %ax, (%rbx)
+# CHECK-NEXT: 5 7 1.00 * * lock xaddw %ax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xaddl %ebx, %ecx
# CHECK-NEXT: 5 7 1.00 * * xaddl %eax, (%rbx)
+# CHECK-NEXT: 5 7 1.00 * * lock xaddl %eax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xaddq %rbx, %rcx
# CHECK-NEXT: 5 7 1.00 * * xaddq %rax, (%rbx)
+# CHECK-NEXT: 5 7 1.00 * * lock xaddq %rax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xchgb %bl, %cl
# CHECK-NEXT: 8 10 1.25 * * xchgb %bl, (%rbx)
+# CHECK-NEXT: 8 10 1.25 * * lock xchgb %bl, (%rbx)
# CHECK-NEXT: 3 2 0.75 xchgw %bx, %ax
# CHECK-NEXT: 3 2 0.75 xchgw %bx, %cx
# CHECK-NEXT: 8 10 1.25 * * xchgw %ax, (%rbx)
+# CHECK-NEXT: 8 10 1.25 * * lock xchgw %ax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xchgl %ebx, %eax
# CHECK-NEXT: 3 2 0.75 xchgl %ebx, %ecx
# CHECK-NEXT: 8 10 1.25 * * xchgl %eax, (%rbx)
+# CHECK-NEXT: 8 10 1.25 * * lock xchgl %eax, (%rbx)
# CHECK-NEXT: 3 2 0.75 xchgq %rbx, %rax
# CHECK-NEXT: 3 2 0.75 xchgq %rbx, %rcx
# CHECK-NEXT: 8 10 1.25 * * xchgq %rax, (%rbx)
+# CHECK-NEXT: 8 10 1.25 * * lock xchgq %rax, (%rbx)
# CHECK-NEXT: 1 5 0.50 * xlatb
# CHECK-NEXT: 1 1 0.25 xorb $7, %al
# CHECK-NEXT: 1 1 0.25 xorb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * xorb $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorb %sil, %dil
# CHECK-NEXT: 3 7 1.00 * * xorb %sil, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorb %sil, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 xorw $511, %ax
# CHECK-NEXT: 1 1 0.25 xorw $511, %di
# CHECK-NEXT: 3 7 1.00 * * xorw $511, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw $7, %di
# CHECK-NEXT: 3 7 1.00 * * xorw $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw %si, %di
# CHECK-NEXT: 3 7 1.00 * * xorw %si, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorw (%rax), %di
# CHECK-NEXT: 1 1 0.25 xorl $665536, %eax
# CHECK-NEXT: 1 1 0.25 xorl $665536, %edi
# CHECK-NEXT: 3 7 1.00 * * xorl $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl $7, %edi
# CHECK-NEXT: 3 7 1.00 * * xorl $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl %esi, %edi
# CHECK-NEXT: 3 7 1.00 * * xorl %esi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rax
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rdi
# CHECK-NEXT: 3 7 1.00 * * xorq $665536, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq $7, %rdi
# CHECK-NEXT: 3 7 1.00 * * xorq $7, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * xorq %rsi, (%rax)
+# CHECK-NEXT: 3 7 1.00 * * lock xorq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * xorq (%rax), %rdi
# CHECK: Resources:
@@ -1701,111 +1955,148 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: 60.00 - 594.00 327.50 272.67 272.67 218.00 295.00 650.50 86.67
+# CHECK-NEXT: 60.00 - 663.00 360.00 378.50 378.50 345.00 327.50 723.50 129.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - adcb $0, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcb $0, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcb $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - adcb $7, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcb $7, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcb $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcb %sil, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcb %sil, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - adcb (%rax), %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcw $0, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcw $0, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcw $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - adcw $511, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcw $511, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcw $511, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcw $7, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcw %si, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcw %si, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - adcw (%rax), %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcl $0, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcl $0, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcl $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - adcl $665536, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcl $665536, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcl $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcl $7, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcl %esi, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - adcl (%rax), %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcq $0, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcq $0, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcq $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - adcq $665536, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcq $665536, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcq $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcq $7, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcq $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - adcq %rsi, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 adcq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock adcq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - adcq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addb $7, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addb %sil, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - addb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addw $511, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - addw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addl $665536, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - addl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addq $665536, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - addq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 addq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock addq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - addq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andb $7, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andb %sil, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - andb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andw $511, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - andw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andl $665536, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - andl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andq $665536, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - andq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 andq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock andq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - andq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - bsfw %si, %di
# CHECK-NEXT: - - - 1.00 - - - - - - bsrw %si, %di
@@ -1829,6 +2120,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btcw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btrw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btsw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btcw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btrw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btsw %si, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btcw $7, %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btrw $7, %di
@@ -1837,6 +2131,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btcw $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btrw $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btsw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btcw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btrw $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btsw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btl %esi, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btcl %esi, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btrl %esi, %edi
@@ -1845,6 +2142,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btcl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btrl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btsl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btcl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btrl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btsl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btcl $7, %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btrl $7, %edi
@@ -1853,6 +2153,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btcl $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btrl $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btsl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btcl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btrl $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btsl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btq %rsi, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btcq %rsi, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btrq %rsi, %rdi
@@ -1861,6 +2164,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btcq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btrq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 btsq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btcq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btrq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock btsq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btcq $7, %rdi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - btrq $7, %rdi
@@ -1869,6 +2175,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btcq $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btrq $7, (%rax)
# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 btsq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btcq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btrq $7, (%rax)
+# CHECK-NEXT: - - 0.50 - 0.83 0.83 1.00 - 0.50 0.33 lock btsq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cbtw
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cwtl
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cltq
@@ -1927,12 +2236,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 1.75 1.25 - - - 2.25 2.75 - cpuid
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - decb %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 decb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock decb (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - decw %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 decw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock decw (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - decl %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 decl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock decl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - decq %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 decq (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock decq (%rax)
# CHECK-NEXT: 10.00 - 1.00 - - - - - - - divb %dil
# CHECK-NEXT: 10.00 - 1.00 - 0.50 0.50 - - - - divb (%rax)
# CHECK-NEXT: - - 10.25 4.75 - - - 11.25 5.75 - divw %si
@@ -1984,12 +2297,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inl %dx, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - incb %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 incb (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock incb (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - incw %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 incw (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock incw (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - incl %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 incl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock incl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - incq %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 incq (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock incq (%rax)
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 insb %dx, %es:(%rdi)
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 insw %dx, %es:(%rdi)
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 1.00 1.50 2.00 0.33 insl %dx, %es:(%rdi)
@@ -2038,12 +2355,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - 1.00 - - mulq (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - negb %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 negb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock negb (%r8)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - negw %si
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 negw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock negw (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - negl %edx
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 negl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock negl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - negq %rcx
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 negq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock negq (%r10)
# CHECK-NEXT: - - - - - - - - - - nop
# CHECK-NEXT: - - - - - - - - - - nopw %di
# CHECK-NEXT: - - - - - - - - - - nopw (%rcx)
@@ -2053,41 +2374,56 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - nopq (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - notb %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 notb (%r8)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock notb (%r8)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - notw %si
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 notw (%r9)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock notw (%r9)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - notl %edx
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 notl (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock notl (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - notq %rcx
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 notq (%r10)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock notq (%r10)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orb $7, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orb %sil, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - orb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orw $511, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - orw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orl $665536, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - orl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orq $665536, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - orq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 orq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock orq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - orq (%rax), %rdi
# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outb %al, $7
# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outb %al, %dx
@@ -2275,44 +2611,59 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - sbbb $0, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbb $0, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbb $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbb $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - sbbb $7, %al
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbb $7, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbb $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbb $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbb %sil, %dil
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbb %sil, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbb %sil, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - sbbb (%rax), %dil
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbw $0, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbw $0, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbw $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbw $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - sbbw $511, %ax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbw $511, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbw $511, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbw $511, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbw $7, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbw $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbw $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbw %si, %di
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbw %si, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbw %si, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - sbbw (%rax), %di
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbl $0, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbl $0, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbl $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbl $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - sbbl $665536, %eax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbl $665536, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbl $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbl $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbl $7, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbl $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbl $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbl %esi, %edi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbl %esi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbl %esi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - sbbl (%rax), %edi
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbq $0, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbq $0, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbq $0, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbq $0, (%rax)
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - sbbq $665536, %rax
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbq $665536, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbq $665536, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbq $665536, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbq $7, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbq $7, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbq $7, (%rax)
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - sbbq %rsi, %rdi
# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 sbbq %rsi, (%rax)
+# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 lock sbbq %rsi, (%rax)
# CHECK-NEXT: - - 0.50 - 0.50 0.50 - - 0.50 - sbbq (%rax), %rdi
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasb %es:(%rdi), %al
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasw %es:(%rdi), %ax
@@ -2383,32 +2734,43 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subb $7, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subb %sil, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - subb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subw $511, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - subw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subl $665536, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - subl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subq $665536, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - subq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 subq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock subq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - subq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - testb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - testb $7, %dil
@@ -2440,51 +2802,70 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - wrmsr
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xaddb %bl, %cl
# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 xaddb %bl, (%rcx)
+# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 lock xaddb %bl, (%rcx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xaddw %bx, %cx
# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 xaddw %ax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 lock xaddw %ax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xaddl %ebx, %ecx
# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 xaddl %eax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 lock xaddl %eax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xaddq %rbx, %rcx
# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 xaddq %rax, (%rbx)
+# CHECK-NEXT: - - 0.50 0.50 0.83 0.83 1.00 0.50 0.50 0.33 lock xaddq %rax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgb %bl, %cl
# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 xchgb %bl, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 lock xchgb %bl, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgw %bx, %ax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgw %bx, %cx
# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 xchgw %ax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 lock xchgw %ax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgl %ebx, %eax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgl %ebx, %ecx
# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 xchgl %eax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 lock xchgl %eax, (%rbx)
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgq %rbx, %rax
# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 0.75 - xchgq %rbx, %rcx
# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 xchgq %rax, (%rbx)
+# CHECK-NEXT: - - 1.25 0.75 0.83 0.83 1.00 0.75 2.25 0.33 lock xchgq %rax, (%rbx)
# CHECK-NEXT: - - - - 0.50 0.50 - - - - xlatb
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorb $7, %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorb $7, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorb $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorb %sil, %dil
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorb %sil, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorb %sil, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - xorb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorw $511, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorw $511, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorw $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorw %si, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - xorw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorl $665536, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorl $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorl $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorl %esi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - xorl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorq $665536, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorq $665536, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorq $7, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - xorq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorq %rsi, (%rax)
+# CHECK-NEXT: - - 0.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 lock xorq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.50 0.50 - 0.25 0.25 - xorq (%rax), %rdi
Modified: llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s?rev=369367&r1=369366&r2=369367&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s Tue Aug 20 04:13:20 2019
@@ -4,115 +4,152 @@
adcb $0, %al
adcb $0, %dil
adcb $0, (%rax)
+lock adcb $0, (%rax)
adcb $7, %al
adcb $7, %dil
adcb $7, (%rax)
+lock adcb $7, (%rax)
adcb %sil, %dil
adcb %sil, (%rax)
+lock adcb %sil, (%rax)
adcb (%rax), %dil
adcw $0, %ax
adcw $0, %di
adcw $0, (%rax)
+lock adcw $0, (%rax)
adcw $511, %ax
adcw $511, %di
adcw $511, (%rax)
+lock adcw $511, (%rax)
adcw $7, %di
adcw $7, (%rax)
+lock adcw $7, (%rax)
adcw %si, %di
adcw %si, (%rax)
+lock adcw %si, (%rax)
adcw (%rax), %di
adcl $0, %eax
adcl $0, %edi
adcl $0, (%rax)
+lock adcl $0, (%rax)
adcl $665536, %eax
adcl $665536, %edi
adcl $665536, (%rax)
+lock adcl $665536, (%rax)
adcl $7, %edi
adcl $7, (%rax)
+lock adcl $7, (%rax)
adcl %esi, %edi
adcl %esi, (%rax)
+lock adcl %esi, (%rax)
adcl (%rax), %edi
adcq $0, %rax
adcq $0, %rdi
adcq $0, (%rax)
+lock adcq $0, (%rax)
adcq $665536, %rax
adcq $665536, %rdi
adcq $665536, (%rax)
+lock adcq $665536, (%rax)
adcq $7, %rdi
adcq $7, (%rax)
+lock adcq $7, (%rax)
adcq %rsi, %rdi
adcq %rsi, (%rax)
+lock adcq %rsi, (%rax)
adcq (%rax), %rdi
addb $7, %al
addb $7, %dil
addb $7, (%rax)
+lock addb $7, (%rax)
addb %sil, %dil
addb %sil, (%rax)
+lock addb %sil, (%rax)
addb (%rax), %dil
addw $511, %ax
addw $511, %di
addw $511, (%rax)
+lock addw $511, (%rax)
addw $7, %di
addw $7, (%rax)
+lock addw $7, (%rax)
addw %si, %di
addw %si, (%rax)
+lock addw %si, (%rax)
addw (%rax), %di
addl $665536, %eax
addl $665536, %edi
addl $665536, (%rax)
+lock addl $665536, (%rax)
addl $7, %edi
addl $7, (%rax)
+lock addl $7, (%rax)
addl %esi, %edi
addl %esi, (%rax)
+lock addl %esi, (%rax)
addl (%rax), %edi
addq $665536, %rax
addq $665536, %rdi
addq $665536, (%rax)
+lock addq $665536, (%rax)
addq $7, %rdi
addq $7, (%rax)
+lock addq $7, (%rax)
addq %rsi, %rdi
addq %rsi, (%rax)
+lock addq %rsi, (%rax)
addq (%rax), %rdi
andb $7, %al
andb $7, %dil
andb $7, (%rax)
+lock andb $7, (%rax)
andb %sil, %dil
andb %sil, (%rax)
+lock andb %sil, (%rax)
andb (%rax), %dil
andw $511, %ax
andw $511, %di
andw $511, (%rax)
+lock andw $511, (%rax)
andw $7, %di
andw $7, (%rax)
+lock andw $7, (%rax)
andw %si, %di
andw %si, (%rax)
+lock andw %si, (%rax)
andw (%rax), %di
andl $665536, %eax
andl $665536, %edi
andl $665536, (%rax)
+lock andl $665536, (%rax)
andl $7, %edi
andl $7, (%rax)
+lock andl $7, (%rax)
andl %esi, %edi
andl %esi, (%rax)
+lock andl %esi, (%rax)
andl (%rax), %edi
andq $665536, %rax
andq $665536, %rdi
andq $665536, (%rax)
+lock andq $665536, (%rax)
andq $7, %rdi
andq $7, (%rax)
+lock andq $7, (%rax)
andq %rsi, %rdi
andq %rsi, (%rax)
+lock andq %rsi, (%rax)
andq (%rax), %rdi
bsfw %si, %di
@@ -141,6 +178,9 @@ btw %si, (%rax)
btcw %si, (%rax)
btrw %si, (%rax)
btsw %si, (%rax)
+lock btcw %si, (%rax)
+lock btrw %si, (%rax)
+lock btsw %si, (%rax)
btw $7, %di
btcw $7, %di
btrw $7, %di
@@ -149,6 +189,9 @@ btw $7, (%rax)
btcw $7, (%rax)
btrw $7, (%rax)
btsw $7, (%rax)
+lock btcw $7, (%rax)
+lock btrw $7, (%rax)
+lock btsw $7, (%rax)
btl %esi, %edi
btcl %esi, %edi
@@ -158,6 +201,9 @@ btl %esi, (%rax)
btcl %esi, (%rax)
btrl %esi, (%rax)
btsl %esi, (%rax)
+lock btcl %esi, (%rax)
+lock btrl %esi, (%rax)
+lock btsl %esi, (%rax)
btl $7, %edi
btcl $7, %edi
btrl $7, %edi
@@ -166,6 +212,9 @@ btl $7, (%rax)
btcl $7, (%rax)
btrl $7, (%rax)
btsl $7, (%rax)
+lock btcl $7, (%rax)
+lock btrl $7, (%rax)
+lock btsl $7, (%rax)
btq %rsi, %rdi
btcq %rsi, %rdi
@@ -175,6 +224,9 @@ btq %rsi, (%rax)
btcq %rsi, (%rax)
btrq %rsi, (%rax)
btsq %rsi, (%rax)
+lock btcq %rsi, (%rax)
+lock btrq %rsi, (%rax)
+lock btsq %rsi, (%rax)
btq $7, %rdi
btcq $7, %rdi
btrq $7, %rdi
@@ -183,6 +235,9 @@ btq $7, (%rax)
btcq $7, (%rax)
btrq $7, (%rax)
btsq $7, (%rax)
+lock btcq $7, (%rax)
+lock btrq $7, (%rax)
+lock btsq $7, (%rax)
cbw
cwde
@@ -254,12 +309,16 @@ cpuid
decb %dil
decb (%rax)
+lock decb (%rax)
decw %di
decw (%rax)
+lock decw (%rax)
decl %edi
decl (%rax)
+lock decl (%rax)
decq %rdi
decq (%rax)
+lock decq (%rax)
divb %dil
divb (%rax)
@@ -320,12 +379,16 @@ inl %dx, %eax
incb %dil
incb (%rax)
+lock incb (%rax)
incw %di
incw (%rax)
+lock incw (%rax)
incl %edi
incl (%rax)
+lock incl (%rax)
incq %rdi
incq (%rax)
+lock incq (%rax)
insb
insw
@@ -386,12 +449,16 @@ mulq (%rax)
negb %dil
negb (%r8)
+lock negb (%r8)
negw %si
negw (%r9)
+lock negw (%r9)
negl %edx
negl (%rax)
+lock negl (%rax)
negq %rcx
negq (%r10)
+lock negq (%r10)
nop
nopw %di
@@ -403,45 +470,60 @@ nopq (%r9)
notb %dil
notb (%r8)
+lock notb (%r8)
notw %si
notw (%r9)
+lock notw (%r9)
notl %edx
notl (%rax)
+lock notl (%rax)
notq %rcx
notq (%r10)
+lock notq (%r10)
orb $7, %al
orb $7, %dil
orb $7, (%rax)
+lock orb $7, (%rax)
orb %sil, %dil
orb %sil, (%rax)
+lock orb %sil, (%rax)
orb (%rax), %dil
orw $511, %ax
orw $511, %di
orw $511, (%rax)
+lock orw $511, (%rax)
orw $7, %di
orw $7, (%rax)
+lock orw $7, (%rax)
orw %si, %di
orw %si, (%rax)
+lock orw %si, (%rax)
orw (%rax), %di
orl $665536, %eax
orl $665536, %edi
orl $665536, (%rax)
+lock orl $665536, (%rax)
orl $7, %edi
orl $7, (%rax)
+lock orl $7, (%rax)
orl %esi, %edi
orl %esi, (%rax)
+lock orl %esi, (%rax)
orl (%rax), %edi
orq $665536, %rax
orq $665536, %rdi
orq $665536, (%rax)
+lock orq $665536, (%rax)
orq $7, %rdi
orq $7, (%rax)
+lock orq $7, (%rax)
orq %rsi, %rdi
orq %rsi, (%rax)
+lock orq %rsi, (%rax)
orq (%rax), %rdi
outb %al, $7
@@ -647,47 +729,62 @@ shrq %cl, (%rax)
sbbb $0, %al
sbbb $0, %dil
sbbb $0, (%rax)
+lock sbbb $0, (%rax)
sbbb $7, %al
sbbb $7, %dil
sbbb $7, (%rax)
+lock sbbb $7, (%rax)
sbbb %sil, %dil
sbbb %sil, (%rax)
+lock sbbb %sil, (%rax)
sbbb (%rax), %dil
sbbw $0, %ax
sbbw $0, %di
sbbw $0, (%rax)
+lock sbbw $0, (%rax)
sbbw $511, %ax
sbbw $511, %di
sbbw $511, (%rax)
+lock sbbw $511, (%rax)
sbbw $7, %di
sbbw $7, (%rax)
+lock sbbw $7, (%rax)
sbbw %si, %di
sbbw %si, (%rax)
+lock sbbw %si, (%rax)
sbbw (%rax), %di
sbbl $0, %eax
sbbl $0, %edi
sbbl $0, (%rax)
+lock sbbl $0, (%rax)
sbbl $665536, %eax
sbbl $665536, %edi
sbbl $665536, (%rax)
+lock sbbl $665536, (%rax)
sbbl $7, %edi
sbbl $7, (%rax)
+lock sbbl $7, (%rax)
sbbl %esi, %edi
sbbl %esi, (%rax)
+lock sbbl %esi, (%rax)
sbbl (%rax), %edi
sbbq $0, %rax
sbbq $0, %rdi
sbbq $0, (%rax)
+lock sbbq $0, (%rax)
sbbq $665536, %rax
sbbq $665536, %rdi
sbbq $665536, (%rax)
+lock sbbq $665536, (%rax)
sbbq $7, %rdi
sbbq $7, (%rax)
+lock sbbq $7, (%rax)
sbbq %rsi, %rdi
sbbq %rsi, (%rax)
+lock sbbq %rsi, (%rax)
sbbq (%rax), %rdi
scasb
@@ -766,35 +863,46 @@ stosq
subb $7, %al
subb $7, %dil
subb $7, (%rax)
+lock subb $7, (%rax)
subb %sil, %dil
subb %sil, (%rax)
+lock subb %sil, (%rax)
subb (%rax), %dil
subw $511, %ax
subw $511, %di
subw $511, (%rax)
+lock subw $511, (%rax)
subw $7, %di
subw $7, (%rax)
+lock subw $7, (%rax)
subw %si, %di
subw %si, (%rax)
+lock subw %si, (%rax)
subw (%rax), %di
subl $665536, %eax
subl $665536, %edi
subl $665536, (%rax)
+lock subl $665536, (%rax)
subl $7, %edi
subl $7, (%rax)
+lock subl $7, (%rax)
subl %esi, %edi
subl %esi, (%rax)
+lock subl %esi, (%rax)
subl (%rax), %edi
subq $665536, %rax
subq $665536, %rdi
subq $665536, (%rax)
+lock subq $665536, (%rax)
subq $7, %rdi
subq $7, (%rax)
+lock subq $7, (%rax)
subq %rsi, %rdi
subq %rsi, (%rax)
+lock subq %rsi, (%rax)
subq (%rax), %rdi
testb $7, %al
@@ -833,65 +941,84 @@ wrmsr
xaddb %bl, %cl
xaddb %bl, (%rcx)
+lock xaddb %bl, (%rcx)
xaddw %bx, %cx
xaddw %ax, (%rbx)
+lock xaddw %ax, (%rbx)
xaddl %ebx, %ecx
xaddl %eax, (%rbx)
+lock xaddl %eax, (%rbx)
xaddq %rbx, %rcx
xaddq %rax, (%rbx)
+lock xaddq %rax, (%rbx)
xchgb %bl, %cl
xchgb %bl, (%rbx)
+lock xchgb %bl, (%rbx)
xchgw %ax, %bx
xchgw %bx, %cx
xchgw %ax, (%rbx)
+lock xchgw %ax, (%rbx)
xchgl %eax, %ebx
xchgl %ebx, %ecx
xchgl %eax, (%rbx)
+lock xchgl %eax, (%rbx)
xchgq %rax, %rbx
xchgq %rbx, %rcx
xchgq %rax, (%rbx)
+lock xchgq %rax, (%rbx)
xlatb
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
+lock xorb $7, (%rax)
xorb %sil, %dil
xorb %sil, (%rax)
+lock xorb %sil, (%rax)
xorb (%rax), %dil
xorw $511, %ax
xorw $511, %di
xorw $511, (%rax)
+lock xorw $511, (%rax)
xorw $7, %di
xorw $7, (%rax)
+lock xorw $7, (%rax)
xorw %si, %di
xorw %si, (%rax)
+lock xorw %si, (%rax)
xorw (%rax), %di
xorl $665536, %eax
xorl $665536, %edi
xorl $665536, (%rax)
+lock xorl $665536, (%rax)
xorl $7, %edi
xorl $7, (%rax)
+lock xorl $7, (%rax)
xorl %esi, %edi
xorl %esi, (%rax)
+lock xorl %esi, (%rax)
xorl (%rax), %edi
xorq $665536, %rax
xorq $665536, %rdi
xorq $665536, (%rax)
+lock xorq $665536, (%rax)
xorq $7, %rdi
xorq $7, (%rax)
+lock xorq $7, (%rax)
xorq %rsi, %rdi
xorq %rsi, (%rax)
+lock xorq %rsi, (%rax)
xorq (%rax), %rdi
# CHECK: Instruction Info:
@@ -906,104 +1033,141 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 adcb $0, %al
# CHECK-NEXT: 1 1 0.25 adcb $0, %dil
# CHECK-NEXT: 2 5 0.50 * * adcb $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcb $0, (%rax)
# CHECK-NEXT: 1 1 0.25 adcb $7, %al
# CHECK-NEXT: 1 1 0.25 adcb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * adcb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 adcb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * adcb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * adcb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 adcw $0, %ax
# CHECK-NEXT: 1 1 0.25 adcw $0, %di
# CHECK-NEXT: 2 5 0.50 * * adcw $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcw $0, (%rax)
# CHECK-NEXT: 1 1 0.25 adcw $511, %ax
# CHECK-NEXT: 1 1 0.25 adcw $511, %di
# CHECK-NEXT: 2 5 0.50 * * adcw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 adcw $7, %di
# CHECK-NEXT: 2 5 0.50 * * adcw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 adcw %si, %di
# CHECK-NEXT: 2 5 0.50 * * adcw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * adcw (%rax), %di
# CHECK-NEXT: 1 1 0.25 adcl $0, %eax
# CHECK-NEXT: 1 1 0.25 adcl $0, %edi
# CHECK-NEXT: 2 5 0.50 * * adcl $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcl $0, (%rax)
# CHECK-NEXT: 1 1 0.25 adcl $665536, %eax
# CHECK-NEXT: 1 1 0.25 adcl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * adcl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 adcl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * adcl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 adcl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * adcl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * adcl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 adcq $0, %rax
# CHECK-NEXT: 1 1 0.25 adcq $0, %rdi
# CHECK-NEXT: 2 5 0.50 * * adcq $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcq $0, (%rax)
# CHECK-NEXT: 1 1 0.25 adcq $665536, %rax
# CHECK-NEXT: 1 1 0.25 adcq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * adcq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 adcq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * adcq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 adcq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * adcq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock adcq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * adcq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 addb $7, %al
# CHECK-NEXT: 1 1 0.25 addb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * addb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * addb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * addb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 addw $511, %ax
# CHECK-NEXT: 1 1 0.25 addw $511, %di
# CHECK-NEXT: 2 5 0.50 * * addw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 addw $7, %di
# CHECK-NEXT: 2 5 0.50 * * addw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addw %si, %di
# CHECK-NEXT: 2 5 0.50 * * addw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * addw (%rax), %di
# CHECK-NEXT: 1 1 0.25 addl $665536, %eax
# CHECK-NEXT: 1 1 0.25 addl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * addl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * addl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * addl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * addl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 addq $665536, %rax
# CHECK-NEXT: 1 1 0.25 addq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * addq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 addq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * addq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 addq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * addq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock addq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * addq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 andb $7, %al
# CHECK-NEXT: 1 1 0.25 andb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * andb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * andb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * andb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 andw $511, %ax
# CHECK-NEXT: 1 1 0.25 andw $511, %di
# CHECK-NEXT: 2 5 0.50 * * andw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 andw $7, %di
# CHECK-NEXT: 2 5 0.50 * * andw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andw %si, %di
# CHECK-NEXT: 2 5 0.50 * * andw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * andw (%rax), %di
# CHECK-NEXT: 1 1 0.25 andl $665536, %eax
# CHECK-NEXT: 1 1 0.25 andl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * andl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * andl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * andl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * andl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 andq $665536, %rax
# CHECK-NEXT: 1 1 0.25 andq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * andq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 andq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * andq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 andq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * andq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock andq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * andq (%rax), %rdi
# CHECK-NEXT: 1 3 0.25 bsfw %si, %di
# CHECK-NEXT: 1 3 0.25 bsrw %si, %di
@@ -1027,6 +1191,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrw %si, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsw %si, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcw %si, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrw %si, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsw %si, (%rax)
# CHECK-NEXT: 1 1 0.25 btw $7, %di
# CHECK-NEXT: 2 2 0.25 btcw $7, %di
# CHECK-NEXT: 2 2 0.25 btrw $7, %di
@@ -1035,6 +1202,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcw $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrw $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsw $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcw $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrw $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 btl %esi, %edi
# CHECK-NEXT: 2 2 0.25 btcl %esi, %edi
# CHECK-NEXT: 2 2 0.25 btrl %esi, %edi
@@ -1043,6 +1213,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrl %esi, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsl %esi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcl %esi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrl %esi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsl %esi, (%rax)
# CHECK-NEXT: 1 1 0.25 btl $7, %edi
# CHECK-NEXT: 2 2 0.25 btcl $7, %edi
# CHECK-NEXT: 2 2 0.25 btrl $7, %edi
@@ -1051,6 +1224,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcl $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrl $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsl $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcl $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrl $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 btq %rsi, %rdi
# CHECK-NEXT: 2 2 0.25 btcq %rsi, %rdi
# CHECK-NEXT: 2 2 0.25 btrq %rsi, %rdi
@@ -1059,6 +1235,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsq %rsi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcq %rsi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrq %rsi, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsq %rsi, (%rax)
# CHECK-NEXT: 1 1 0.25 btq $7, %rdi
# CHECK-NEXT: 2 2 0.25 btcq $7, %rdi
# CHECK-NEXT: 2 2 0.25 btrq $7, %rdi
@@ -1067,6 +1246,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 6 0.50 * * btcq $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btrq $7, (%rax)
# CHECK-NEXT: 2 6 0.50 * * btsq $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btcq $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btrq $7, (%rax)
+# CHECK-NEXT: 2 6 0.50 * * lock btsq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 cbtw
# CHECK-NEXT: 1 1 0.25 cwtl
# CHECK-NEXT: 1 1 0.25 cltq
@@ -1125,12 +1307,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U cpuid
# CHECK-NEXT: 1 1 0.25 decb %dil
# CHECK-NEXT: 2 5 0.50 * * decb (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock decb (%rax)
# CHECK-NEXT: 1 1 0.25 decw %di
# CHECK-NEXT: 2 5 0.50 * * decw (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock decw (%rax)
# CHECK-NEXT: 1 1 0.25 decl %edi
# CHECK-NEXT: 2 5 0.50 * * decl (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock decl (%rax)
# CHECK-NEXT: 1 1 0.25 decq %rdi
# CHECK-NEXT: 2 5 0.50 * * decq (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock decq (%rax)
# CHECK-NEXT: 1 15 15.00 U divb %dil
# CHECK-NEXT: 2 19 15.00 * U divb (%rax)
# CHECK-NEXT: 2 17 17.00 U divw %si
@@ -1182,12 +1368,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.25 incb %dil
# CHECK-NEXT: 2 5 0.50 * * incb (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock incb (%rax)
# CHECK-NEXT: 1 1 0.25 incw %di
# CHECK-NEXT: 2 5 0.50 * * incw (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock incw (%rax)
# CHECK-NEXT: 1 1 0.25 incl %edi
# CHECK-NEXT: 2 5 0.50 * * incl (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 2 5 0.50 * * incq (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock incq (%rax)
# CHECK-NEXT: 1 100 0.25 U insb %dx, %es:(%rdi)
# CHECK-NEXT: 1 100 0.25 U insw %dx, %es:(%rdi)
# CHECK-NEXT: 1 100 0.25 U insl %dx, %es:(%rdi)
@@ -1236,12 +1426,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 9 1.00 * mulq (%rax)
# CHECK-NEXT: 1 1 0.25 negb %dil
# CHECK-NEXT: 2 5 0.50 * * negb (%r8)
+# CHECK-NEXT: 2 5 0.50 * * lock negb (%r8)
# CHECK-NEXT: 1 1 0.25 negw %si
# CHECK-NEXT: 2 5 0.50 * * negw (%r9)
+# CHECK-NEXT: 2 5 0.50 * * lock negw (%r9)
# CHECK-NEXT: 1 1 0.25 negl %edx
# CHECK-NEXT: 2 5 0.50 * * negl (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock negl (%rax)
# CHECK-NEXT: 1 1 0.25 negq %rcx
# CHECK-NEXT: 2 5 0.50 * * negq (%r10)
+# CHECK-NEXT: 2 5 0.50 * * lock negq (%r10)
# CHECK-NEXT: 1 1 0.25 nop
# CHECK-NEXT: 1 1 0.25 nopw %di
# CHECK-NEXT: 1 1 0.25 nopw (%rcx)
@@ -1251,41 +1445,56 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 nopq (%r9)
# CHECK-NEXT: 1 1 0.25 notb %dil
# CHECK-NEXT: 2 5 0.50 * * notb (%r8)
+# CHECK-NEXT: 2 5 0.50 * * lock notb (%r8)
# CHECK-NEXT: 1 1 0.25 notw %si
# CHECK-NEXT: 2 5 0.50 * * notw (%r9)
+# CHECK-NEXT: 2 5 0.50 * * lock notw (%r9)
# CHECK-NEXT: 1 1 0.25 notl %edx
# CHECK-NEXT: 2 5 0.50 * * notl (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock notl (%rax)
# CHECK-NEXT: 1 1 0.25 notq %rcx
# CHECK-NEXT: 2 5 0.50 * * notq (%r10)
+# CHECK-NEXT: 2 5 0.50 * * lock notq (%r10)
# CHECK-NEXT: 1 1 0.25 orb $7, %al
# CHECK-NEXT: 1 1 0.25 orb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * orb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * orb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * orb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 orw $511, %ax
# CHECK-NEXT: 1 1 0.25 orw $511, %di
# CHECK-NEXT: 2 5 0.50 * * orw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 orw $7, %di
# CHECK-NEXT: 2 5 0.50 * * orw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orw %si, %di
# CHECK-NEXT: 2 5 0.50 * * orw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * orw (%rax), %di
# CHECK-NEXT: 1 1 0.25 orl $665536, %eax
# CHECK-NEXT: 1 1 0.25 orl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * orl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * orl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * orl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * orl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 orq $665536, %rax
# CHECK-NEXT: 1 1 0.25 orq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * orq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 orq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * orq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * orq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock orq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * orq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U outb %al, $7
# CHECK-NEXT: 1 100 0.25 U outb %al, %dx
@@ -1473,44 +1682,59 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 sbbb $0, %al
# CHECK-NEXT: 1 1 0.25 sbbb $0, %dil
# CHECK-NEXT: 2 5 0.50 * * sbbb $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbb $0, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbb $7, %al
# CHECK-NEXT: 1 1 0.25 sbbb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * sbbb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * sbbb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * sbbb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 sbbw $0, %ax
# CHECK-NEXT: 1 1 0.25 sbbw $0, %di
# CHECK-NEXT: 2 5 0.50 * * sbbw $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbw $0, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbw $511, %ax
# CHECK-NEXT: 1 1 0.25 sbbw $511, %di
# CHECK-NEXT: 2 5 0.50 * * sbbw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbw $7, %di
# CHECK-NEXT: 2 5 0.50 * * sbbw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbw %si, %di
# CHECK-NEXT: 2 5 0.50 * * sbbw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * sbbw (%rax), %di
# CHECK-NEXT: 1 1 0.25 sbbl $0, %eax
# CHECK-NEXT: 1 1 0.25 sbbl $0, %edi
# CHECK-NEXT: 2 5 0.50 * * sbbl $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbl $0, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbl $665536, %eax
# CHECK-NEXT: 1 1 0.25 sbbl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * sbbl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * sbbl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * sbbl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * sbbl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 sbbq $0, %rax
# CHECK-NEXT: 1 1 0.25 sbbq $0, %rdi
# CHECK-NEXT: 2 5 0.50 * * sbbq $0, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbq $0, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbq $665536, %rax
# CHECK-NEXT: 1 1 0.25 sbbq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * sbbq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * sbbq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 sbbq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * sbbq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock sbbq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * sbbq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U scasb %es:(%rdi), %al
# CHECK-NEXT: 1 100 0.25 U scasw %es:(%rdi), %ax
@@ -1581,32 +1805,43 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subb $7, %al
# CHECK-NEXT: 1 1 0.25 subb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * subb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * subb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * subb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 subw $511, %ax
# CHECK-NEXT: 1 1 0.25 subw $511, %di
# CHECK-NEXT: 2 5 0.50 * * subw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 subw $7, %di
# CHECK-NEXT: 2 5 0.50 * * subw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subw %si, %di
# CHECK-NEXT: 2 5 0.50 * * subw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * subw (%rax), %di
# CHECK-NEXT: 1 1 0.25 subl $665536, %eax
# CHECK-NEXT: 1 1 0.25 subl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * subl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * subl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * subl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * subl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 subq $665536, %rax
# CHECK-NEXT: 1 1 0.25 subq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * subq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 subq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * subq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * subq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock subq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * subq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 testb $7, %al
# CHECK-NEXT: 1 1 0.25 testb $7, %dil
@@ -1638,53 +1873,72 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U wrmsr
# CHECK-NEXT: 1 1 0.25 xaddb %bl, %cl
# CHECK-NEXT: 1 100 0.25 * * xaddb %bl, (%rcx)
+# CHECK-NEXT: 1 100 0.25 * * lock xaddb %bl, (%rcx)
# CHECK-NEXT: 1 1 0.25 xaddw %bx, %cx
# CHECK-NEXT: 1 100 0.25 * * xaddw %ax, (%rbx)
+# CHECK-NEXT: 1 100 0.25 * * lock xaddw %ax, (%rbx)
# CHECK-NEXT: 1 1 0.25 xaddl %ebx, %ecx
# CHECK-NEXT: 1 100 0.25 * * xaddl %eax, (%rbx)
+# CHECK-NEXT: 1 100 0.25 * * lock xaddl %eax, (%rbx)
# CHECK-NEXT: 1 1 0.25 xaddq %rbx, %rcx
# CHECK-NEXT: 1 100 0.25 * * xaddq %rax, (%rbx)
+# CHECK-NEXT: 1 100 0.25 * * lock xaddq %rax, (%rbx)
# CHECK-NEXT: 2 1 0.50 xchgb %bl, %cl
# CHECK-NEXT: 2 5 0.50 * * xchgb %bl, (%rbx)
+# CHECK-NEXT: 2 5 0.50 * * lock xchgb %bl, (%rbx)
# CHECK-NEXT: 2 1 0.50 xchgw %bx, %ax
# CHECK-NEXT: 2 1 0.50 xchgw %bx, %cx
# CHECK-NEXT: 2 5 0.50 * * xchgw %ax, (%rbx)
+# CHECK-NEXT: 2 5 0.50 * * lock xchgw %ax, (%rbx)
# CHECK-NEXT: 2 1 0.50 xchgl %ebx, %eax
# CHECK-NEXT: 2 1 0.50 xchgl %ebx, %ecx
# CHECK-NEXT: 2 5 0.50 * * xchgl %eax, (%rbx)
+# CHECK-NEXT: 2 5 0.50 * * lock xchgl %eax, (%rbx)
# CHECK-NEXT: 2 1 0.50 xchgq %rbx, %rax
# CHECK-NEXT: 2 1 0.50 xchgq %rbx, %rcx
# CHECK-NEXT: 2 5 0.50 * * xchgq %rax, (%rbx)
+# CHECK-NEXT: 2 5 0.50 * * lock xchgq %rax, (%rbx)
# CHECK-NEXT: 1 100 0.25 * xlatb
# CHECK-NEXT: 1 1 0.25 xorb $7, %al
# CHECK-NEXT: 1 1 0.25 xorb $7, %dil
# CHECK-NEXT: 2 5 0.50 * * xorb $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorb $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorb %sil, %dil
# CHECK-NEXT: 2 5 0.50 * * xorb %sil, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorb %sil, (%rax)
# CHECK-NEXT: 2 5 0.50 * xorb (%rax), %dil
# CHECK-NEXT: 1 1 0.25 xorw $511, %ax
# CHECK-NEXT: 1 1 0.25 xorw $511, %di
# CHECK-NEXT: 2 5 0.50 * * xorw $511, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorw $511, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw $7, %di
# CHECK-NEXT: 2 5 0.50 * * xorw $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorw $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorw %si, %di
# CHECK-NEXT: 2 5 0.50 * * xorw %si, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorw %si, (%rax)
# CHECK-NEXT: 2 5 0.50 * xorw (%rax), %di
# CHECK-NEXT: 1 1 0.25 xorl $665536, %eax
# CHECK-NEXT: 1 1 0.25 xorl $665536, %edi
# CHECK-NEXT: 2 5 0.50 * * xorl $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorl $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl $7, %edi
# CHECK-NEXT: 2 5 0.50 * * xorl $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorl $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorl %esi, %edi
# CHECK-NEXT: 2 5 0.50 * * xorl %esi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorl %esi, (%rax)
# CHECK-NEXT: 2 5 0.50 * xorl (%rax), %edi
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rax
# CHECK-NEXT: 1 1 0.25 xorq $665536, %rdi
# CHECK-NEXT: 2 5 0.50 * * xorq $665536, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorq $665536, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq $7, %rdi
# CHECK-NEXT: 2 5 0.50 * * xorq $7, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorq $7, (%rax)
# CHECK-NEXT: 1 1 0.25 xorq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * xorq %rsi, (%rax)
+# CHECK-NEXT: 2 5 0.50 * * lock xorq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * xorq (%rax), %rdi
# CHECK: Resources:
@@ -1703,111 +1957,148 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]
-# CHECK-NEXT: 171.50 171.50 160.75 194.75 176.75 160.75 392.00 - - - - 34.00
+# CHECK-NEXT: 233.00 233.00 191.50 225.50 207.50 191.50 392.00 - - - - 34.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] Instructions:
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcb $0, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcb $0, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcb $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcb $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw $0, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw $0, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcw $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcw $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl $0, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl $0, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcl $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcl $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq $0, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq $0, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcq $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcq $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - adcq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock adcq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - adcq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - addq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock addq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - addq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - andq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock andq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - andq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - bsfw %si, %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - bsrw %si, %di
@@ -1831,6 +2122,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsw %si, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btcw $7, %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btrw $7, %di
@@ -1839,6 +2133,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcw $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrw $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btcl %esi, %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btrl %esi, %edi
@@ -1847,6 +2144,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsl %esi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btcl $7, %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btrl $7, %edi
@@ -1855,6 +2155,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcl $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrl $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btcq %rsi, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btrq %rsi, %rdi
@@ -1863,6 +2166,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsq %rsi, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btcq $7, %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - btrq $7, %rdi
@@ -1871,6 +2177,9 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btcq $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btrq $7, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - btsq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btcq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btrq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock btsq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - cbtw
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - cwtl
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - cltq
@@ -1929,12 +2238,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - cpuid
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - decb %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - decb (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock decb (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - decw %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - decw (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock decw (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - decl %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - decl (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock decl (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - decq %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - decq (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock decq (%rax)
# CHECK-NEXT: - - - - 1.00 - 15.00 - - - - - divb %dil
# CHECK-NEXT: 0.50 0.50 - - 1.00 - 15.00 - - - - - divb (%rax)
# CHECK-NEXT: - - - - 1.00 - 17.00 - - - - - divw %si
@@ -1986,12 +2299,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - inl %dx, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - incb %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - incb (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock incb (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - incw %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - incw (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock incw (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - incl %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - incl (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock incl (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - incq %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - incq (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock incq (%rax)
# CHECK-NEXT: - - - - - - - - - - - - insb %dx, %es:(%rdi)
# CHECK-NEXT: - - - - - - - - - - - - insw %dx, %es:(%rdi)
# CHECK-NEXT: - - - - - - - - - - - - insl %dx, %es:(%rdi)
@@ -2040,12 +2357,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 - 1.00 - - - - - - - 1.00 mulq (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - negb %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - negb (%r8)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock negb (%r8)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - negw %si
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - negw (%r9)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock negw (%r9)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - negl %edx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - negl (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock negl (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - negq %rcx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - negq (%r10)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock negq (%r10)
# CHECK-NEXT: - - - - - - - - - - - - nop
# CHECK-NEXT: - - - - - - - - - - - - nopw %di
# CHECK-NEXT: - - - - - - - - - - - - nopw (%rcx)
@@ -2055,41 +2376,56 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - nopq (%r9)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - notb %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - notb (%r8)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock notb (%r8)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - notw %si
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - notw (%r9)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock notw (%r9)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - notl %edx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - notl (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock notl (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - notq %rcx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - notq (%r10)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock notq (%r10)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - orq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock orq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - orq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - outb %al, $7
# CHECK-NEXT: - - - - - - - - - - - - outb %al, %dx
@@ -2277,44 +2613,59 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbb $0, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbb $0, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbb $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbb $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw $0, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw $0, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbw $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbw $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl $0, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl $0, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbl $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbl $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq $0, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq $0, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbq $0, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbq $0, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - sbbq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock sbbq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - sbbq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - scasb %es:(%rdi), %al
# CHECK-NEXT: - - - - - - - - - - - - scasw %es:(%rdi), %ax
@@ -2385,32 +2736,43 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - subq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock subq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - subq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - testb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - testb $7, %dil
@@ -2442,51 +2804,70 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - wrmsr
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xaddb %bl, %cl
# CHECK-NEXT: - - - - - - - - - - - - xaddb %bl, (%rcx)
+# CHECK-NEXT: - - - - - - - - - - - - lock xaddb %bl, (%rcx)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xaddw %bx, %cx
# CHECK-NEXT: - - - - - - - - - - - - xaddw %ax, (%rbx)
+# CHECK-NEXT: - - - - - - - - - - - - lock xaddw %ax, (%rbx)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xaddl %ebx, %ecx
# CHECK-NEXT: - - - - - - - - - - - - xaddl %eax, (%rbx)
+# CHECK-NEXT: - - - - - - - - - - - - lock xaddl %eax, (%rbx)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xaddq %rbx, %rcx
# CHECK-NEXT: - - - - - - - - - - - - xaddq %rax, (%rbx)
+# CHECK-NEXT: - - - - - - - - - - - - lock xaddq %rax, (%rbx)
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgb %bl, %cl
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xchgb %bl, (%rbx)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xchgb %bl, (%rbx)
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgw %bx, %ax
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgw %bx, %cx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xchgw %ax, (%rbx)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xchgw %ax, (%rbx)
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgl %ebx, %eax
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgl %ebx, %ecx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xchgl %eax, (%rbx)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xchgl %eax, (%rbx)
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgq %rbx, %rax
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - - - - - - xchgq %rbx, %rcx
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xchgq %rax, (%rbx)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xchgq %rax, (%rbx)
# CHECK-NEXT: - - - - - - - - - - - - xlatb
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorb $7, %al
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorb $7, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorb $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorb $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorb %sil, %dil
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorb %sil, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorb %sil, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorb (%rax), %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorw $511, %ax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorw $511, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorw $511, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorw $511, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorw $7, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorw $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorw $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorw %si, %di
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorw %si, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorw %si, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorw (%rax), %di
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorl $665536, %eax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorl $665536, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorl $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorl $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorl $7, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorl $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorl $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorl %esi, %edi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorl %esi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorl %esi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorl (%rax), %edi
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorq $665536, %rax
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorq $665536, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorq $665536, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorq $665536, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorq $7, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorq $7, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorq $7, (%rax)
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - xorq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorq %rsi, (%rax)
+# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - lock xorq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - xorq (%rax), %rdi
More information about the llvm-commits
mailing list