[llvm] r351835 - [llvm-mca][X86] Add missing enter/leave, invlpg/invlpga, rdmsr/wrmsr, rdpmc and rdtsc/rdtscp tests

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 22 08:29:26 PST 2019


Author: rksimon
Date: Tue Jan 22 08:29:26 2019
New Revision: 351835

URL: http://llvm.org/viewvc/llvm-project?rev=351835&view=rev
Log:
[llvm-mca][X86] Add missing enter/leave, invlpg/invlpga, rdmsr/wrmsr, rdpmc and rdtsc/rdtscp tests

Modified:
    llvm/trunk/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
    llvm/trunk/test/tools/llvm-mca/X86/BdVer2/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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      50    25.00   *             U     divl	(%rax)
 # CHECK-NEXT:  1      130   65.00                 U     divq	%rcx
 # CHECK-NEXT:  1      130   65.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      32    16.00                 U     enter	$7, $4095
 # CHECK-NEXT:  1      62    31.00                 U     idivb	%dil
 # CHECK-NEXT:  1      62    31.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  1      62    31.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      71    35.50                 U     invlpg	(%rax)
+# CHECK-NEXT:  1      71    35.50                 U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      2     1.00                        lahf
+# CHECK-NEXT:  1      2     1.00    *                   leave
 # CHECK-NEXT:  1      2     1.00                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      2     1.00                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      2     1.00                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     1.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  1      1     1.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  1      1     1.00           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      78    39.00                 U     rdmsr
+# CHECK-NEXT:  1      46    23.00                 U     rdpmc
+# CHECK-NEXT:  1      30    15.00                 U     rdtsc
+# CHECK-NEXT:  1      30    15.00                 U     rdtscp
 # CHECK-NEXT:  1      1     1.00                        rolb	%dil
 # CHECK-NEXT:  1      1     1.00                        rorb	%dil
 # CHECK-NEXT:  1      1     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.50                        testq	%rsi, %rdi
 # CHECK-NEXT:  1      1     1.00    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.50    *             U     ud2
+# CHECK-NEXT:  1      202   101.00                U     wrmsr
 # CHECK-NEXT:  1      2     1.00                        xaddb	%bl, %cl
 # CHECK-NEXT:  1      3     1.50    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  1      2     1.00                        xaddw	%bx, %cx
@@ -1614,7 +1637,7 @@ xorq (%rax), %rdi
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]
-# CHECK-NEXT: 2393.50 2049.50
+# CHECK-NEXT: 2674.50 2330.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    Instructions:
@@ -1838,6 +1861,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 25.00  25.00  divl	(%rax)
 # CHECK-NEXT: 65.00  65.00  divq	%rcx
 # CHECK-NEXT: 65.00  65.00  divq	(%rax)
+# CHECK-NEXT: 16.00  16.00  enter	$7, $4095
 # CHECK-NEXT: 31.00  31.00  idivb	%dil
 # CHECK-NEXT: 31.00  31.00  idivb	(%rax)
 # CHECK-NEXT: 31.00  31.00  idivw	%si
@@ -1890,7 +1914,10 @@ xorq (%rax), %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: 35.50  35.50  invlpg	(%rax)
+# CHECK-NEXT: 35.50  35.50  invlpga	%rax, %ecx
 # CHECK-NEXT: 1.00   1.00   lahf
+# CHECK-NEXT: 1.00   1.00   leave
 # CHECK-NEXT: 1.00   1.00   lodsb	(%rsi), %al
 # CHECK-NEXT: 1.00   1.00   lodsw	(%rsi), %ax
 # CHECK-NEXT: 1.00   1.00   lodsl	(%rsi), %eax
@@ -2040,6 +2067,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 1.00    -     rcrq	%cl, %rdi
 # CHECK-NEXT: 1.00    -     rclq	%cl, (%rax)
 # CHECK-NEXT: 1.00    -     rcrq	%cl, (%rax)
+# CHECK-NEXT: 39.00  39.00  rdmsr
+# CHECK-NEXT: 23.00  23.00  rdpmc
+# CHECK-NEXT: 15.00  15.00  rdtsc
+# CHECK-NEXT: 15.00  15.00  rdtscp
 # CHECK-NEXT: 1.00    -     rolb	%dil
 # CHECK-NEXT: 1.00    -     rorb	%dil
 # CHECK-NEXT: 1.00    -     rolb	(%rax)
@@ -2314,6 +2345,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 0.50   0.50   testq	%rsi, %rdi
 # CHECK-NEXT: 1.00    -     testq	%rsi, (%rax)
 # CHECK-NEXT: 0.50   0.50   ud2
+# CHECK-NEXT: 101.00 101.00 wrmsr
 # CHECK-NEXT: 1.00   1.00   xaddb	%bl, %cl
 # CHECK-NEXT: 1.50   1.50   xaddb	%bl, (%rcx)
 # CHECK-NEXT: 1.00   1.00   xaddw	%bx, %cx

