[llvm-mca][x86] Add SET/TEST instruction resource tests
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 1 Aug 2018 15:29:47 +0000 (15:29 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Wed, 1 Aug 2018 15:29:47 +0000 (15:29 +0000)
llvm-svn: 338576

llvm/test/tools/llvm-mca/X86/Atom/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/BtVer2/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/Generic/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/SLM/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/SandyBridge/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s
llvm/test/tools/llvm-mca/X86/Znver1/resources-x86_64.s

index 0c5cf63..9ed1651 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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      1     0.50                        seto   %al
+# CHECK-NEXT:  1      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  1      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  1      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  1      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  1      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  1      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  1      1     0.50                        seta   %al
+# CHECK-NEXT:  1      2     1.00           *            seta   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setbe  %al
+# CHECK-NEXT:  1      2     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  1      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  1      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  1      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  1      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  1      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  1      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  1      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  1      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.50                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.50                        testb  $7, %dil
+# CHECK-NEXT:  1      1     1.00    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testb  %sil, %dil
+# CHECK-NEXT:  1      1     1.00    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %di
+# CHECK-NEXT:  1      1     1.00    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $7, %di
+# CHECK-NEXT:  1      1     1.00    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  %si, %di
+# CHECK-NEXT:  1      1     1.00    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %edi
+# CHECK-NEXT:  1      1     1.00    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $7, %edi
+# CHECK-NEXT:  1      1     1.00    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  %esi, %edi
+# CHECK-NEXT:  1      1     1.00    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rdi
+# CHECK-NEXT:  1      1     1.00    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $7, %rdi
+# CHECK-NEXT:  1      1     1.00    *                   testq  $7, (%rax)
+# 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      6     3.00    *                   xlatb
 # CHECK-NEXT:  1      1     0.50                        xorb   $7, %al
@@ -1427,7 +1548,7 @@ xorq (%rax), %rdi
 
 # CHECK:      Resource pressure per iteration:
 # CHECK-NEXT: [0]    [1]
-# CHECK-NEXT: 2275.50 1945.50
+# CHECK-NEXT: 2318.00 1977.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    Instructions:
@@ -2000,6 +2121,38 @@ xorq (%rax), %rdi
 # 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: 0.50   0.50   seto       %al
+# CHECK-NEXT: 1.00   1.00   seto       (%rax)
+# CHECK-NEXT: 0.50   0.50   setno      %al
+# CHECK-NEXT: 1.00   1.00   setno      (%rax)
+# CHECK-NEXT: 0.50   0.50   setb       %al
+# CHECK-NEXT: 1.00   1.00   setb       (%rax)
+# CHECK-NEXT: 0.50   0.50   setae      %al
+# CHECK-NEXT: 1.00   1.00   setae      (%rax)
+# CHECK-NEXT: 0.50   0.50   sete       %al
+# CHECK-NEXT: 1.00   1.00   sete       (%rax)
+# CHECK-NEXT: 0.50   0.50   setne      %al
+# CHECK-NEXT: 1.00   1.00   setne      (%rax)
+# CHECK-NEXT: 0.50   0.50   seta       %al
+# CHECK-NEXT: 1.00   1.00   seta       (%rax)
+# CHECK-NEXT: 0.50   0.50   setbe      %al
+# CHECK-NEXT: 1.00   1.00   setbe      (%rax)
+# CHECK-NEXT: 0.50   0.50   sets       %al
+# CHECK-NEXT: 1.00   1.00   sets       (%rax)
+# CHECK-NEXT: 0.50   0.50   setns      %al
+# CHECK-NEXT: 1.00   1.00   setns      (%rax)
+# CHECK-NEXT: 0.50   0.50   setp       %al
+# CHECK-NEXT: 1.00   1.00   setp       (%rax)
+# CHECK-NEXT: 0.50   0.50   setnp      %al
+# CHECK-NEXT: 1.00   1.00   setnp      (%rax)
+# CHECK-NEXT: 0.50   0.50   setl       %al
+# CHECK-NEXT: 1.00   1.00   setl       (%rax)
+# CHECK-NEXT: 0.50   0.50   setge      %al
+# CHECK-NEXT: 1.00   1.00   setge      (%rax)
+# CHECK-NEXT: 0.50   0.50   setg       %al
+# CHECK-NEXT: 1.00   1.00   setg       (%rax)
+# CHECK-NEXT: 0.50   0.50   setle      %al
+# CHECK-NEXT: 1.00   1.00   setle      (%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)
@@ -2060,6 +2213,32 @@ 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   testb      $7, %al
+# CHECK-NEXT: 0.50   0.50   testb      $7, %dil
+# CHECK-NEXT: 1.00    -     testb      $7, (%rax)
+# CHECK-NEXT: 0.50   0.50   testb      %sil, %dil
+# CHECK-NEXT: 1.00    -     testb      %sil, (%rax)
+# CHECK-NEXT: 0.50   0.50   testw      $511, %ax
+# CHECK-NEXT: 0.50   0.50   testw      $511, %di
+# CHECK-NEXT: 1.00    -     testw      $511, (%rax)
+# CHECK-NEXT: 0.50   0.50   testw      $7, %di
+# CHECK-NEXT: 1.00    -     testw      $7, (%rax)
+# CHECK-NEXT: 0.50   0.50   testw      %si, %di
+# CHECK-NEXT: 1.00    -     testw      %si, (%rax)
+# CHECK-NEXT: 0.50   0.50   testl      $665536, %eax
+# CHECK-NEXT: 0.50   0.50   testl      $665536, %edi
+# CHECK-NEXT: 1.00    -     testl      $665536, (%rax)
+# CHECK-NEXT: 0.50   0.50   testl      $7, %edi
+# CHECK-NEXT: 1.00    -     testl      $7, (%rax)
+# CHECK-NEXT: 0.50   0.50   testl      %esi, %edi
+# CHECK-NEXT: 1.00    -     testl      %esi, (%rax)
+# CHECK-NEXT: 0.50   0.50   testq      $665536, %rax
+# CHECK-NEXT: 0.50   0.50   testq      $665536, %rdi
+# CHECK-NEXT: 1.00    -     testq      $665536, (%rax)
+# CHECK-NEXT: 0.50   0.50   testq      $7, %rdi
+# CHECK-NEXT: 1.00    -     testq      $7, (%rax)
+# 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: 3.00   3.00   xlatb
 # CHECK-NEXT: 0.50   0.50   xorb       $7, %al
index 8536c25..18ab980 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     0.50                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     0.50                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.25                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.25                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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      5     0.50    *                   xlatb
 # CHECK-NEXT:  1      1     0.25                        xorb   $7, %al
@@ -1435,7 +1556,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   -     445.50 310.00 241.33 241.33 174.00 219.50 478.00 73.33
+# CHECK-NEXT: 50.00   -     469.00 317.50 252.17 252.17 190.00 227.00 501.50 78.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -2008,6 +2129,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -      -      -      -     0.50    -     seto       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   seto       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setno      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setno      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setb       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setb       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setae      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setae      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sete       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sete       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setne      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setne      (%rax)
+# CHECK-NEXT:  -      -     0.75   0.25    -      -      -     0.25   0.75    -     seta       %al
+# CHECK-NEXT:  -      -     0.75   0.25   0.33   0.33   1.00   0.25   0.75   0.33   seta       (%rax)
+# CHECK-NEXT:  -      -     0.75   0.25    -      -      -     0.25   0.75    -     setbe      %al
+# CHECK-NEXT:  -      -     0.75   0.25   0.33   0.33   1.00   0.25   0.75   0.33   setbe      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sets       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sets       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setns      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setns      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setp       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setp       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setnp      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setnp      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setl       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setl       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setge      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setge      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setg       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setg       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setle      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setle      (%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)
@@ -2068,6 +2221,32 @@ 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    -     testb      $7, %al
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      $7, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      %sil, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      %sil, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %ax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $511, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $7, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      %si, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      %si, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %eax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $7, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      %esi, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      %esi, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $7, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $7, (%rax)
+# 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.50   0.50    -      -      -      -     xlatb
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     xorb       $7, %al
index a11bc6c..f08fddf 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  1      1     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  1      1     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  1      1     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  1      1     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  1      1     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  1      1     1.00           *            setne  (%rax)
+# CHECK-NEXT:  1      1     0.50                        seta   %al
+# CHECK-NEXT:  1      1     1.00           *            seta   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setbe  %al
+# CHECK-NEXT:  1      1     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  1      1     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  1      1     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  1      1     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  1      1     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  1      1     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  1      1     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  1      1     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  1      1     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.50                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.50                        testb  $7, %dil
+# CHECK-NEXT:  1      4     1.00    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testb  %sil, %dil
+# CHECK-NEXT:  1      4     1.00    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $7, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  %si, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $7, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  %esi, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rdi
+# CHECK-NEXT:  1      4     1.00    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $7, %rdi
+# CHECK-NEXT:  1      4     1.00    *                   testq  $7, (%rax)
+# 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      5     1.00    *                   xlatb
 # CHECK-NEXT:  1      1     0.50                        xorb   $7, %al
@@ -1439,7 +1560,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: 515.00 565.00 380.00  -      -      -      -     296.00 64.00  195.00  -      -      -      -
+# CHECK-NEXT: 544.00 594.00 380.00  -      -      -      -     307.00 64.00  211.00  -      -      -      -
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   [12]   [13]   Instructions:
@@ -2012,6 +2133,38 @@ xorq (%rax), %rdi
 # 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: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     seto   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     seto   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setno  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setno  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setb   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setb   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setae  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setae  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     sete   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     sete   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setne  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setne  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     seta   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     seta   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setbe  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setbe  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     sets   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     sets   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setns  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setns  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setp   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setp   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setnp  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setnp  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setl   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setl   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setge  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setge  (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setg   %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setg   (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     setle  %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -     1.00    -      -      -      -     setle  (%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)
@@ -2072,6 +2225,32 @@ 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    -      -      -      -      -      -      -      -      -      -      -      -     testb  $7, %al
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testb  $7, %dil
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testb  $7, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testb  %sil, %dil
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testb  %sil, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testw  $511, %ax
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testw  $511, %di
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testw  $511, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testw  $7, %di
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testw  $7, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testw  %si, %di
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testw  %si, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testl  $665536, %eax
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testl  $665536, %edi
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testl  $665536, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testl  $7, %edi
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testl  $7, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testl  %esi, %edi
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testl  %esi, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testq  $665536, %rax
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testq  $665536, %rdi
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testq  $665536, (%rax)
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     testq  $7, %rdi
+# CHECK-NEXT: 0.50   0.50    -      -      -      -      -     1.00    -      -      -      -      -      -     testq  $7, (%rax)
+# 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:  -      -      -      -      -      -      -     1.00    -      -      -      -      -      -     xlatb
 # CHECK-NEXT: 0.50   0.50    -      -      -      -      -      -      -      -      -      -      -      -     xorb   $7, %al
index 68f9d27..d94b8dd 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     1.00                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     1.00                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.33                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.33                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.33                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.33                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.33                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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      5     0.50    *                   xlatb
 # CHECK-NEXT:  1      1     0.33                        xorb   $7, %al
@@ -1433,7 +1554,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  -     386.83 192.33 218.00 378.83 266.50 266.50
+# CHECK-NEXT: 160.00  -     413.50 201.00 234.00 405.50 280.00 280.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -2006,6 +2127,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -     0.50    -      -     seto     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   seto     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setno    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setno    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setb     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setb     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setae    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setae    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     sete     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   sete     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setne    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setne    (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     seta     %al
+# CHECK-NEXT:  -      -     1.00    -     1.00   1.00   0.50   0.50   seta     (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     setbe    %al
+# CHECK-NEXT:  -      -     1.00    -     1.00   1.00   0.50   0.50   setbe    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     sets     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   sets     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setns    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setns    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setp     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setp     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setnp    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setnp    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setl     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setl     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setge    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setge    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setg     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setg     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setle    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setle    (%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)
@@ -2066,6 +2219,32 @@ 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    -      -     testb    $7, %al
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testb    $7, %dil
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testb    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testb    %sil, %dil
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testb    %sil, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $511, %ax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $511, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    $511, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $7, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    %si, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    %si, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $665536, %eax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $665536, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    $665536, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $7, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    %esi, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    %esi, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $665536, %rax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $665536, %rdi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq    $665536, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $7, %rdi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq    $7, (%rax)
+# 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.50   0.50   xlatb
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     xorb     $7, %al
index 1d70991..517c1bc 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     0.50                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     0.50                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.25                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.25                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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:  3      7     0.75    *                   xlatb
 # CHECK-NEXT:  1      1     0.25                        xorb   $7, %al
@@ -1435,7 +1556,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   -     500.00 334.50 241.83 241.83 169.00 246.00 561.50 70.33
+# CHECK-NEXT: 80.00   -     523.50 342.00 252.67 252.67 185.00 253.50 585.00 75.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -2008,6 +2129,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -      -      -      -     0.50    -     seto       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   seto       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setno      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setno      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setb       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setb       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setae      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setae      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sete       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sete       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setne      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setne      (%rax)
+# CHECK-NEXT:  -      -     0.75   0.25    -      -      -     0.25   0.75    -     seta       %al
+# CHECK-NEXT:  -      -     0.75   0.25   0.33   0.33   1.00   0.25   0.75   0.33   seta       (%rax)
+# CHECK-NEXT:  -      -     0.75   0.25    -      -      -     0.25   0.75    -     setbe      %al
+# CHECK-NEXT:  -      -     0.75   0.25   0.33   0.33   1.00   0.25   0.75   0.33   setbe      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sets       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sets       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setns      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setns      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setp       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setp       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setnp      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setnp      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setl       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setl       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setge      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setge      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setg       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setg       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setle      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setle      (%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)
@@ -2068,6 +2221,32 @@ 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    -     testb      $7, %al
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      $7, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      %sil, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      %sil, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %ax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $511, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $7, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      %si, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      %si, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %eax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $7, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      %esi, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      %esi, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $7, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $7, (%rax)
+# 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:  -      -      -      -      -      -      -      -      -      -     xlatb
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     xorb       $7, %al
index a238ff5..2fb1bb8 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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     0.50                        seto   %al
+# CHECK-NEXT:  1      1     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  1      1     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  1      1     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  1      1     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  1      1     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  1      1     1.00           *            setne  (%rax)
+# CHECK-NEXT:  1      1     0.50                        seta   %al
+# CHECK-NEXT:  1      1     1.00           *            seta   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setbe  %al
+# CHECK-NEXT:  1      1     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  1      1     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  1      1     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  1      1     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  1      1     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  1      1     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  1      1     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  1      1     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  1      1     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.50                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.50                        testb  $7, %dil
+# CHECK-NEXT:  1      4     1.00    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testb  %sil, %dil
+# CHECK-NEXT:  1      4     1.00    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.50                        testw  $511, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  $7, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testw  %si, %di
+# CHECK-NEXT:  1      4     1.00    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.50                        testl  $665536, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  $7, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testl  %esi, %edi
+# CHECK-NEXT:  1      4     1.00    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.50                        testq  $665536, %rdi
+# CHECK-NEXT:  1      4     1.00    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.50                        testq  $7, %rdi
+# CHECK-NEXT:  1      4     1.00    *                   testq  $7, (%rax)
+# 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      3     1.00    *                   xlatb
 # CHECK-NEXT:  1      1     0.50                        xorb   $7, %al
@@ -1433,7 +1554,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   -     545.00 387.00 503.00
+# CHECK-NEXT: 400.00  -      -     41.00   -     582.00 424.00 530.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    Instructions:
@@ -2006,6 +2127,38 @@ xorq (%rax), %rdi
 # 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:  -      -      -      -      -     0.50   0.50    -     seto     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   seto     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setno    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setno    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setb     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setb     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setae    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setae    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     sete     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   sete     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setne    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setne    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     seta     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   seta     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setbe    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setbe    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     sets     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   sets     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setns    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setns    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setp     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setp     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setnp    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setnp    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setl     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setl     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setge    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setge    (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setg     %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setg     (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     setle    %al
+# CHECK-NEXT:  -      -      -      -      -     1.00   1.00   1.00   setle    (%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)
@@ -2066,6 +2219,32 @@ 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:  -      -      -      -      -     0.50   0.50    -     testb    $7, %al
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testb    $7, %dil
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testb    $7, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testb    %sil, %dil
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testb    %sil, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testw    $511, %ax
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testw    $511, %di
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testw    $511, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testw    $7, %di
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testw    $7, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testw    %si, %di
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testw    %si, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testl    $665536, %eax
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testl    $665536, %edi
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testl    $665536, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testl    $7, %edi
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testl    $7, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testl    %esi, %edi
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testl    %esi, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testq    $665536, %rax
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testq    $665536, %rdi
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testq    $665536, (%rax)
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     testq    $7, %rdi
+# CHECK-NEXT:  -      -      -      -      -     0.50   0.50   1.00   testq    $7, (%rax)
+# 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   xlatb
 # CHECK-NEXT:  -      -      -      -      -     0.50   0.50    -     xorb     $7, %al
index 1593861..dd83d67 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     1.00                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     1.00                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.33                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.33                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.33                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.33                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.33                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.33                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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      5     0.50    *                   xlatb
 # CHECK-NEXT:  1      1     0.33                        xorb   $7, %al
@@ -1433,7 +1554,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  -     386.83 192.33 218.00 378.83 266.50 266.50
+# CHECK-NEXT: 160.00  -     413.50 201.00 234.00 405.50 280.00 280.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
@@ -2006,6 +2127,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -     0.50    -      -     seto     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   seto     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setno    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setno    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setb     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setb     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setae    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setae    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     sete     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   sete     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setne    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setne    (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     seta     %al
+# CHECK-NEXT:  -      -     1.00    -     1.00   1.00   0.50   0.50   seta     (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -     1.00    -      -     setbe    %al
+# CHECK-NEXT:  -      -     1.00    -     1.00   1.00   0.50   0.50   setbe    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     sets     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   sets     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setns    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setns    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setp     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setp     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setnp    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setnp    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setl     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setl     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setge    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setge    (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setg     %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setg     (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -     0.50    -      -     setle    %al
+# CHECK-NEXT:  -      -     0.50    -     1.00   0.50   0.50   0.50   setle    (%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)
@@ -2066,6 +2219,32 @@ 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    -      -     testb    $7, %al
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testb    $7, %dil
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testb    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testb    %sil, %dil
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testb    %sil, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $511, %ax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $511, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    $511, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    $7, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testw    %si, %di
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testw    %si, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $665536, %eax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $665536, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    $665536, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    $7, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    $7, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testl    %esi, %edi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testl    %esi, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $665536, %rax
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $665536, %rdi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq    $665536, (%rax)
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     testq    $7, %rdi
+# CHECK-NEXT:  -      -     0.33   0.33    -     0.33   0.50   0.50   testq    $7, (%rax)
+# 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.50   0.50   xlatb
 # CHECK-NEXT:  -      -     0.33   0.33    -     0.33    -      -     xorb     $7, %al
index 12cbef6..fc5b7cb 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     1.00                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     1.00                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.25                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.25                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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      5     0.50    *                   xlatb
 # CHECK-NEXT:  1      1     0.25                        xorb   $7, %al
@@ -1435,7 +1556,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   -     512.75 290.75 241.33 241.33 174.00 255.25 564.25 73.33
+# CHECK-NEXT: 60.00   -     537.25 297.25 252.17 252.17 190.00 261.75 588.75 78.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -2008,6 +2129,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -      -      -      -     0.50    -     seto       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   seto       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setno      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setno      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setb       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setb       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setae      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setae      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sete       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sete       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setne      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setne      (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     seta       %al
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33   1.00    -     1.00   0.33   seta       (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     setbe      %al
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33   1.00    -     1.00   0.33   setbe      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sets       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sets       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setns      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setns      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setp       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setp       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setnp      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setnp      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setl       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setl       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setge      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setge      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setg       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setg       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setle      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setle      (%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)
@@ -2068,6 +2221,32 @@ 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    -     testb      $7, %al
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      $7, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      %sil, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      %sil, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %ax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $511, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $7, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      %si, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      %si, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %eax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $7, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      %esi, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      %esi, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $7, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $7, (%rax)
+# 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.50   0.50    -      -      -      -     xlatb
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     xorb       $7, %al
index 37d8f7b..c9f27e5 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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:  1      1     0.50                        seto   %al
+# CHECK-NEXT:  3      2     1.00           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setno  %al
+# CHECK-NEXT:  3      2     1.00           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setb   %al
+# CHECK-NEXT:  3      2     1.00           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setae  %al
+# CHECK-NEXT:  3      2     1.00           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sete   %al
+# CHECK-NEXT:  3      2     1.00           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setne  %al
+# CHECK-NEXT:  3      2     1.00           *            setne  (%rax)
+# CHECK-NEXT:  2      2     1.00                        seta   %al
+# CHECK-NEXT:  4      3     1.00           *            seta   (%rax)
+# CHECK-NEXT:  2      2     1.00                        setbe  %al
+# CHECK-NEXT:  4      3     1.00           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.50                        sets   %al
+# CHECK-NEXT:  3      2     1.00           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setns  %al
+# CHECK-NEXT:  3      2     1.00           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setp   %al
+# CHECK-NEXT:  3      2     1.00           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setnp  %al
+# CHECK-NEXT:  3      2     1.00           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setl   %al
+# CHECK-NEXT:  3      2     1.00           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setge  %al
+# CHECK-NEXT:  3      2     1.00           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.50                        setg   %al
+# CHECK-NEXT:  3      2     1.00           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.50                        setle  %al
+# CHECK-NEXT:  3      2     1.00           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.25                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.25                        testb  $7, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testb  %sil, %dil
+# CHECK-NEXT:  2      6     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $7, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  %si, %di
+# CHECK-NEXT:  2      6     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $7, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  %esi, %edi
+# CHECK-NEXT:  2      6     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $7, %rdi
+# CHECK-NEXT:  2      6     0.50    *                   testq  $7, (%rax)
+# 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      5     0.50    *                   xlatb
 # CHECK-NEXT:  1      1     0.25                        xorb   $7, %al
@@ -1435,7 +1556,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   -     513.00 291.00 241.33 241.33 174.00 255.50 564.50 73.33
+# CHECK-NEXT: 60.00   -     537.50 297.50 252.17 252.17 190.00 262.00 589.00 78.67
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
@@ -2008,6 +2129,38 @@ xorq (%rax), %rdi
 # 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:  -      -     0.50    -      -      -      -      -     0.50    -     seto       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   seto       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setno      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setno      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setb       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setb       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setae      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setae      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sete       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sete       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setne      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setne      (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     seta       %al
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33   1.00    -     1.00   0.33   seta       (%rax)
+# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     1.00    -     setbe      %al
+# CHECK-NEXT:  -      -     1.00    -     0.33   0.33   1.00    -     1.00   0.33   setbe      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     sets       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   sets       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setns      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setns      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setp       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setp       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setnp      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setnp      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setl       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setl       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setge      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setge      (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setg       %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setg       (%rax)
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     setle      %al
+# CHECK-NEXT:  -      -     0.50    -     0.33   0.33   1.00    -     0.50   0.33   setle      (%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)
@@ -2068,6 +2221,32 @@ 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    -     testb      $7, %al
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      $7, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testb      %sil, %dil
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testb      %sil, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %ax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $511, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $511, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      $7, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testw      %si, %di
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testw      %si, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %eax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $665536, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      $7, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testl      %esi, %edi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testl      %esi, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rax
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $665536, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     testq      $7, %rdi
+# CHECK-NEXT:  -      -     0.25   0.25   0.50   0.50    -     0.25   0.25    -     testq      $7, (%rax)
+# 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.50   0.50    -      -      -      -     xlatb
 # CHECK-NEXT:  -      -     0.25   0.25    -      -      -     0.25   0.25    -     xorb       $7, %al
index 1d5062c..a592ed2 100644 (file)
@@ -643,6 +643,39 @@ scasw
 scasl
 scasq
 
+seto  %al
+seto  (%rax)
+setno %al
+setno (%rax)
+setb  %al
+setb  (%rax)
+setnb %al
+setnb (%rax)
+setz  %al
+setz  (%rax)
+setnz %al
+setnz (%rax)
+seta  %al
+seta  (%rax)
+setna %al
+setna (%rax)
+sets  %al
+sets  (%rax)
+setns %al
+setns (%rax)
+setp  %al
+setp  (%rax)
+setnp %al
+setnp (%rax)
+setl  %al
+setl  (%rax)
+setnl %al
+setnl (%rax)
+setg  %al
+setg  (%rax)
+setng %al
+setng (%rax)
+
 shldw %cl, %si, %di
 shrdw %cl, %si, %di
 shldw %cl, %si, (%rax)
@@ -712,6 +745,36 @@ subq %rsi, %rdi
 subq %rsi, (%rax)
 subq (%rax), %rdi
 
+testb $7, %al
+testb $7, %dil
+testb $7, (%rax)
+testb %sil, %dil
+testb %sil, (%rax)
+
+testw $511, %ax
+testw $511, %di
+testw $511, (%rax)
+testw $7, %di
+testw $7, (%rax)
+testw %si, %di
+testw %si, (%rax)
+
+testl $665536, %eax
+testl $665536, %edi
+testl $665536, (%rax)
+testl $7, %edi
+testl $7, (%rax)
+testl %esi, %edi
+testl %esi, (%rax)
+
+testq $665536, %rax
+testq $665536, %rdi
+testq $665536, (%rax)
+testq $7, %rdi
+testq $7, (%rax)
+testq %rsi, %rdi
+testq %rsi, (%rax)
+
 ud2
 
 xlatb
@@ -1328,6 +1391,38 @@ xorq (%rax), %rdi
 # 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      1     0.25                        seto   %al
+# CHECK-NEXT:  1      1     0.50           *            seto   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setno  %al
+# CHECK-NEXT:  1      1     0.50           *            setno  (%rax)
+# CHECK-NEXT:  1      1     0.25                        setb   %al
+# CHECK-NEXT:  1      1     0.50           *            setb   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setae  %al
+# CHECK-NEXT:  1      1     0.50           *            setae  (%rax)
+# CHECK-NEXT:  1      1     0.25                        sete   %al
+# CHECK-NEXT:  1      1     0.50           *            sete   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setne  %al
+# CHECK-NEXT:  1      1     0.50           *            setne  (%rax)
+# CHECK-NEXT:  1      1     0.25                        seta   %al
+# CHECK-NEXT:  1      1     0.50           *            seta   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setbe  %al
+# CHECK-NEXT:  1      1     0.50           *            setbe  (%rax)
+# CHECK-NEXT:  1      1     0.25                        sets   %al
+# CHECK-NEXT:  1      1     0.50           *            sets   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setns  %al
+# CHECK-NEXT:  1      1     0.50           *            setns  (%rax)
+# CHECK-NEXT:  1      1     0.25                        setp   %al
+# CHECK-NEXT:  1      1     0.50           *            setp   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setnp  %al
+# CHECK-NEXT:  1      1     0.50           *            setnp  (%rax)
+# CHECK-NEXT:  1      1     0.25                        setl   %al
+# CHECK-NEXT:  1      1     0.50           *            setl   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setge  %al
+# CHECK-NEXT:  1      1     0.50           *            setge  (%rax)
+# CHECK-NEXT:  1      1     0.25                        setg   %al
+# CHECK-NEXT:  1      1     0.50           *            setg   (%rax)
+# CHECK-NEXT:  1      1     0.25                        setle  %al
+# CHECK-NEXT:  1      1     0.50           *            setle  (%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)
@@ -1388,6 +1483,32 @@ 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      1     0.25                        testb  $7, %al
+# CHECK-NEXT:  1      1     0.25                        testb  $7, %dil
+# CHECK-NEXT:  2      5     0.50    *                   testb  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testb  %sil, %dil
+# CHECK-NEXT:  2      5     0.50    *                   testb  %sil, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %ax
+# CHECK-NEXT:  1      1     0.25                        testw  $511, %di
+# CHECK-NEXT:  2      5     0.50    *                   testw  $511, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  $7, %di
+# CHECK-NEXT:  2      5     0.50    *                   testw  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testw  %si, %di
+# CHECK-NEXT:  2      5     0.50    *                   testw  %si, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %eax
+# CHECK-NEXT:  1      1     0.25                        testl  $665536, %edi
+# CHECK-NEXT:  2      5     0.50    *                   testl  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  $7, %edi
+# CHECK-NEXT:  2      5     0.50    *                   testl  $7, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testl  %esi, %edi
+# CHECK-NEXT:  2      5     0.50    *                   testl  %esi, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rax
+# CHECK-NEXT:  1      1     0.25                        testq  $665536, %rdi
+# CHECK-NEXT:  2      5     0.50    *                   testq  $665536, (%rax)
+# CHECK-NEXT:  1      1     0.25                        testq  $7, %rdi
+# CHECK-NEXT:  2      5     0.50    *                   testq  $7, (%rax)
+# 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    *                   xlatb
 # CHECK-NEXT:  1      1     0.25                        xorb   $7, %al
@@ -1437,7 +1558,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: 147.50 147.50 131.50 165.50 147.50 131.50 392.00  -      -      -      -     34.00
+# CHECK-NEXT: 161.00 161.00 146.00 180.00 162.00 146.00 392.00  -      -      -      -     34.00
 
 # CHECK:      Resource pressure by instruction:
 # CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
@@ -2010,6 +2131,38 @@ xorq (%rax), %rdi
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     scasw        %es:(%rdi), %ax
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     scasl        %es:(%rdi), %eax
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     scasq        %es:(%rdi), %rax
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     seto %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     seto (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setno        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setno        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setb %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setb (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setae        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setae        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     sete %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     sete (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setne        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setne        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     seta %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     seta (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setbe        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setbe        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     sets %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     sets (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setns        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setns        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setp %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setp (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setnp        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setnp        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setl %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setl (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setge        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setge        (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setg %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setg (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     setle        %al
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     setle        (%rax)
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     shldw        %cl, %si, %di
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     shrdw        %cl, %si, %di
 # CHECK-NEXT:  -      -      -      -      -      -      -      -      -      -      -      -     shldw        %cl, %si, (%rax)
@@ -2070,6 +2223,32 @@ 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:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testb        $7, %al
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testb        $7, %dil
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testb        $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testb        %sil, %dil
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testb        %sil, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        $511, %ax
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        $511, %di
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        $511, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        $7, %di
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        %si, %di
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testw        %si, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        $665536, %eax
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        $665536, %edi
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        $7, %edi
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        $7, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        %esi, %edi
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testl        %esi, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq        $665536, %rax
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq        $665536, %rdi
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq        $665536, (%rax)
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq        $7, %rdi
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     testq        $7, (%rax)
+# 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:  -      -      -      -      -      -      -      -      -      -      -      -     xlatb
 # CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     xorb $7, %al