[llvm] r338563 - [llvm-mca][x86] Add more x86-64 system instruction resource tests
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 1 07:18:09 PDT 2018
Author: rksimon
Date: Wed Aug 1 07:18:09 2018
New Revision: 338563
URL: http://llvm.org/viewvc/llvm-project?rev=338563&view=rev
Log:
[llvm-mca][x86] Add more x86-64 system instruction resource tests
CPUID, IN/OUT, INS/OUTS, INT, PAUSE, SCAS, UD2, XLAT
Modified:
llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/Generic/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/SLM/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s
llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s
Modified: llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 3 1.50 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 3 1.50 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 3 1.50 U cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 1 121 60.50 U cpuid
# CHECK-NEXT: 1 1 0.50 decb %dil
# CHECK-NEXT: 1 1 1.00 * * decb (%rax)
# CHECK-NEXT: 1 1 0.50 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 14 7.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 14 7.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 1 14 7.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 92 46.00 U inb $7, %al
+# CHECK-NEXT: 1 94 47.00 U inb %dx, %al
+# CHECK-NEXT: 1 92 46.00 U inw $7, %ax
+# CHECK-NEXT: 1 94 47.00 U inw %dx, %ax
+# CHECK-NEXT: 1 92 46.00 U inl $7, %eax
+# CHECK-NEXT: 1 94 47.00 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.50 incb %dil
# CHECK-NEXT: 1 1 1.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.50 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.50 incq %rdi
# CHECK-NEXT: 1 1 1.00 * * incq (%rax)
+# CHECK-NEXT: 1 59 29.50 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 1 59 29.50 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 1 59 29.50 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 127 63.50 * * U int $7
# CHECK-NEXT: 1 2 1.00 lahf
# CHECK-NEXT: 1 2 1.00 U lodsb (%rsi), %al
# CHECK-NEXT: 1 2 1.00 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 orq %rsi, %rdi
# CHECK-NEXT: 1 1 1.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 1 1 1.00 * orq (%rax), %rdi
+# CHECK-NEXT: 1 72 36.00 U outb %al, $7
+# CHECK-NEXT: 1 68 34.00 U outb %al, %dx
+# CHECK-NEXT: 1 72 36.00 U outw %ax, $7
+# CHECK-NEXT: 1 68 34.00 U outw %ax, %dx
+# CHECK-NEXT: 1 72 36.00 U outl %eax, $7
+# CHECK-NEXT: 1 68 34.00 U outl %eax, %dx
+# CHECK-NEXT: 1 74 37.00 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 74 37.00 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 74 37.00 U outsl (%rsi), %dx
+# CHECK-NEXT: 1 17 8.50 * * U pause
# CHECK-NEXT: 1 1 1.00 rclb %dil
# CHECK-NEXT: 1 1 1.00 rcrb %dil
# CHECK-NEXT: 1 1 1.00 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 1 1 1.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 1 1 1.00 * sbbq (%rax), %rdi
+# CHECK-NEXT: 1 2 1.00 U scasb %es:(%rdi), %al
+# CHECK-NEXT: 1 2 1.00 U scasw %es:(%rdi), %ax
+# CHECK-NEXT: 1 2 1.00 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 1 2 1.00 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 1 6 3.00 shldw %cl, %si, %di
# CHECK-NEXT: 1 6 3.00 shrdw %cl, %si, %di
# CHECK-NEXT: 1 6 3.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 subq %rsi, %rdi
# CHECK-NEXT: 1 1 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 1 1 1.00 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.50 * U ud2
+# CHECK-NEXT: 1 6 3.00 * xlatb
# CHECK-NEXT: 1 1 0.50 xorb $7, %al
# CHECK-NEXT: 1 1 0.50 xorb $7, %dil
# CHECK-NEXT: 1 1 1.00 * * xorb $7, (%rax)
@@ -1363,7 +1427,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1]
-# CHECK-NEXT: 1447.00 1117.00
+# CHECK-NEXT: 2275.50 1945.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] Instructions:
@@ -1562,6 +1626,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1.50 1.50 cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1.50 1.50 cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1.50 1.50 cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 60.50 60.50 cpuid
# CHECK-NEXT: 0.50 0.50 decb %dil
# CHECK-NEXT: 1.00 - decb (%rax)
# CHECK-NEXT: 0.50 0.50 decw %di
@@ -1612,6 +1677,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 7.00 7.00 imulq $665536, (%rax), %rdi
# CHECK-NEXT: 7.00 7.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 7.00 7.00 imulq $7, (%rax), %rdi
+# CHECK-NEXT: 46.00 46.00 inb $7, %al
+# CHECK-NEXT: 47.00 47.00 inb %dx, %al
+# CHECK-NEXT: 46.00 46.00 inw $7, %ax
+# CHECK-NEXT: 47.00 47.00 inw %dx, %ax
+# CHECK-NEXT: 46.00 46.00 inl $7, %eax
+# CHECK-NEXT: 47.00 47.00 inl %dx, %eax
# CHECK-NEXT: 0.50 0.50 incb %dil
# CHECK-NEXT: 1.00 - incb (%rax)
# CHECK-NEXT: 0.50 0.50 incw %di
@@ -1620,6 +1691,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1.00 - incl (%rax)
# CHECK-NEXT: 0.50 0.50 incq %rdi
# CHECK-NEXT: 1.00 - incq (%rax)
+# CHECK-NEXT: 29.50 29.50 insb %dx, %es:(%rdi)
+# CHECK-NEXT: 29.50 29.50 insw %dx, %es:(%rdi)
+# CHECK-NEXT: 29.50 29.50 insl %dx, %es:(%rdi)
+# CHECK-NEXT: 63.50 63.50 int $7
# CHECK-NEXT: 1.00 1.00 lahf
# CHECK-NEXT: 1.00 1.00 lodsb (%rsi), %al
# CHECK-NEXT: 1.00 1.00 lodsw (%rsi), %ax
@@ -1712,6 +1787,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 orq %rsi, %rdi
# CHECK-NEXT: 1.00 - orq %rsi, (%rax)
# CHECK-NEXT: 1.00 - orq (%rax), %rdi
+# CHECK-NEXT: 36.00 36.00 outb %al, $7
+# CHECK-NEXT: 34.00 34.00 outb %al, %dx
+# CHECK-NEXT: 36.00 36.00 outw %ax, $7
+# CHECK-NEXT: 34.00 34.00 outw %ax, %dx
+# CHECK-NEXT: 36.00 36.00 outl %eax, $7
+# CHECK-NEXT: 34.00 34.00 outl %eax, %dx
+# CHECK-NEXT: 37.00 37.00 outsb (%rsi), %dx
+# CHECK-NEXT: 37.00 37.00 outsw (%rsi), %dx
+# CHECK-NEXT: 37.00 37.00 outsl (%rsi), %dx
+# CHECK-NEXT: 8.50 8.50 pause
# CHECK-NEXT: 1.00 - rclb %dil
# CHECK-NEXT: 1.00 - rcrb %dil
# CHECK-NEXT: 1.00 - rclb (%rax)
@@ -1911,6 +1996,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 1.00 - sbbq %rsi, (%rax)
# CHECK-NEXT: 1.00 - sbbq (%rax), %rdi
+# CHECK-NEXT: 1.00 1.00 scasb %es:(%rdi), %al
+# CHECK-NEXT: 1.00 1.00 scasw %es:(%rdi), %ax
+# CHECK-NEXT: 1.00 1.00 scasl %es:(%rdi), %eax
+# CHECK-NEXT: 1.00 1.00 scasq %es:(%rdi), %rax
# CHECK-NEXT: 3.00 3.00 shldw %cl, %si, %di
# CHECK-NEXT: 3.00 3.00 shrdw %cl, %si, %di
# CHECK-NEXT: 3.00 3.00 shldw %cl, %si, (%rax)
@@ -1971,6 +2060,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 subq %rsi, %rdi
# CHECK-NEXT: 1.00 - subq %rsi, (%rax)
# CHECK-NEXT: 1.00 - subq (%rax), %rdi
+# CHECK-NEXT: 0.50 0.50 ud2
+# CHECK-NEXT: 3.00 3.00 xlatb
# CHECK-NEXT: 0.50 0.50 xorb $7, %al
# CHECK-NEXT: 0.50 0.50 xorb $7, %dil
# CHECK-NEXT: 1.00 - xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsq %es:(%rdi), (%rsi)
+# 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: 1 1 0.25 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 23 34 5.00 U inb $7, %al
+# CHECK-NEXT: 23 34 5.00 U inb %dx, %al
+# CHECK-NEXT: 23 34 5.00 U inw $7, %ax
+# CHECK-NEXT: 23 34 5.00 U inw %dx, %ax
+# CHECK-NEXT: 23 34 5.00 U inl $7, %eax
+# CHECK-NEXT: 23 34 5.00 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.25 incb %dil
# CHECK-NEXT: 3 7 1.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.25 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * 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)
+# CHECK-NEXT: 1 100 0.25 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 1 100 0.25 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 0.25 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * 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
+# CHECK-NEXT: 23 35 5.00 U outw %ax, $7
+# CHECK-NEXT: 23 35 5.00 U outw %ax, %dx
+# CHECK-NEXT: 23 35 5.00 U outl %eax, $7
+# CHECK-NEXT: 23 35 5.00 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.25 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsl (%rsi), %dx
+# CHECK-NEXT: 5 5 1.25 * * U pause
# CHECK-NEXT: 3 3 0.75 rclb %dil
# CHECK-NEXT: 3 3 0.75 rcrb %dil
# CHECK-NEXT: 5 8 0.75 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 6 8 1.00 * * 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
+# CHECK-NEXT: 3 7 0.50 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 3 7 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 6 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 4 6 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 6 11 1.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 * U ud2
+# 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)
@@ -1371,7 +1435,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: 50.00 - 382.50 273.00 219.33 219.33 171.00 166.50 350.00 70.33
+# CHECK-NEXT: 50.00 - 445.50 310.00 241.33 241.33 174.00 219.50 478.00 73.33
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -1570,6 +1634,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsq %es:(%rdi), (%rsi)
+# 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.25 0.25 - decw %di
@@ -1620,6 +1685,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb $7, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb %dx, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw $7, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw %dx, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inl $7, %eax
+# 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.25 0.25 - incw %di
@@ -1628,6 +1699,10 @@ xorq (%rax), %rdi
# 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.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: - - 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)
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - int $7
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - lahf
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsb (%rsi), %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsw (%rsi), %ax
@@ -1720,6 +1795,16 @@ xorq (%rax), %rdi
# 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.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
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsl (%rsi), %dx
+# CHECK-NEXT: - - 1.00 1.00 - - - 1.00 2.00 - pause
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rclb %dil
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rcrb %dil
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 rclb (%rax)
@@ -1919,6 +2004,10 @@ xorq (%rax), %rdi
# 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: - - 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
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.00 1.50 - - - 0.50 1.00 - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.00 1.50 - - - 0.50 1.00 - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.00 1.50 0.83 0.83 - 0.50 1.00 0.33 shldw %cl, %si, (%rax)
@@ -1979,6 +2068,8 @@ xorq (%rax), %rdi
# 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.50 0.50 - 0.25 0.25 - subq (%rax), %rdi
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - ud2
+# 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)
Modified: llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.50 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.50 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.50 U cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 1 100 0.50 U cpuid
# CHECK-NEXT: 1 1 0.50 decb %dil
# CHECK-NEXT: 2 5 1.00 * * decb (%rax)
# CHECK-NEXT: 1 1 0.50 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 9 4.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 2 6 4.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 9 4.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 100 0.50 U inb $7, %al
+# CHECK-NEXT: 1 100 0.50 U inb %dx, %al
+# CHECK-NEXT: 1 100 0.50 U inw $7, %ax
+# CHECK-NEXT: 1 100 0.50 U inw %dx, %ax
+# CHECK-NEXT: 1 100 0.50 U inl $7, %eax
+# CHECK-NEXT: 1 100 0.50 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.50 incb %dil
# CHECK-NEXT: 2 5 1.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.50 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 5 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.50 incq %rdi
# CHECK-NEXT: 2 5 1.00 * * incq (%rax)
+# CHECK-NEXT: 1 100 0.50 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.50 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.50 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.50 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 1 100 0.50 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 0.50 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 orq %rsi, %rdi
# CHECK-NEXT: 2 5 1.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * orq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.50 U outb %al, $7
+# CHECK-NEXT: 1 100 0.50 U outb %al, %dx
+# CHECK-NEXT: 1 100 0.50 U outw %ax, $7
+# CHECK-NEXT: 1 100 0.50 U outw %ax, %dx
+# CHECK-NEXT: 1 100 0.50 U outl %eax, $7
+# CHECK-NEXT: 1 100 0.50 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.50 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.50 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.50 U outsl (%rsi), %dx
+# CHECK-NEXT: 1 1 0.50 * * U pause
# CHECK-NEXT: 1 1 0.50 rclb %dil
# CHECK-NEXT: 1 1 0.50 rcrb %dil
# CHECK-NEXT: 2 4 1.00 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 1.00 sbbq %rsi, %rdi
# CHECK-NEXT: 2 5 1.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * sbbq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.50 U scasb %es:(%rdi), %al
+# CHECK-NEXT: 1 100 0.50 U scasw %es:(%rdi), %ax
+# CHECK-NEXT: 1 100 0.50 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 1 100 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 7 4 4.00 shldw %cl, %si, %di
# CHECK-NEXT: 7 4 4.00 shrdw %cl, %si, %di
# CHECK-NEXT: 8 9 11.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 subq %rsi, %rdi
# CHECK-NEXT: 2 5 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.50 * U ud2
+# CHECK-NEXT: 1 5 1.00 * xlatb
# CHECK-NEXT: 1 1 0.50 xorb $7, %al
# CHECK-NEXT: 1 1 0.50 xorb $7, %dil
# CHECK-NEXT: 2 5 1.00 * * xorb $7, (%rax)
@@ -1375,7 +1439,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13]
-# CHECK-NEXT: 502.00 552.00 380.00 - - - - 295.00 64.00 195.00 - - - -
+# CHECK-NEXT: 515.00 565.00 380.00 - - - - 296.00 64.00 195.00 - - - -
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Instructions:
@@ -1574,6 +1638,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - cpuid
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - decb %dil
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - decb (%rax)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - decw %di
@@ -1624,6 +1689,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - 1.00 - - - - - 1.00 4.00 - - - - - imulq $665536, (%rax), %rdi
# CHECK-NEXT: - 1.00 - - - - - - 4.00 - - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - 1.00 - - - - - 1.00 4.00 - - - - - imulq $7, (%rax), %rdi
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inb $7, %al
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inb %dx, %al
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inw $7, %ax
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inw %dx, %ax
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inl $7, %eax
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - inl %dx, %eax
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - incb %dil
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - incb (%rax)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - incw %di
@@ -1632,6 +1703,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - incl (%rax)
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - incq %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - incq (%rax)
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - insb %dx, %es:(%rdi)
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - insw %dx, %es:(%rdi)
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - int $7
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - lahf
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - lodsb (%rsi), %al
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - lodsw (%rsi), %ax
@@ -1724,6 +1799,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - orq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - orq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - - orq (%rax), %rdi
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outb %al, $7
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outb %al, %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outw %ax, $7
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outw %ax, %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outl %eax, $7
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outl %eax, %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outsb (%rsi), %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outsw (%rsi), %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - outsl (%rsi), %dx
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - pause
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - rclb %dil
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - rcrb %dil
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - rclb (%rax)
@@ -1923,6 +2008,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1.00 1.00 - - - - - - - - - - - - sbbq %rsi, %rdi
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - 1.00 - - - - sbbq %rsi, (%rax)
# CHECK-NEXT: 1.00 1.00 - - - - - 1.00 - - - - - - sbbq (%rax), %rdi
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - scasb %es:(%rdi), %al
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - scasw %es:(%rdi), %ax
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - scasl %es:(%rdi), %eax
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - scasq %es:(%rdi), %rax
# CHECK-NEXT: 4.00 4.00 - - - - - - - - - - - - shldw %cl, %si, %di
# CHECK-NEXT: 4.00 4.00 - - - - - - - - - - - - shrdw %cl, %si, %di
# CHECK-NEXT: 11.00 11.00 - - - - - 1.00 - - - - - - shldw %cl, %si, (%rax)
@@ -1983,6 +2072,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - subq %rsi, %rdi
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - subq %rsi, (%rax)
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - - - - - - subq (%rax), %rdi
+# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - ud2
+# CHECK-NEXT: - - - - - - - 1.00 - - - - - - xlatb
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - xorb $7, %al
# CHECK-NEXT: 0.50 0.50 - - - - - - - - - - - - xorb $7, %dil
# CHECK-NEXT: 0.50 0.50 - - - - - 1.00 - 1.00 - - - - xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/Generic/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Generic/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Generic/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/Generic/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 5 8 1.00 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 8 1.00 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 8 1.00 U cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 1 100 0.33 U cpuid
# CHECK-NEXT: 1 1 0.33 decb %dil
# CHECK-NEXT: 3 7 1.00 * * decb (%rax)
# CHECK-NEXT: 1 1 0.33 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 U inb $7, %al
+# CHECK-NEXT: 1 100 0.33 U inb %dx, %al
+# CHECK-NEXT: 1 100 0.33 U inw $7, %ax
+# CHECK-NEXT: 1 100 0.33 U inw %dx, %ax
+# CHECK-NEXT: 1 100 0.33 U inl $7, %eax
+# CHECK-NEXT: 1 100 0.33 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.33 incb %dil
# CHECK-NEXT: 3 7 1.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.33 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.33 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * incq (%rax)
+# CHECK-NEXT: 1 100 0.33 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 3 7 0.67 U lodsb (%rsi), %al
# CHECK-NEXT: 3 7 0.67 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.33 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 U outb %al, $7
+# CHECK-NEXT: 1 100 0.33 U outb %al, %dx
+# CHECK-NEXT: 1 100 0.33 U outw %ax, $7
+# CHECK-NEXT: 1 100 0.33 U outw %ax, %dx
+# CHECK-NEXT: 1 100 0.33 U outl %eax, $7
+# CHECK-NEXT: 1 100 0.33 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.33 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.33 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.33 U outsl (%rsi), %dx
+# CHECK-NEXT: 4 4 1.33 * * U pause
# CHECK-NEXT: 1 1 0.50 rclb %dil
# CHECK-NEXT: 1 1 0.50 rcrb %dil
# CHECK-NEXT: 3 6 1.00 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 2 0.67 sbbq %rsi, %rdi
# CHECK-NEXT: 6 9 1.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 3 7 0.67 * sbbq (%rax), %rdi
+# CHECK-NEXT: 2 2 0.67 U scasb %es:(%rdi), %al
+# CHECK-NEXT: 2 2 0.67 U scasw %es:(%rdi), %ax
+# CHECK-NEXT: 2 2 0.67 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 2 2 0.67 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 4 1.50 shldw %cl, %si, %di
# CHECK-NEXT: 4 4 1.50 shrdw %cl, %si, %di
# CHECK-NEXT: 7 10 1.50 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.33 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 * U ud2
+# CHECK-NEXT: 1 5 0.50 * xlatb
# CHECK-NEXT: 1 1 0.33 xorb $7, %al
# CHECK-NEXT: 1 1 0.33 xorb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * xorb $7, (%rax)
@@ -1369,7 +1433,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
-# CHECK-NEXT: 160.00 - 376.17 181.67 218.00 367.17 266.00 266.00
+# CHECK-NEXT: 160.00 - 386.83 192.33 218.00 378.83 266.50 266.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -1568,6 +1632,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - cpuid
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - decb %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 decb (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - decw %di
@@ -1618,6 +1683,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inb $7, %al
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inb %dx, %al
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inw $7, %ax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inw %dx, %ax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inl $7, %eax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inl %dx, %eax
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incb %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incb (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incw %di
@@ -1626,6 +1697,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incl (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incq %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incq (%rax)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insb %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insw %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - int $7
# CHECK-NEXT: - - 0.50 - - 0.50 - - lahf
# CHECK-NEXT: - - 0.67 0.67 - 0.67 0.50 0.50 lodsb (%rsi), %al
# CHECK-NEXT: - - 0.67 0.67 - 0.67 0.50 0.50 lodsw (%rsi), %ax
@@ -1718,6 +1793,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - orq %rsi, %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 orq %rsi, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 orq (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outb %al, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outb %al, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outw %ax, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outw %ax, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outl %eax, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outl %eax, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsl (%rsi), %dx
+# CHECK-NEXT: - - 1.00 1.00 - 2.00 - - pause
# CHECK-NEXT: - - 0.50 - - 0.50 - - rclb %dil
# CHECK-NEXT: - - 0.50 - - 0.50 - - rcrb %dil
# CHECK-NEXT: - - 0.50 - 1.00 0.50 1.00 1.00 rclb (%rax)
@@ -1917,6 +2002,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.83 0.33 - 0.83 - - sbbq %rsi, %rdi
# CHECK-NEXT: - - 1.33 0.33 1.00 1.33 1.00 1.00 sbbq %rsi, (%rax)
# CHECK-NEXT: - - 0.83 0.33 - 0.83 0.50 0.50 sbbq (%rax), %rdi
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasb %es:(%rdi), %al
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasw %es:(%rdi), %ax
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.83 0.33 - 1.83 - - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.83 0.33 - 1.83 - - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.83 0.33 1.00 1.83 1.00 1.00 shldw %cl, %si, (%rax)
@@ -1977,6 +2066,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - subq %rsi, %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 subq %rsi, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 subq (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - ud2
+# CHECK-NEXT: - - - - - - 0.50 0.50 xlatb
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - xorb $7, %al
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - xorb $7, %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 5 4 1.00 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 4 1.00 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 4 1.00 U cmpsq %es:(%rdi), (%rsi)
+# 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: 1 1 0.25 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 23 35 5.00 U inb $7, %al
+# CHECK-NEXT: 23 35 5.00 U inb %dx, %al
+# CHECK-NEXT: 23 35 5.00 U inw $7, %ax
+# CHECK-NEXT: 23 35 5.00 U inw %dx, %ax
+# CHECK-NEXT: 23 35 5.00 U inl $7, %eax
+# 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: 1 1 0.25 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * incq (%rax)
+# CHECK-NEXT: 8 21 1.25 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 8 21 1.25 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 8 21 1.25 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.25 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 3 1 0.50 U lodsb (%rsi), %al
# CHECK-NEXT: 3 1 0.50 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orq (%rax), %rdi
+# CHECK-NEXT: 23 36 5.00 U outb %al, $7
+# CHECK-NEXT: 23 36 5.00 U outb %al, %dx
+# CHECK-NEXT: 23 36 5.00 U outw %ax, $7
+# CHECK-NEXT: 23 36 5.00 U outw %ax, %dx
+# CHECK-NEXT: 23 36 5.00 U outl %eax, $7
+# CHECK-NEXT: 23 36 5.00 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.25 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsl (%rsi), %dx
+# CHECK-NEXT: 5 5 1.25 * * U pause
# CHECK-NEXT: 3 3 0.75 rclb %dil
# CHECK-NEXT: 3 3 0.75 rcrb %dil
# CHECK-NEXT: 5 9 0.75 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 2 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 6 9 1.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 3 7 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
+# CHECK-NEXT: 3 7 0.50 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 3 7 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 6 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 4 6 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 6 12 1.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 * U ud2
+# CHECK-NEXT: 3 7 0.75 * 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)
@@ -1371,7 +1435,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: 80.00 - 437.00 297.50 220.33 220.33 166.00 193.00 433.50 67.33
+# CHECK-NEXT: 80.00 - 500.00 334.50 241.83 241.83 169.00 246.00 561.50 70.33
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -1570,6 +1634,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.75 0.75 1.00 1.00 - 0.75 0.75 - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.75 0.75 1.00 1.00 - 0.75 0.75 - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.75 0.75 1.00 1.00 - 0.75 0.75 - cmpsq %es:(%rdi), (%rsi)
+# 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.25 0.25 - decw %di
@@ -1620,6 +1685,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb $7, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb %dx, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw $7, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw %dx, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inl $7, %eax
+# 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.25 0.25 - incw %di
@@ -1628,6 +1699,10 @@ xorq (%rax), %rdi
# 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.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: - - 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)
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - int $7
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - lahf
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - lodsb (%rsi), %al
# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - lodsw (%rsi), %ax
@@ -1720,6 +1795,16 @@ xorq (%rax), %rdi
# 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.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
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsl (%rsi), %dx
+# CHECK-NEXT: - - 1.00 1.00 - - - 1.00 2.00 - pause
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rclb %dil
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rcrb %dil
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 rclb (%rax)
@@ -1919,6 +2004,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.75 0.25 - - - 0.25 0.75 - 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: - - 0.75 0.25 0.50 0.50 - 0.25 0.75 - 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
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.00 1.50 - - - 0.50 1.00 - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.00 1.50 - - - 0.50 1.00 - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.00 1.50 0.83 0.83 - 0.50 1.00 0.33 shldw %cl, %si, (%rax)
@@ -1979,6 +2068,8 @@ xorq (%rax), %rdi
# 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.50 0.50 - 0.25 0.25 - subq (%rax), %rdi
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - ud2
+# 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.25 0.25 0.83 0.83 1.00 0.25 0.25 0.33 xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/SLM/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SLM/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SLM/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/SLM/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 1.00 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 1.00 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 1.00 U cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 1 100 1.00 U cpuid
# CHECK-NEXT: 1 1 0.50 decb %dil
# CHECK-NEXT: 2 5 2.00 * * decb (%rax)
# CHECK-NEXT: 1 1 0.50 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 6 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 1 6 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 100 1.00 U inb $7, %al
+# CHECK-NEXT: 1 100 1.00 U inb %dx, %al
+# CHECK-NEXT: 1 100 1.00 U inw $7, %ax
+# CHECK-NEXT: 1 100 1.00 U inw %dx, %ax
+# CHECK-NEXT: 1 100 1.00 U inl $7, %eax
+# CHECK-NEXT: 1 100 1.00 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.50 incb %dil
# CHECK-NEXT: 2 5 2.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.50 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 5 2.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.50 incq %rdi
# CHECK-NEXT: 2 5 2.00 * * incq (%rax)
+# CHECK-NEXT: 1 100 1.00 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 1.00 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 1.00 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 1.00 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 1 100 1.00 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 1.00 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 orq %rsi, %rdi
# CHECK-NEXT: 2 5 2.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * orq (%rax), %rdi
+# CHECK-NEXT: 1 100 1.00 U outb %al, $7
+# CHECK-NEXT: 1 100 1.00 U outb %al, %dx
+# CHECK-NEXT: 1 100 1.00 U outw %ax, $7
+# CHECK-NEXT: 1 100 1.00 U outw %ax, %dx
+# CHECK-NEXT: 1 100 1.00 U outl %eax, $7
+# CHECK-NEXT: 1 100 1.00 U outl %eax, %dx
+# CHECK-NEXT: 1 100 1.00 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 1.00 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 1.00 U outsl (%rsi), %dx
+# CHECK-NEXT: 1 1 0.50 * * U pause
# CHECK-NEXT: 1 1 1.00 rclb %dil
# CHECK-NEXT: 1 1 1.00 rcrb %dil
# CHECK-NEXT: 2 4 2.00 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 2 5 2.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * sbbq (%rax), %rdi
+# CHECK-NEXT: 1 100 1.00 U scasb %es:(%rdi), %al
+# CHECK-NEXT: 1 100 1.00 U scasw %es:(%rdi), %ax
+# CHECK-NEXT: 1 100 1.00 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 1 100 1.00 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 1 1 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 1 1 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 2 4 2.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 subq %rsi, %rdi
# CHECK-NEXT: 2 5 2.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 1 4 1.00 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 1.00 * U ud2
+# CHECK-NEXT: 1 3 1.00 * xlatb
# CHECK-NEXT: 1 1 0.50 xorb $7, %al
# CHECK-NEXT: 1 1 0.50 xorb $7, %dil
# CHECK-NEXT: 2 5 2.00 * * xorb $7, (%rax)
@@ -1369,7 +1433,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7]
-# CHECK-NEXT: 400.00 - - 16.00 - 545.00 387.00 502.00
+# CHECK-NEXT: 400.00 - - 41.00 - 545.00 387.00 503.00
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] Instructions:
@@ -1568,6 +1632,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - - 1.00 - - - - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - - 1.00 - - - - cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: - - - 1.00 - - - - cpuid
# CHECK-NEXT: - - - - - 0.50 0.50 - decb %dil
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 decb (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 - decw %di
@@ -1618,6 +1683,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - 1.00 1.00 imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - - - - 1.00 - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - - - - 1.00 1.00 imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - - 1.00 - - - - inb $7, %al
+# CHECK-NEXT: - - - 1.00 - - - - inb %dx, %al
+# CHECK-NEXT: - - - 1.00 - - - - inw $7, %ax
+# CHECK-NEXT: - - - 1.00 - - - - inw %dx, %ax
+# CHECK-NEXT: - - - 1.00 - - - - inl $7, %eax
+# CHECK-NEXT: - - - 1.00 - - - - inl %dx, %eax
# CHECK-NEXT: - - - - - 0.50 0.50 - incb %dil
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 incb (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 - incw %di
@@ -1626,6 +1697,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 incl (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 - incq %rdi
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 incq (%rax)
+# CHECK-NEXT: - - - 1.00 - - - - insb %dx, %es:(%rdi)
+# CHECK-NEXT: - - - 1.00 - - - - insw %dx, %es:(%rdi)
+# CHECK-NEXT: - - - 1.00 - - - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: - - - 1.00 - - - - int $7
# CHECK-NEXT: - - - - - 0.50 0.50 - lahf
# CHECK-NEXT: - - - 1.00 - - - - lodsb (%rsi), %al
# CHECK-NEXT: - - - 1.00 - - - - lodsw (%rsi), %ax
@@ -1718,6 +1793,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - 0.50 0.50 - orq %rsi, %rdi
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 orq %rsi, (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 1.00 orq (%rax), %rdi
+# CHECK-NEXT: - - - 1.00 - - - - outb %al, $7
+# CHECK-NEXT: - - - 1.00 - - - - outb %al, %dx
+# CHECK-NEXT: - - - 1.00 - - - - outw %ax, $7
+# CHECK-NEXT: - - - 1.00 - - - - outw %ax, %dx
+# CHECK-NEXT: - - - 1.00 - - - - outl %eax, $7
+# CHECK-NEXT: - - - 1.00 - - - - outl %eax, %dx
+# CHECK-NEXT: - - - 1.00 - - - - outsb (%rsi), %dx
+# CHECK-NEXT: - - - 1.00 - - - - outsw (%rsi), %dx
+# CHECK-NEXT: - - - 1.00 - - - - outsl (%rsi), %dx
+# CHECK-NEXT: - - - - - - - - pause
# CHECK-NEXT: - - - - - 1.00 - - rclb %dil
# CHECK-NEXT: - - - - - 1.00 - - rcrb %dil
# CHECK-NEXT: - - - - - 1.00 - 2.00 rclb (%rax)
@@ -1917,6 +2002,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - 0.50 0.50 - sbbq %rsi, %rdi
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 sbbq %rsi, (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 1.00 sbbq (%rax), %rdi
+# CHECK-NEXT: - - - 1.00 - - - - scasb %es:(%rdi), %al
+# CHECK-NEXT: - - - 1.00 - - - - scasw %es:(%rdi), %ax
+# CHECK-NEXT: - - - 1.00 - - - - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - - 1.00 - - - - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - - - - 1.00 - - shldw %cl, %si, %di
# CHECK-NEXT: - - - - - 1.00 - - shrdw %cl, %si, %di
# CHECK-NEXT: - - - - - 1.00 - 2.00 shldw %cl, %si, (%rax)
@@ -1977,6 +2066,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - 0.50 0.50 - subq %rsi, %rdi
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 subq %rsi, (%rax)
# CHECK-NEXT: - - - - - 0.50 0.50 1.00 subq (%rax), %rdi
+# CHECK-NEXT: - - - 1.00 - - - - ud2
+# CHECK-NEXT: - - - - - - - 1.00 xlatb
# CHECK-NEXT: - - - - - 0.50 0.50 - xorb $7, %al
# CHECK-NEXT: - - - - - 0.50 0.50 - xorb $7, %dil
# CHECK-NEXT: - - - - - 1.00 1.00 2.00 xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 5 8 1.00 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 8 1.00 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 5 8 1.00 U cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: 1 100 0.33 U cpuid
# CHECK-NEXT: 1 1 0.33 decb %dil
# CHECK-NEXT: 3 7 1.00 * * decb (%rax)
# CHECK-NEXT: 1 1 0.33 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 U inb $7, %al
+# CHECK-NEXT: 1 100 0.33 U inb %dx, %al
+# CHECK-NEXT: 1 100 0.33 U inw $7, %ax
+# CHECK-NEXT: 1 100 0.33 U inw %dx, %ax
+# CHECK-NEXT: 1 100 0.33 U inl $7, %eax
+# CHECK-NEXT: 1 100 0.33 U inl %dx, %eax
# CHECK-NEXT: 1 1 0.33 incb %dil
# CHECK-NEXT: 3 7 1.00 * * incb (%rax)
# CHECK-NEXT: 1 1 0.33 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.33 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * incq (%rax)
+# CHECK-NEXT: 1 100 0.33 U insb %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 U insw %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 U insl %dx, %es:(%rdi)
+# CHECK-NEXT: 1 100 0.33 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 3 7 0.67 U lodsb (%rsi), %al
# CHECK-NEXT: 3 7 0.67 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.33 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * orq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * orq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 U outb %al, $7
+# CHECK-NEXT: 1 100 0.33 U outb %al, %dx
+# CHECK-NEXT: 1 100 0.33 U outw %ax, $7
+# CHECK-NEXT: 1 100 0.33 U outw %ax, %dx
+# CHECK-NEXT: 1 100 0.33 U outl %eax, $7
+# CHECK-NEXT: 1 100 0.33 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.33 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.33 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.33 U outsl (%rsi), %dx
+# CHECK-NEXT: 4 4 1.33 * * U pause
# CHECK-NEXT: 1 1 0.50 rclb %dil
# CHECK-NEXT: 1 1 0.50 rcrb %dil
# CHECK-NEXT: 3 6 1.00 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 2 0.67 sbbq %rsi, %rdi
# CHECK-NEXT: 6 9 1.00 * * sbbq %rsi, (%rax)
# CHECK-NEXT: 3 7 0.67 * sbbq (%rax), %rdi
+# CHECK-NEXT: 2 2 0.67 U scasb %es:(%rdi), %al
+# CHECK-NEXT: 2 2 0.67 U scasw %es:(%rdi), %ax
+# CHECK-NEXT: 2 2 0.67 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 2 2 0.67 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 4 1.50 shldw %cl, %si, %di
# CHECK-NEXT: 4 4 1.50 shrdw %cl, %si, %di
# CHECK-NEXT: 7 10 1.50 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.33 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.33 * U ud2
+# CHECK-NEXT: 1 5 0.50 * xlatb
# CHECK-NEXT: 1 1 0.33 xorb $7, %al
# CHECK-NEXT: 1 1 0.33 xorb $7, %dil
# CHECK-NEXT: 3 7 1.00 * * xorb $7, (%rax)
@@ -1369,7 +1433,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]
-# CHECK-NEXT: 160.00 - 376.17 181.67 218.00 367.17 266.00 266.00
+# CHECK-NEXT: 160.00 - 386.83 192.33 218.00 378.83 266.50 266.50
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
@@ -1568,6 +1632,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 1.00 1.00 - 1.00 1.00 1.00 cmpsq %es:(%rdi), (%rsi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - cpuid
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - decb %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 decb (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - decw %di
@@ -1618,6 +1683,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 - - 0.50 0.50 imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inb $7, %al
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inb %dx, %al
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inw $7, %ax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inw %dx, %ax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inl $7, %eax
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - inl %dx, %eax
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incb %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incb (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incw %di
@@ -1626,6 +1697,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incl (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - incq %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 incq (%rax)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insb %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insw %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - int $7
# CHECK-NEXT: - - 0.50 - - 0.50 - - lahf
# CHECK-NEXT: - - 0.67 0.67 - 0.67 0.50 0.50 lodsb (%rsi), %al
# CHECK-NEXT: - - 0.67 0.67 - 0.67 0.50 0.50 lodsw (%rsi), %ax
@@ -1718,6 +1793,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - orq %rsi, %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 orq %rsi, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 orq (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outb %al, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outb %al, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outw %ax, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outw %ax, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outl %eax, $7
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outl %eax, %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - outsl (%rsi), %dx
+# CHECK-NEXT: - - 1.00 1.00 - 2.00 - - pause
# CHECK-NEXT: - - 0.50 - - 0.50 - - rclb %dil
# CHECK-NEXT: - - 0.50 - - 0.50 - - rcrb %dil
# CHECK-NEXT: - - 0.50 - 1.00 0.50 1.00 1.00 rclb (%rax)
@@ -1917,6 +2002,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.83 0.33 - 0.83 - - sbbq %rsi, %rdi
# CHECK-NEXT: - - 1.33 0.33 1.00 1.33 1.00 1.00 sbbq %rsi, (%rax)
# CHECK-NEXT: - - 0.83 0.33 - 0.83 0.50 0.50 sbbq (%rax), %rdi
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasb %es:(%rdi), %al
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasw %es:(%rdi), %ax
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.67 0.67 - 0.67 - - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.83 0.33 - 1.83 - - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.83 0.33 - 1.83 - - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.83 0.33 1.00 1.83 1.00 1.00 shldw %cl, %si, (%rax)
@@ -1977,6 +2066,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - subq %rsi, %rdi
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 subq %rsi, (%rax)
# CHECK-NEXT: - - 0.33 0.33 - 0.33 0.50 0.50 subq (%rax), %rdi
+# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - ud2
+# CHECK-NEXT: - - - - - - 0.50 0.50 xlatb
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - xorb $7, %al
# CHECK-NEXT: - - 0.33 0.33 - 0.33 - - xorb $7, %dil
# CHECK-NEXT: - - 0.33 0.33 1.00 0.33 1.00 1.00 xorb $7, (%rax)
Modified: llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s?rev=338563&r1=338562&r2=338563&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsq %es:(%rdi), (%rsi)
+# 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: 1 1 0.25 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 23 35 5.00 U inb $7, %al
+# CHECK-NEXT: 23 35 5.00 U inb %dx, %al
+# CHECK-NEXT: 23 35 5.00 U inw $7, %ax
+# CHECK-NEXT: 23 35 5.00 U inw %dx, %ax
+# CHECK-NEXT: 23 35 5.00 U inl $7, %eax
+# 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: 1 1 0.25 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * 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)
+# CHECK-NEXT: 1 100 0.25 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 1 100 0.25 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 0.25 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * 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
+# CHECK-NEXT: 23 35 5.00 U outw %ax, $7
+# CHECK-NEXT: 23 35 5.00 U outw %ax, %dx
+# CHECK-NEXT: 23 35 5.00 U outl %eax, $7
+# CHECK-NEXT: 23 35 5.00 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.25 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsl (%rsi), %dx
+# CHECK-NEXT: 4 4 1.00 * * U pause
# CHECK-NEXT: 3 3 0.75 rclb %dil
# CHECK-NEXT: 3 3 0.75 rcrb %dil
# CHECK-NEXT: 5 8 0.75 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 6 8 1.00 * * 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
+# CHECK-NEXT: 3 7 0.50 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 3 7 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 6 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 4 6 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 6 11 1.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 * U ud2
+# 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)
@@ -1371,7 +1435,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: 60.00 - 450.00 254.00 219.33 219.33 171.00 202.50 436.50 70.33
+# CHECK-NEXT: 60.00 - 512.75 290.75 241.33 241.33 174.00 255.25 564.25 73.33
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -1570,6 +1634,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsq %es:(%rdi), (%rsi)
+# 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.25 0.25 - decw %di
@@ -1620,6 +1685,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb $7, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb %dx, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw $7, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw %dx, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inl $7, %eax
+# 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.25 0.25 - incw %di
@@ -1628,6 +1699,10 @@ xorq (%rax), %rdi
# 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.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: - - 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)
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - int $7
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - lahf
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsb (%rsi), %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsw (%rsi), %ax
@@ -1720,6 +1795,16 @@ xorq (%rax), %rdi
# 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.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
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsl (%rsi), %dx
+# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 1.75 - pause
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rclb %dil
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rcrb %dil
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 rclb (%rax)
@@ -1919,6 +2004,10 @@ xorq (%rax), %rdi
# 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: - - 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
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 shldw %cl, %si, (%rax)
@@ -1979,6 +2068,8 @@ xorq (%rax), %rdi
# 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.50 0.50 - 0.25 0.25 - subq (%rax), %rdi
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - ud2
+# 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)
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=338563&r1=338562&r2=338563&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 Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsq %es:(%rdi), (%rsi)
+# 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: 1 1 0.25 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 1 3 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 8 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 23 35 5.00 U inb $7, %al
+# CHECK-NEXT: 23 35 5.00 U inb %dx, %al
+# CHECK-NEXT: 23 35 5.00 U inw $7, %ax
+# CHECK-NEXT: 23 35 5.00 U inw %dx, %ax
+# CHECK-NEXT: 23 35 5.00 U inl $7, %eax
+# 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: 1 1 0.25 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 3 7 1.00 * * incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 3 7 1.00 * * 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)
+# CHECK-NEXT: 1 100 0.25 * * U int $7
# CHECK-NEXT: 1 1 0.50 lahf
# CHECK-NEXT: 1 100 0.25 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 0.25 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * 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
+# CHECK-NEXT: 23 35 5.00 U outw %ax, $7
+# CHECK-NEXT: 23 35 5.00 U outw %ax, %dx
+# CHECK-NEXT: 23 35 5.00 U outl %eax, $7
+# CHECK-NEXT: 23 35 5.00 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.25 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsl (%rsi), %dx
+# CHECK-NEXT: 4 140 1.00 * * U pause
# CHECK-NEXT: 3 3 0.75 rclb %dil
# CHECK-NEXT: 3 3 0.75 rcrb %dil
# CHECK-NEXT: 5 8 0.75 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.50 sbbq %rsi, %rdi
# CHECK-NEXT: 6 8 1.00 * * 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
+# CHECK-NEXT: 3 7 0.50 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 3 7 0.50 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 4 6 1.00 shldw %cl, %si, %di
# CHECK-NEXT: 4 6 1.00 shrdw %cl, %si, %di
# CHECK-NEXT: 6 11 1.00 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 3 7 1.00 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 6 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 * U ud2
+# 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)
@@ -1371,7 +1435,7 @@ xorq (%rax), %rdi
# CHECK: Resource pressure per iteration:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9]
-# CHECK-NEXT: 60.00 - 450.25 254.25 219.33 219.33 171.00 202.75 436.75 70.33
+# CHECK-NEXT: 60.00 - 513.00 291.00 241.33 241.33 174.00 255.50 564.50 73.33
# CHECK: Resource pressure by instruction:
# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions:
@@ -1570,6 +1634,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - cmpsq %es:(%rdi), (%rsi)
+# 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.25 0.25 - decw %di
@@ -1620,6 +1685,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 0.50 0.50 - - - - imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb $7, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inb %dx, %al
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw $7, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inw %dx, %ax
+# CHECK-NEXT: - - 4.50 2.50 1.50 1.50 - 3.50 9.50 - inl $7, %eax
+# 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.25 0.25 - incw %di
@@ -1628,6 +1699,10 @@ xorq (%rax), %rdi
# 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.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: - - 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)
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - int $7
# CHECK-NEXT: - - 0.50 - - - - - 0.50 - lahf
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsb (%rsi), %al
# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - lodsw (%rsi), %ax
@@ -1720,6 +1795,16 @@ xorq (%rax), %rdi
# 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.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
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outw %ax, %dx
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, $7
+# CHECK-NEXT: - - 4.50 2.50 1.33 1.33 - 3.50 9.50 0.33 outl %eax, %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsb (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsw (%rsi), %dx
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - outsl (%rsi), %dx
+# CHECK-NEXT: - - 0.75 0.75 - - - 0.75 1.75 - pause
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rclb %dil
# CHECK-NEXT: - - 1.00 0.50 - - - 0.50 1.00 - rcrb %dil
# CHECK-NEXT: - - 1.00 0.50 0.83 0.83 - 0.50 1.00 0.33 rclb (%rax)
@@ -1919,6 +2004,10 @@ xorq (%rax), %rdi
# 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: - - 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
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - 0.50 0.50 0.50 0.50 - 0.50 0.50 - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - shldw %cl, %si, %di
# CHECK-NEXT: - - 1.25 1.25 - - - 0.25 1.25 - shrdw %cl, %si, %di
# CHECK-NEXT: - - 1.25 1.25 0.83 0.83 - 0.25 1.25 0.33 shldw %cl, %si, (%rax)
@@ -1979,6 +2068,8 @@ xorq (%rax), %rdi
# 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.50 0.50 - 0.25 0.25 - subq (%rax), %rdi
+# CHECK-NEXT: - - 0.25 0.25 - - - 0.25 0.25 - ud2
+# 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)
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=338563&r1=338562&r2=338563&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 Wed Aug 1 07:18:09 2018
@@ -222,6 +222,8 @@ cmpsw
cmpsl
cmpsq
+cpuid
+
decb %dil
decb (%rax)
decw %di
@@ -279,6 +281,13 @@ imulq $665536, (%rax), %rdi
imulq $7, %rsi, %rdi
imulq $7, (%rax), %rdi
+inb $7, %al
+inb %dx, %al
+inw $7, %ax
+inw %dx, %ax
+inl $7, %eax
+inl %dx, %eax
+
incb %dil
incb (%rax)
incw %di
@@ -288,6 +297,12 @@ incl (%rax)
incq %rdi
incq (%rax)
+insb
+insw
+insl
+
+int $7
+
lahf
lodsb
@@ -394,6 +409,19 @@ orq %rsi, %rdi
orq %rsi, (%rax)
orq (%rax), %rdi
+outb %al, $7
+outb %al, %dx
+outw %ax, $7
+outw %ax, %dx
+outl %eax, $7
+outl %eax, %dx
+
+outsb
+outsw
+outsl
+
+pause
+
rclb %dil
rcrb %dil
rclb (%rax)
@@ -610,6 +638,11 @@ sbbq %rsi, %rdi
sbbq %rsi, (%rax)
sbbq (%rax), %rdi
+scasb
+scasw
+scasl
+scasq
+
shldw %cl, %si, %di
shrdw %cl, %si, %di
shldw %cl, %si, (%rax)
@@ -679,6 +712,10 @@ subq %rsi, %rdi
subq %rsi, (%rax)
subq (%rax), %rdi
+ud2
+
+xlatb
+
xorb $7, %al
xorb $7, %dil
xorb $7, (%rax)
@@ -917,6 +954,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 100 0.25 U cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: 1 100 0.25 U cmpsq %es:(%rdi), (%rsi)
+# 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: 1 1 0.25 decw %di
@@ -967,6 +1005,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 4 1.00 * imulq $665536, (%rax), %rdi
# CHECK-NEXT: 2 4 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: 2 4 1.00 * imulq $7, (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 U inb $7, %al
+# CHECK-NEXT: 1 100 0.25 U inb %dx, %al
+# CHECK-NEXT: 1 100 0.25 U inw $7, %ax
+# CHECK-NEXT: 1 100 0.25 U inw %dx, %ax
+# CHECK-NEXT: 1 100 0.25 U inl $7, %eax
+# 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: 1 1 0.25 incw %di
@@ -975,6 +1019,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 2 5 0.50 * * incl (%rax)
# CHECK-NEXT: 1 1 0.25 incq %rdi
# CHECK-NEXT: 2 5 0.50 * * 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)
+# CHECK-NEXT: 1 100 0.25 * * U int $7
# CHECK-NEXT: 1 100 0.25 lahf
# CHECK-NEXT: 1 100 0.25 U lodsb (%rsi), %al
# CHECK-NEXT: 1 100 0.25 U lodsw (%rsi), %ax
@@ -1067,6 +1115,16 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 orq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * 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
+# CHECK-NEXT: 1 100 0.25 U outw %ax, $7
+# CHECK-NEXT: 1 100 0.25 U outw %ax, %dx
+# CHECK-NEXT: 1 100 0.25 U outl %eax, $7
+# CHECK-NEXT: 1 100 0.25 U outl %eax, %dx
+# CHECK-NEXT: 1 100 0.25 U outsb (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsw (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 U outsl (%rsi), %dx
+# CHECK-NEXT: 1 100 0.25 * * U pause
# CHECK-NEXT: 1 1 0.25 rclb %dil
# CHECK-NEXT: 1 1 0.25 rcrb %dil
# CHECK-NEXT: 1 100 0.25 * rclb (%rax)
@@ -1266,6 +1324,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 sbbq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * 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
+# CHECK-NEXT: 1 100 0.25 U scasl %es:(%rdi), %eax
+# CHECK-NEXT: 1 100 0.25 U scasq %es:(%rdi), %rax
# CHECK-NEXT: 1 100 0.25 shldw %cl, %si, %di
# CHECK-NEXT: 1 100 0.25 shrdw %cl, %si, %di
# CHECK-NEXT: 1 100 0.25 * * shldw %cl, %si, (%rax)
@@ -1326,6 +1388,8 @@ xorq (%rax), %rdi
# CHECK-NEXT: 1 1 0.25 subq %rsi, %rdi
# CHECK-NEXT: 2 5 0.50 * * subq %rsi, (%rax)
# CHECK-NEXT: 2 5 0.50 * subq (%rax), %rdi
+# CHECK-NEXT: 1 100 0.25 * U ud2
+# 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)
@@ -1572,6 +1636,7 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - - - - - - - - - - cmpsw %es:(%rdi), (%rsi)
# CHECK-NEXT: - - - - - - - - - - - - cmpsl %es:(%rdi), (%rsi)
# CHECK-NEXT: - - - - - - - - - - - - cmpsq %es:(%rdi), (%rsi)
+# 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.25 0.25 0.25 0.25 - - - - - - decw %di
@@ -1622,6 +1687,12 @@ xorq (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - - 1.00 imulq $665536, (%rax), %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - - 1.00 imulq $7, %rsi, %rdi
# CHECK-NEXT: - - - 1.00 - - - - - - - 1.00 imulq $7, (%rax), %rdi
+# CHECK-NEXT: - - - - - - - - - - - - inb $7, %al
+# CHECK-NEXT: - - - - - - - - - - - - inb %dx, %al
+# CHECK-NEXT: - - - - - - - - - - - - inw $7, %ax
+# CHECK-NEXT: - - - - - - - - - - - - inw %dx, %ax
+# CHECK-NEXT: - - - - - - - - - - - - inl $7, %eax
+# 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.25 0.25 0.25 0.25 - - - - - - incw %di
@@ -1630,6 +1701,10 @@ xorq (%rax), %rdi
# CHECK-NEXT: 0.50 0.50 0.25 0.25 0.25 0.25 - - - - - - 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: - - - - - - - - - - - - insb %dx, %es:(%rdi)
+# CHECK-NEXT: - - - - - - - - - - - - insw %dx, %es:(%rdi)
+# CHECK-NEXT: - - - - - - - - - - - - insl %dx, %es:(%rdi)
+# CHECK-NEXT: - - - - - - - - - - - - int $7
# CHECK-NEXT: - - - - - - - - - - - - lahf
# CHECK-NEXT: - - - - - - - - - - - - lodsb (%rsi), %al
# CHECK-NEXT: - - - - - - - - - - - - lodsw (%rsi), %ax
@@ -1722,6 +1797,16 @@ xorq (%rax), %rdi
# 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 - - - - - - orq (%rax), %rdi
+# CHECK-NEXT: - - - - - - - - - - - - outb %al, $7
+# CHECK-NEXT: - - - - - - - - - - - - outb %al, %dx
+# CHECK-NEXT: - - - - - - - - - - - - outw %ax, $7
+# CHECK-NEXT: - - - - - - - - - - - - outw %ax, %dx
+# CHECK-NEXT: - - - - - - - - - - - - outl %eax, $7
+# CHECK-NEXT: - - - - - - - - - - - - outl %eax, %dx
+# CHECK-NEXT: - - - - - - - - - - - - outsb (%rsi), %dx
+# CHECK-NEXT: - - - - - - - - - - - - outsw (%rsi), %dx
+# CHECK-NEXT: - - - - - - - - - - - - outsl (%rsi), %dx
+# CHECK-NEXT: - - - - - - - - - - - - pause
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - rclb %dil
# CHECK-NEXT: - - 0.25 0.25 0.25 0.25 - - - - - - rcrb %dil
# CHECK-NEXT: - - - - - - - - - - - - rclb (%rax)
@@ -1921,6 +2006,10 @@ xorq (%rax), %rdi
# 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 - - - - - - sbbq (%rax), %rdi
+# CHECK-NEXT: - - - - - - - - - - - - scasb %es:(%rdi), %al
+# CHECK-NEXT: - - - - - - - - - - - - scasw %es:(%rdi), %ax
+# CHECK-NEXT: - - - - - - - - - - - - scasl %es:(%rdi), %eax
+# CHECK-NEXT: - - - - - - - - - - - - scasq %es:(%rdi), %rax
# CHECK-NEXT: - - - - - - - - - - - - shldw %cl, %si, %di
# CHECK-NEXT: - - - - - - - - - - - - shrdw %cl, %si, %di
# CHECK-NEXT: - - - - - - - - - - - - shldw %cl, %si, (%rax)
@@ -1981,6 +2070,8 @@ xorq (%rax), %rdi
# 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 - - - - - - subq (%rax), %rdi
+# CHECK-NEXT: - - - - - - - - - - - - ud2
+# 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)
More information about the llvm-commits
mailing list