Modified: llvm/trunk/test/tools/llvm-mca/X86/BdVer2/resources-x86_64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/BdVer2/resources-x86_64.s?rev=351835&r1=351834&r2=351835&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/BdVer2/resources-x86_64.s (original)
+++ llvm/trunk/test/tools/llvm-mca/X86/BdVer2/resources-x86_64.s Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      18    14.00   *             U     divl	(%rax)
 # CHECK-NEXT:  2      14    14.00                 U     divq	%rcx
 # CHECK-NEXT:  2      18    14.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.50                  U     enter	$7, $4095
 # CHECK-NEXT:  1      12    12.00                 U     idivb	%dil
 # CHECK-NEXT:  1      16    12.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  2      15    17.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.50                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.50                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  4      2     0.50                        lahf
+# CHECK-NEXT:  1      1     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.50                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.50                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.50                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  16     7     0.50                        rcrq	%cl, %rdi
 # CHECK-NEXT:  2      5     1.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  2      5     1.00           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.50                  U     rdmsr
+# CHECK-NEXT:  1      100   0.50                  U     rdpmc
+# CHECK-NEXT:  1      100   0.50                  U     rdtsc
+# CHECK-NEXT:  1      100   0.50                  U     rdtscp
 # CHECK-NEXT:  1      1     0.50                        rolb	%dil
 # CHECK-NEXT:  1      1     0.50                        rorb	%dil
 # CHECK-NEXT:  2      5     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.50                        testq	%rsi, %rdi
 # CHECK-NEXT:  1      5     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.50    *             U     ud2
+# CHECK-NEXT:  1      100   0.50                  U     wrmsr
 # CHECK-NEXT:  4      2     1.00                        xaddb	%bl, %cl
 # CHECK-NEXT:  4      6     1.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  4      2     1.00                        xaddw	%bx, %cx
@@ -1635,7 +1658,7 @@ xorq (%rax), %rdi
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]
-# CHECK-NEXT: 262.00 262.00  -      -     246.00 547.50 622.50  -      -      -      -      -      -      -      -      -      -      -      -     156.50 156.50 64.00  211.00
+# CHECK-NEXT: 262.00 262.00  -      -     246.00 552.00 627.00  -      -      -      -      -      -      -      -      -      -      -      -     156.50 156.50 64.00  211.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0.0]  [0.1]  [1]    [2]    [3]    [4]    [5]    [6]    [7.0]  [7.1]  [8.0]  [8.1]  [9]    [10]   [11]   [12]   [13]   [14]   [15]   [16.0] [16.1] [17]   [18]   Instructions:
@@ -1859,6 +1882,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 0.50   0.50    -      -     14.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     divl	(%rax)
 # CHECK-NEXT:  -      -      -      -     14.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     divq	%rcx
 # CHECK-NEXT: 0.50   0.50    -      -     14.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     divq	(%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     enter	$7, $4095
 # CHECK-NEXT:  -      -      -      -     12.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     idivb	%dil
 # CHECK-NEXT: 0.50   0.50    -      -     12.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     idivb	(%rax)
 # CHECK-NEXT:  -      -      -      -     17.00   -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     idivw	%si
@@ -1911,7 +1935,10 @@ xorq (%rax), %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    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     invlpg	(%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     lahf
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     leave
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     lodsb	(%rsi), %al
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     lodsw	(%rsi), %ax
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     lodsl	(%rsi), %eax
@@ -2061,6 +2088,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rcrq	%cl, %rdi
 # CHECK-NEXT: 1.00   1.00    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -     1.00   rclq	%cl, (%rax)
 # CHECK-NEXT: 1.00   1.00    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -     1.00   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rdmsr
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rdpmc
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rdtsc
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rdtscp
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rolb	%dil
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     rorb	%dil
 # CHECK-NEXT: 1.00   1.00    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -     1.00   rolb	(%rax)
@@ -2335,6 +2366,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     testq	%rsi, %rdi
 # CHECK-NEXT: 0.50   0.50    -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     0.50   0.50    -      -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     ud2
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     wrmsr
 # CHECK-NEXT:  -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     xaddb	%bl, %cl
 # CHECK-NEXT:  -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     xaddb	%bl, (%rcx)
 # CHECK-NEXT:  -      -      -      -      -      -     1.00    -      -      -      -      -      -      -      -      -      -      -      -      -      -      -      -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  8      34    2.00    *             U     divl	(%rax)
 # CHECK-NEXT:  32     80    8.00                  U     divq	%rcx
 # CHECK-NEXT:  8      34    2.00    *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    10.00                 U     idivb	%dil
 # CHECK-NEXT:  8      35    2.00    *             U     idivb	(%rax)
 # CHECK-NEXT:  1      25    10.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.25                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.25                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.25                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.25                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  7      11    2.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  10     15    2.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     18    2.25           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.25                  U     rdmsr
+# CHECK-NEXT:  1      100   0.25                  U     rdpmc
+# CHECK-NEXT:  8      18    2.00                  U     rdtsc
+# CHECK-NEXT:  22     42    5.50                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      7     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.25    *             U     ud2
+# 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:  3      2     0.75                        xaddw	%bx, %cx
@@ -1622,7 +1645,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   -     494.25 334.75 262.17 262.17 206.00 244.25 526.75 82.67
+# CHECK-NEXT: 50.00   -     503.00 343.00 262.67 262.67 206.00 255.50 536.50 82.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -1846,6 +1869,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     2.25   2.25   0.50   0.50    -     2.25   0.25    -     divl	(%rax)
 # CHECK-NEXT:  -      -     10.25  10.25   -      -      -     5.75   5.75    -     divq	%rcx
 # CHECK-NEXT:  -      -     2.25   2.25   0.50   0.50    -     2.25   0.25    -     divq	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     enter	$7, $4095
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -      -      -     idivb	%dil
 # CHECK-NEXT:  -      -     2.25   2.25   0.50   0.50    -     2.25   0.25    -     idivb	(%rax)
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -      -      -     idivw	%si
@@ -1898,7 +1922,10 @@ xorq (%rax), %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.25   0.25    -      -      -     0.25   0.25    -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     lahf
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     0.50   0.50    -     leave
 # 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
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     lodsl	(%rsi), %eax
@@ -2048,6 +2075,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     1.75   2.75    -      -      -     0.75   1.75    -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     2.50   2.00   0.83   0.83    -     1.00   2.50   0.33   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     2.25   3.25   0.83   0.83    -     1.25   2.25   0.33   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdmsr
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdpmc
+# CHECK-NEXT:  -      -     1.75   1.25    -      -      -     2.25   2.75    -     rdtsc
+# CHECK-NEXT:  -      -     5.00   5.00    -      -      -     7.00   5.00    -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     0.83   0.83   1.00    -     1.00   0.33   rolb	(%rax)
@@ -2322,6 +2353,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     ud2
+# 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.75   0.75    -      -      -     0.75   0.75    -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      28    25.00   *             U     divl	(%rax)
 # CHECK-NEXT:  2      41    41.00                 U     divq	%rcx
 # CHECK-NEXT:  2      44    41.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.50                  U     enter	$7, $4095
 # CHECK-NEXT:  1      12    12.00                 U     idivb	%dil
 # CHECK-NEXT:  1      15    12.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  2      17    17.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.50                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.50                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  1      1     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.50                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.50                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.50                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.50                        rcrq	%cl, %rdi
 # CHECK-NEXT:  1      4     1.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  1      4     1.00           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.50                  U     rdmsr
+# CHECK-NEXT:  1      100   0.50                  U     rdpmc
+# CHECK-NEXT:  1      100   0.50                  U     rdtsc
+# CHECK-NEXT:  1      100   0.50                  U     rdtscp
 # CHECK-NEXT:  1      1     0.50                        rolb	%dil
 # CHECK-NEXT:  1      1     0.50                        rorb	%dil
 # CHECK-NEXT:  1      4     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.50                        testq	%rsi, %rdi
 # CHECK-NEXT:  1      4     1.00    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.50    *             U     ud2
+# CHECK-NEXT:  1      100   0.50                  U     wrmsr
 # CHECK-NEXT:  1      1     0.50                        xaddb	%bl, %cl
 # CHECK-NEXT:  1      4     1.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  1      1     0.50                        xaddw	%bx, %cx
@@ -1626,7 +1649,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: 581.50 631.50 380.00  -      -      -      -     322.00 64.00  223.00  -      -      -      -
+# CHECK-NEXT: 586.00 636.00 380.00  -      -      -      -     322.00 64.00  223.00  -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   Instructions:
@@ -1850,6 +1873,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -     1.00   25.00   -      -      -      -     1.00    -      -      -      -      -      -     divl	(%rax)
 # CHECK-NEXT:  -     1.00   41.00   -      -      -      -      -      -      -      -      -      -      -     divq	%rcx
 # CHECK-NEXT:  -     1.00   41.00   -      -      -      -     1.00    -      -      -      -      -      -     divq	(%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     enter	$7, $4095
 # CHECK-NEXT:  -     1.00   12.00   -      -      -      -      -      -      -      -      -      -      -     idivb	%dil
 # CHECK-NEXT:  -     1.00   12.00   -      -      -      -     1.00    -      -      -      -      -      -     idivb	(%rax)
 # CHECK-NEXT:  -     1.00   17.00   -      -      -      -      -      -      -      -      -      -      -     idivw	%si
@@ -1902,7 +1926,10 @@ xorq (%rax), %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    -      -      -      -      -      -      -      -      -      -      -      -     invlpg	(%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     invlpga	%rax, %ecx
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     lahf
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     leave
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     lodsb	(%rsi), %al
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     lodsw	(%rsi), %ax
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     lodsl	(%rsi), %eax
@@ -2052,6 +2079,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rcrq	%cl, %rdi
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -     1.00    -      -      -      -     rclq	%cl, (%rax)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -     1.00    -      -      -      -     rcrq	%cl, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rdmsr
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rdpmc
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rdtsc
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rdtscp
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rolb	%dil
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     rorb	%dil
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -     1.00    -      -      -      -     rolb	(%rax)
@@ -2326,6 +2357,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testq	%rsi, %rdi
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testq	%rsi, (%rax)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     ud2
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     wrmsr
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     xaddb	%bl, %cl
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -     1.00    -      -      -      -     xaddb	%bl, (%rcx)
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      30    10.00   *             U     divl	(%rax)
 # CHECK-NEXT:  1      25    10.00                 U     divq	%rcx
 # CHECK-NEXT:  2      30    10.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.33                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    10.00                 U     idivb	%dil
 # CHECK-NEXT:  2      30    10.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  1      25    10.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.33                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.33                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.67    *                   leave
 # CHECK-NEXT:  3      7     0.67                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  3      7     0.67                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  2      6     0.50                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  8      5     4.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  11     11    3.50           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     11    3.50           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.33                  U     rdmsr
+# CHECK-NEXT:  1      100   0.33                  U     rdpmc
+# CHECK-NEXT:  1      100   0.33                  U     rdtsc
+# CHECK-NEXT:  1      100   0.33                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      8     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.33                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.33    *             U     ud2
+# CHECK-NEXT:  1      100   0.33                  U     wrmsr
 # CHECK-NEXT:  3      2     1.00                        xaddb	%bl, %cl
 # CHECK-NEXT:  5      8     1.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  3      2     1.00                        xaddw	%bx, %cx
@@ -1620,7 +1643,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  -     571.83 221.33 222.00 571.83 316.00 316.00
+# CHECK-NEXT: 160.00  -     575.17 224.67 222.00 575.17 316.50 316.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -1844,6 +1867,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   divl	(%rax)
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     divq	%rcx
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   divq	(%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     enter	$7, $4095
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     idivb	%dil
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   idivb	(%rax)
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     idivw	%si
@@ -1896,7 +1920,10 @@ xorq (%rax), %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.33   0.33    -     0.33    -      -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     lahf
+# CHECK-NEXT:  -      -     0.67   0.67    -     0.67   0.50   0.50   leave
 # 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
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   lodsl	(%rsi), %eax
@@ -2046,6 +2073,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     4.00    -      -     4.00    -      -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     3.50    -      -     3.50   2.00   2.00   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     3.50    -      -     3.50   2.00   2.00   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdmsr
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdpmc
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdtsc
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     1.00   1.00   1.00   1.00   rolb	(%rax)
@@ -2320,6 +2351,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     ud2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     wrmsr
 # CHECK-NEXT:  -      -     1.00   1.00    -     1.00    -      -     xaddb	%bl, %cl
 # CHECK-NEXT:  -      -     0.67   0.67   1.00   0.67   1.00   1.00   xaddb	%bl, (%rcx)
 # CHECK-NEXT:  -      -     1.00   1.00    -     1.00    -      -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      29    10.00   *             U     divl	(%rax)
 # CHECK-NEXT:  32     98    8.00                  U     divq	%rcx
 # CHECK-NEXT:  2      29    10.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     enter	$7, $4095
 # CHECK-NEXT:  9      23    1.00                  U     idivb	%dil
 # CHECK-NEXT:  2      29    10.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  66     112   16.50                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.25                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.50    *                   leave
 # CHECK-NEXT:  3      1     0.50                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  3      1     0.50                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  2      1     0.50                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  7      11    2.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  10     16    2.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     19    2.25           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.25                  U     rdmsr
+# CHECK-NEXT:  34     1     8.50                  U     rdpmc
+# CHECK-NEXT:  8      18    2.00                  U     rdtsc
+# CHECK-NEXT:  22     42    5.50                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      8     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.25    *             U     ud2
+# CHECK-NEXT:  1      100   0.25                  U     wrmsr
 # CHECK-NEXT:  3      2     0.75                        xaddb	%bl, %cl
 # CHECK-NEXT:  5      8     1.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  3      2     0.75                        xaddw	%bx, %cx
@@ -1622,7 +1645,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   -     548.75 359.25 262.67 262.67 201.00 270.75 610.25 79.67
+# CHECK-NEXT: 80.00   -     557.25 367.25 263.17 263.17 201.00 281.75 619.75 79.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -1846,6 +1869,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divl	(%rax)
 # CHECK-NEXT:  -      -     10.25  10.25   -      -      -     5.75   5.75    -     divq	%rcx
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divq	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     enter	$7, $4095
 # CHECK-NEXT:  -      -     1.00   1.00    -      -      -     1.00   1.00    -     idivb	%dil
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     idivb	(%rax)
 # CHECK-NEXT:  -      -     19.50  10.50   -      -      -     12.50  23.50   -     idivw	%si
@@ -1898,7 +1922,10 @@ xorq (%rax), %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.25   0.25    -      -      -     0.25   0.25    -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     lahf
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     0.50   0.50    -     leave
 # 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
 # CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     lodsl	(%rsi), %eax
@@ -2048,6 +2075,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     1.75   2.75    -      -      -     0.75   1.75    -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     2.50   2.00   0.83   0.83    -     1.00   2.50   0.33   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     2.25   3.25   0.83   0.83    -     1.25   2.25   0.33   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdmsr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -     rdpmc
+# CHECK-NEXT:  -      -     1.75   1.25    -      -      -     2.25   2.75    -     rdtsc
+# CHECK-NEXT:  -      -     5.00   5.00    -      -      -     7.00   5.00    -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     0.83   0.83   1.00    -     1.00   0.33   rolb	(%rax)
@@ -2322,6 +2353,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     ud2
+# 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.75   0.75    -      -      -     0.75   0.75    -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      29    25.00   *             U     divl	(%rax)
 # CHECK-NEXT:  1      25    25.00                 U     divq	%rcx
 # CHECK-NEXT:  1      29    25.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   1.00                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    25.00                 U     idivb	%dil
 # CHECK-NEXT:  1      29    25.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  1      25    25.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   1.00                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   1.00                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  1      1     0.50    *                   leave
 # CHECK-NEXT:  1      100   1.00                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   1.00                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   1.00                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     1.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  2      4     2.00           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  2      4     2.00           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   1.00                  U     rdmsr
+# CHECK-NEXT:  1      100   1.00                  U     rdpmc
+# CHECK-NEXT:  1      100   1.00                  U     rdtsc
+# CHECK-NEXT:  1      100   1.00                  U     rdtscp
 # CHECK-NEXT:  1      1     1.00                        rolb	%dil
 # CHECK-NEXT:  1      1     1.00                        rorb	%dil
 # CHECK-NEXT:  2      4     2.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.50                        testq	%rsi, %rdi
 # CHECK-NEXT:  1      4     1.00    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   1.00    *             U     ud2
+# CHECK-NEXT:  1      100   1.00                  U     wrmsr
 # CHECK-NEXT:  1      1     0.50                        xaddb	%bl, %cl
 # CHECK-NEXT:  2      4     2.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  1      1     0.50                        xaddw	%bx, %cx
@@ -1620,7 +1643,7 @@ xorq (%rax), %rdi
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]
-# CHECK-NEXT: 400.00  -      -     41.00   -     549.00 391.00 557.00
+# CHECK-NEXT: 400.00  -      -     49.00   -     549.50 391.50 557.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    Instructions:
@@ -1844,6 +1867,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50   1.00   divl	(%rax)
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50    -     divq	%rcx
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50   1.00   divq	(%rax)
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     enter	$7, $4095
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50    -     idivb	%dil
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50   1.00   idivb	(%rax)
 # CHECK-NEXT: 25.00   -      -      -      -     0.50   0.50    -     idivw	%si
@@ -1896,7 +1920,10 @@ xorq (%rax), %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:  -      -      -     1.00    -      -      -      -     invlpg	(%rax)
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     lahf
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     leave
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     lodsb	(%rsi), %al
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     lodsw	(%rsi), %ax
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     lodsl	(%rsi), %eax
@@ -2046,6 +2073,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -      -      -      -     1.00    -     2.00   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -      -      -      -     1.00    -     2.00   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     rdmsr
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     rdpmc
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     rdtsc
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     rdtscp
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     rolb	%dil
 # CHECK-NEXT:  -      -      -      -      -     1.00    -      -     rorb	%dil
 # CHECK-NEXT:  -      -      -      -      -     1.00    -     2.00   rolb	(%rax)
@@ -2320,6 +2351,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -      -     1.00    -      -      -      -     ud2
+# CHECK-NEXT:  -      -      -     1.00    -      -      -      -     wrmsr
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     xaddb	%bl, %cl
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50   2.00   xaddb	%bl, (%rcx)
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -852,8 +866,6 @@ xorq %rsi, %rdi
 xorq %rsi, (%rax)
 xorq (%rax), %rdi
 
-# CCHECK-NEXT: 160.00  -     439.83 221.33 250.00 431.83 294.00 294.00
-
 # CHECK:      Instruction Info:
 # CHECK-NEXT: [1]: #uOps
 # CHECK-NEXT: [2]: Latency
@@ -1083,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      30    10.00   *             U     divl	(%rax)
 # CHECK-NEXT:  1      25    10.00                 U     divq	%rcx
 # CHECK-NEXT:  2      30    10.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.33                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    10.00                 U     idivb	%dil
 # CHECK-NEXT:  2      30    10.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  1      25    10.00                 U     idivw	%si
@@ -1135,7 +1148,10 @@ xorq (%rax), %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      100   0.33                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.33                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.67    *                   leave
 # CHECK-NEXT:  3      7     0.67                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  3      7     0.67                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  2      6     0.50                  U     lodsl	(%rsi), %eax
@@ -1285,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  8      5     4.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  11     11    3.50           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     11    3.50           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.33                  U     rdmsr
+# CHECK-NEXT:  1      100   0.33                  U     rdpmc
+# CHECK-NEXT:  1      100   0.33                  U     rdtsc
+# CHECK-NEXT:  1      100   0.33                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      8     1.00    *      *            rolb	(%rax)
@@ -1559,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.33                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.33    *             U     ud2
+# CHECK-NEXT:  1      100   0.33                  U     wrmsr
 # CHECK-NEXT:  3      2     1.00                        xaddb	%bl, %cl
 # CHECK-NEXT:  5      8     1.00    *      *            xaddb	%bl, (%rcx)
 # CHECK-NEXT:  3      2     1.00                        xaddw	%bx, %cx
@@ -1622,7 +1643,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  -     571.83 221.33 222.00 571.83 316.00 316.00
+# CHECK-NEXT: 160.00  -     575.17 224.67 222.00 575.17 316.50 316.50
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -1846,6 +1867,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   divl	(%rax)
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     divq	%rcx
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   divq	(%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     enter	$7, $4095
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     idivb	%dil
 # CHECK-NEXT: 10.00   -     1.00    -      -      -     0.50   0.50   idivb	(%rax)
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -     idivw	%si
@@ -1898,7 +1920,10 @@ xorq (%rax), %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.33   0.33    -     0.33    -      -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     lahf
+# CHECK-NEXT:  -      -     0.67   0.67    -     0.67   0.50   0.50   leave
 # 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
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   lodsl	(%rsi), %eax
@@ -2048,6 +2073,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     4.00    -      -     4.00    -      -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     3.50    -      -     3.50   2.00   2.00   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     3.50    -      -     3.50   2.00   2.00   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdmsr
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdpmc
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdtsc
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     1.00   1.00   1.00   1.00   rolb	(%rax)
@@ -2322,6 +2351,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     ud2
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     wrmsr
 # CHECK-NEXT:  -      -     1.00   1.00    -     1.00    -      -     xaddb	%bl, %cl
 # CHECK-NEXT:  -      -     0.67   0.67   1.00   0.67   1.00   1.00   xaddb	%bl, (%rcx)
 # CHECK-NEXT:  -      -     1.00   1.00    -     1.00    -      -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Tue Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      29    10.00   *             U     divl	(%rax)
 # CHECK-NEXT:  32     76    8.00                  U     divq	%rcx
 # CHECK-NEXT:  2      29    10.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    10.00                 U     idivb	%dil
 # CHECK-NEXT:  8      28    4.00    *             U     idivb	(%rax)
 # CHECK-NEXT:  66     102   16.50                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.25                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.25                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.25                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.25                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  7      11    2.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  10     15    2.50           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     18    2.25           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.25                  U     rdmsr
+# CHECK-NEXT:  1      100   0.25                  U     rdpmc
+# CHECK-NEXT:  8      18    2.00                  U     rdtsc
+# CHECK-NEXT:  22     42    5.50                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      7     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.25    *             U     ud2
+# 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:  3      2     0.75                        xaddw	%bx, %cx
@@ -1622,7 +1645,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   -     564.50 314.50 262.17 262.17 206.00 279.00 620.00 82.67
+# CHECK-NEXT: 60.00   -     573.25 322.75 262.67 262.67 206.00 290.25 629.75 82.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -1846,6 +1869,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divl	(%rax)
 # CHECK-NEXT:  -      -     10.25  4.75    -      -      -     11.25  5.75    -     divq	%rcx
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divq	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     enter	$7, $4095
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -      -      -     idivb	%dil
 # CHECK-NEXT:  -      -     2.25   0.25   0.50   0.50    -     4.25   0.25    -     idivb	(%rax)
 # CHECK-NEXT:  -      -     19.50  10.50   -      -      -     12.50  23.50   -     idivw	%si
@@ -1898,7 +1922,10 @@ xorq (%rax), %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.25   0.25    -      -      -     0.25   0.25    -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     lahf
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     0.50   0.50    -     leave
 # 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
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     lodsl	(%rsi), %eax
@@ -2048,6 +2075,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     2.00   2.50    -      -      -     0.50   2.00    -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     2.75   1.75   0.83   0.83    -     0.75   2.75   0.33   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     2.50   3.00   0.83   0.83    -     1.00   2.50   0.33   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdmsr
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdpmc
+# CHECK-NEXT:  -      -     1.75   1.25    -      -      -     2.25   2.75    -     rdtsc
+# CHECK-NEXT:  -      -     5.00   5.00    -      -      -     7.00   5.00    -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     0.83   0.83   1.00    -     1.00   0.33   rolb	(%rax)
@@ -2322,6 +2353,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     ud2
+# 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.75   0.75    -      -      -     0.75   0.75    -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  2      29    10.00   *             U     divl	(%rax)
 # CHECK-NEXT:  32     76    8.00                  U     divq	%rcx
 # CHECK-NEXT:  2      29    10.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     enter	$7, $4095
 # CHECK-NEXT:  1      25    10.00                 U     idivb	%dil
 # CHECK-NEXT:  8      28    4.00    *             U     idivb	(%rax)
 # CHECK-NEXT:  66     102   16.50                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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      100   0.25                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      1     0.50                        lahf
+# CHECK-NEXT:  3      7     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.25                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.25                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.25                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  7      11    2.00                        rcrq	%cl, %rdi
 # CHECK-NEXT:  10     15    2.50           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  11     18    2.25           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.25                  U     rdmsr
+# CHECK-NEXT:  1      100   0.25                  U     rdpmc
+# CHECK-NEXT:  8      18    2.00                  U     rdtsc
+# CHECK-NEXT:  22     42    5.50                  U     rdtscp
 # CHECK-NEXT:  2      2     1.00                        rolb	%dil
 # CHECK-NEXT:  2      2     1.00                        rorb	%dil
 # CHECK-NEXT:  5      7     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      6     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.25    *             U     ud2
+# 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:  3      2     0.75                        xaddw	%bx, %cx
@@ -1622,7 +1645,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   -     564.75 314.75 262.17 262.17 206.00 279.25 620.25 82.67
+# CHECK-NEXT: 60.00   -     573.50 323.00 262.67 262.67 206.00 290.50 630.00 82.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -1846,6 +1869,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divl	(%rax)
 # CHECK-NEXT:  -      -     10.25  4.75    -      -      -     11.25  5.75    -     divq	%rcx
 # CHECK-NEXT: 10.00   -     1.00    -     0.50   0.50    -      -      -      -     divq	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     enter	$7, $4095
 # CHECK-NEXT: 10.00   -     1.00    -      -      -      -      -      -      -     idivb	%dil
 # CHECK-NEXT:  -      -     2.25   0.25   0.50   0.50    -     4.25   0.25    -     idivb	(%rax)
 # CHECK-NEXT:  -      -     19.50  10.50   -      -      -     12.50  23.50   -     idivw	%si
@@ -1898,7 +1922,10 @@ xorq (%rax), %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.25   0.25    -      -      -     0.25   0.25    -     invlpg	(%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     lahf
+# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -     0.50   0.50    -     leave
 # 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
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     lodsl	(%rsi), %eax
@@ -2048,6 +2075,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     2.00   2.50    -      -      -     0.50   2.00    -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -     2.75   1.75   0.83   0.83    -     0.75   2.75   0.33   rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -     2.50   3.00   0.83   0.83    -     1.00   2.50   0.33   rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdmsr
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     rdpmc
+# CHECK-NEXT:  -      -     1.75   1.25    -      -      -     2.25   2.75    -     rdtsc
+# CHECK-NEXT:  -      -     5.00   5.00    -      -      -     7.00   5.00    -     rdtscp
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rolb	%dil
 # CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     rorb	%dil
 # CHECK-NEXT:  -      -     1.00    -     0.83   0.83   1.00    -     1.00   0.33   rolb	(%rax)
@@ -2322,6 +2353,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq	%rsi, %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     ud2
+# 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.75   0.75    -      -      -     0.75   0.75    -     xaddw	%bx, %cx

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=351835&r1=351834&r2=351835&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 Jan 22 08:29:26 2019
@@ -254,6 +254,8 @@ divl (%rax)
 divq %rcx
 divq (%rax)
 
+enter $7, $4095
+
 idivb %dil
 idivb (%rax)
 idivw %si
@@ -315,8 +317,13 @@ insl
 
 int $7
 
+invlpg  (%rax)
+invlpga %rax, %ecx
+
 lahf
 
+leave
+
 lodsb
 lodsw
 lodsl
@@ -486,6 +493,11 @@ rcrq %cl, %rdi
 rclq %cl, (%rax)
 rcrq %cl, (%rax)
 
+rdmsr
+rdpmc
+rdtsc
+rdtscp
+
 rolb %dil
 rorb %dil
 rolb (%rax)
@@ -789,6 +801,8 @@ testq %rsi, (%rax)
 
 ud2
 
+wrmsr
+
 xaddb %bl, %cl
 xaddb %bl, (%rcx)
 
@@ -1081,6 +1095,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  3      29    25.00   *             U     divl	(%rax)
 # CHECK-NEXT:  2      41    41.00                 U     divq	%rcx
 # CHECK-NEXT:  3      45    41.00   *             U     divq	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     enter	$7, $4095
 # CHECK-NEXT:  1      15    15.00                 U     idivb	%dil
 # CHECK-NEXT:  2      19    15.00   *             U     idivb	(%rax)
 # CHECK-NEXT:  2      17    17.00                 U     idivw	%si
@@ -1133,7 +1148,10 @@ xorq (%rax), %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                  U     invlpg	(%rax)
+# CHECK-NEXT:  1      100   0.25                  U     invlpga	%rax, %ecx
 # CHECK-NEXT:  1      100   0.25                        lahf
+# CHECK-NEXT:  2      8     0.50    *                   leave
 # CHECK-NEXT:  1      100   0.25                  U     lodsb	(%rsi), %al
 # CHECK-NEXT:  1      100   0.25                  U     lodsw	(%rsi), %ax
 # CHECK-NEXT:  1      100   0.25                  U     lodsl	(%rsi), %eax
@@ -1283,6 +1301,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        rcrq	%cl, %rdi
 # CHECK-NEXT:  1      100   0.25           *            rclq	%cl, (%rax)
 # CHECK-NEXT:  1      100   0.25           *            rcrq	%cl, (%rax)
+# CHECK-NEXT:  1      100   0.25                  U     rdmsr
+# CHECK-NEXT:  1      100   0.25                  U     rdpmc
+# CHECK-NEXT:  1      100   0.25                  U     rdtsc
+# CHECK-NEXT:  1      100   0.25                  U     rdtscp
 # CHECK-NEXT:  1      1     0.25                        rolb	%dil
 # CHECK-NEXT:  1      1     0.25                        rorb	%dil
 # CHECK-NEXT:  3      5     1.00    *      *            rolb	(%rax)
@@ -1557,6 +1579,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  1      1     0.25                        testq	%rsi, %rdi
 # CHECK-NEXT:  2      5     0.50    *                   testq	%rsi, (%rax)
 # CHECK-NEXT:  1      100   0.25    *             U     ud2
+# 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      1     0.25                        xaddw	%bx, %cx
@@ -1624,7 +1647,7 @@ xorq (%rax), %rdi
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
-# CHECK-NEXT: 165.00 165.00 153.50 187.50 169.50 153.50 392.00  -      -      -      -     34.00
+# CHECK-NEXT: 165.50 165.50 153.75 187.75 169.75 153.75 392.00  -      -      -      -     34.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -1848,6 +1871,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT: 0.50   0.50    -      -     1.00    -     25.00   -      -      -      -      -     divl	(%rax)
 # CHECK-NEXT:  -      -      -      -     1.00    -     41.00   -      -      -      -      -     divq	%rcx
 # CHECK-NEXT: 0.50   0.50    -      -     1.00    -     41.00   -      -      -      -      -     divq	(%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     enter	$7, $4095
 # CHECK-NEXT:  -      -      -      -     1.00    -     15.00   -      -      -      -      -     idivb	%dil
 # CHECK-NEXT: 0.50   0.50    -      -     1.00    -     15.00   -      -      -      -      -     idivb	(%rax)
 # CHECK-NEXT:  -      -      -      -     1.00    -     17.00   -      -      -      -      -     idivw	%si
@@ -1900,7 +1924,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     insw	%dx, %es:(%rdi)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     insl	%dx, %es:(%rdi)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     int	$7
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     invlpg	(%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     invlpga	%rax, %ecx
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     lahf
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     leave
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     lodsb	(%rsi), %al
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     lodsw	(%rsi), %ax
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     lodsl	(%rsi), %eax
@@ -2050,6 +2077,10 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     rcrq	%cl, %rdi
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rclq	%cl, (%rax)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rcrq	%cl, (%rax)
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rdmsr
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rdpmc
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rdtsc
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     rdtscp
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     rolb	%dil
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     rorb	%dil
 # CHECK-NEXT: 1.00   1.00   0.25   0.25   0.25   0.25    -      -      -      -      -      -     rolb	(%rax)
@@ -2324,6 +2355,7 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq	%rsi, %rdi
 # CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq	%rsi, (%rax)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     ud2
+# CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     wrmsr
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     xaddb	%bl, %cl
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     xaddb	%bl, (%rcx)
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     xaddw	%bx, %cx




More information about the llvm-commits mailing list