[llvm] r356420 - [X86] Add coverage for 16-bit and 64-bit versions of bsf/bsr/bt/btc/btr/bts in the assembly tests that are supposed to provide full coverage. Add coverage for cwtl/cltq/cwtd/cqto as well.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 18 15:06:19 PDT 2019


Author: ctopper
Date: Mon Mar 18 15:06:19 2019
New Revision: 356420

URL: http://llvm.org/viewvc/llvm-project?rev=356420&view=rev
Log:
[X86] Add coverage for 16-bit and 64-bit versions of bsf/bsr/bt/btc/btr/bts in the assembly tests that are supposed to provide full coverage. Add coverage for cwtl/cltq/cwtd/cqto as well.

Modified:
    llvm/trunk/test/MC/X86/I386-32.s
    llvm/trunk/test/MC/X86/I386-64.s
    llvm/trunk/test/MC/X86/I86-32.s
    llvm/trunk/test/MC/X86/I86-64.s

Modified: llvm/trunk/test/MC/X86/I386-32.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/I386-32.s?rev=356420&r1=356419&r2=356420&view=diff
==============================================================================
--- llvm/trunk/test/MC/X86/I386-32.s (original)
+++ llvm/trunk/test/MC/X86/I386-32.s Mon Mar 18 15:06:19 2019
@@ -1,5 +1,13 @@
 // RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
 
+// CHECK: bsfw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xbc,0xc0]        
+bsfw %ax, %ax 
+
+// CHECK: bsrw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xbd,0xc0]        
+bsrw %ax, %ax 
+
 // CHECK: bsfl %eax, %eax 
 // CHECK: encoding: [0x0f,0xbc,0xc0]        
 bsfl %eax, %eax 
@@ -8,6 +16,70 @@ bsfl %eax, %eax
 // CHECK: encoding: [0x0f,0xbd,0xc0]        
 bsrl %eax, %eax 
 
+// CHECK: btcw $0, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf8,0x00]        
+btcw $0, %ax 
+
+// CHECK: btcw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf8,0xff]        
+btcw $-1, %ax 
+
+// CHECK: btcw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf8,0xff]        
+btcw $255, %ax 
+
+// CHECK: btcw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xbb,0xc0]        
+btcw %ax, %ax 
+
+// CHECK: btw $0, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe0,0x00]        
+btw $0, %ax 
+
+// CHECK: btw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe0,0xff]        
+btw $-1, %ax 
+
+// CHECK: btw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe0,0xff]        
+btw $255, %ax 
+
+// CHECK: btw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xa3,0xc0]        
+btw %ax, %ax 
+
+// CHECK: btrw $0, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf0,0x00]        
+btrw $0, %ax 
+
+// CHECK: btrw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf0,0xff]        
+btrw $-1, %ax 
+
+// CHECK: btrw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xf0,0xff]        
+btrw $255, %ax 
+
+// CHECK: btrw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xb3,0xc0]        
+btrw %ax, %ax 
+
+// CHECK: btsw $0, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe8,0x00]        
+btsw $0, %ax 
+
+// CHECK: btsw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe8,0xff]        
+btsw $-1, %ax 
+
+// CHECK: btsw $255, %ax 
+// CHECK: encoding: [0x66,0x0f,0xba,0xe8,0xff]        
+btsw $255, %ax 
+
+// CHECK: btsw %ax, %ax 
+// CHECK: encoding: [0x66,0x0f,0xab,0xc0]        
+btsw %ax, %ax 
+
 // CHECK: btcl $0, %eax 
 // CHECK: encoding: [0x0f,0xba,0xf8,0x00]        
 btcl $0, %eax 
@@ -72,10 +144,6 @@ btsl $255, %eax
 // CHECK: encoding: [0x0f,0xab,0xc0]        
 btsl %eax, %eax 
 
-// CHECK: cltd 
-// CHECK: encoding: [0x99]          
-cltd 
-
 // CHECK: cmpsb %es:(%edi), %es:(%esi) 
 // CHECK: encoding: [0x26,0xa6]        
 cmpsb %es:(%edi), %es:(%esi) 
@@ -88,14 +156,6 @@ cmpsl %es:(%edi), %es:(%esi)
 // CHECK: encoding: [0x66,0x26,0xa7]        
 cmpsw %es:(%edi), %es:(%esi) 
 
-// CHECK: cwtd 
-// CHECK: encoding: [0x66,0x99]          
-cwtd 
-
-// CHECK: cwtl 
-// CHECK: encoding: [0x98]          
-cwtl 
-
 // CHECK: insb %dx, %es:(%edi) 
 // CHECK: encoding: [0x6c]        
 insb %dx, %es:(%edi) 

Modified: llvm/trunk/test/MC/X86/I386-64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/I386-64.s?rev=356420&r1=356419&r2=356420&view=diff
==============================================================================
--- llvm/trunk/test/MC/X86/I386-64.s (original)
+++ llvm/trunk/test/MC/X86/I386-64.s Mon Mar 18 15:06:19 2019
@@ -1,5 +1,13 @@
 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
 
+// CHECK: bsfw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xbc,0xed]        
+bsfw %r13w, %r13w 
+
+// CHECK: bsrw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xbd,0xed]        
+bsrw %r13w, %r13w 
+
 // CHECK: bsfl %r13d, %r13d 
 // CHECK: encoding: [0x45,0x0f,0xbc,0xed]        
 bsfl %r13d, %r13d 
@@ -8,6 +16,79 @@ bsfl %r13d, %r13d
 // CHECK: encoding: [0x45,0x0f,0xbd,0xed]        
 bsrl %r13d, %r13d 
 
+// CHECK: bsfq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xbc,0xed]        
+bsfq %r13, %r13 
+
+// CHECK: bsrq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xbd,0xed]        
+bsrq %r13, %r13 
+
+
+// CHECK: btcw $0, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xfd,0x00]        
+btcw $0, %r13w 
+
+// CHECK: btcw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xfd,0xff]        
+btcw $-1, %r13w 
+
+// CHECK: btcw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xfd,0xff]        
+btcw $255, %r13w 
+
+// CHECK: btcw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xbb,0xed]        
+btcw %r13w, %r13w 
+
+// CHECK: btw $0, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xe5,0x00]        
+btw $0, %r13w 
+
+// CHECK: btw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xe5,0xff]        
+btw $-1, %r13w 
+
+// CHECK: btw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xe5,0xff]        
+btw $255, %r13w 
+
+// CHECK: btw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xa3,0xed]        
+btw %r13w, %r13w 
+
+// CHECK: btrw $0, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xf5,0x00]        
+btrw $0, %r13w 
+
+// CHECK: btrw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xf5,0xff]        
+btrw $-1, %r13w 
+
+// CHECK: btrw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xf5,0xff]        
+btrw $255, %r13w 
+
+// CHECK: btrw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xb3,0xed]        
+btrw %r13w, %r13w 
+
+// CHECK: btsw $0, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xed,0x00]        
+btsw $0, %r13w 
+
+// CHECK: btsw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xed,0xff]        
+btsw $-1, %r13w 
+
+// CHECK: btsw $255, %r13w 
+// CHECK: encoding: [0x66,0x41,0x0f,0xba,0xed,0xff]        
+btsw $255, %r13w 
+
+// CHECK: btsw %r13w, %r13w 
+// CHECK: encoding: [0x66,0x45,0x0f,0xab,0xed]        
+btsw %r13w, %r13w 
+
 // CHECK: btcl $0, %r13d 
 // CHECK: encoding: [0x41,0x0f,0xba,0xfd,0x00]        
 btcl $0, %r13d 
@@ -72,9 +153,69 @@ btsl $255, %r13d
 // CHECK: encoding: [0x45,0x0f,0xab,0xed]        
 btsl %r13d, %r13d 
 
-// CHECK: cltd 
-// CHECK: encoding: [0x99]          
-cltd 
+// CHECK: btcq $0, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xfd,0x00]        
+btcq $0, %r13 
+
+// CHECK: btcq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xfd,0xff]        
+btcq $-1, %r13 
+
+// CHECK: btcq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xfd,0xff]        
+btcq $255, %r13 
+
+// CHECK: btcq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xbb,0xed]        
+btcq %r13, %r13 
+
+// CHECK: btq $0, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xe5,0x00]        
+btq $0, %r13 
+
+// CHECK: btq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xe5,0xff]        
+btq $-1, %r13 
+
+// CHECK: btq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xe5,0xff]        
+btq $255, %r13 
+
+// CHECK: btq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xa3,0xed]        
+btq %r13, %r13 
+
+// CHECK: btrq $0, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xf5,0x00]        
+btrq $0, %r13 
+
+// CHECK: btrq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xf5,0xff]        
+btrq $-1, %r13 
+
+// CHECK: btrq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xf5,0xff]        
+btrq $255, %r13 
+
+// CHECK: btrq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xb3,0xed]        
+btrq %r13, %r13 
+
+// CHECK: btsq $0, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xed,0x00]        
+btsq $0, %r13 
+
+// CHECK: btsq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xed,0xff]        
+btsq $-1, %r13 
+
+// CHECK: btsq $255, %r13 
+// CHECK: encoding: [0x49,0x0f,0xba,0xed,0xff]        
+btsq $255, %r13 
+
+// CHECK: btsq %r13, %r13 
+// CHECK: encoding: [0x4d,0x0f,0xab,0xed]        
+btsq %r13, %r13 
 
 // CHECK: cmpsb %es:(%rdi), %gs:(%rsi) 
 // CHECK: encoding: [0x65,0xa6]        
@@ -92,14 +233,6 @@ cmpsq %es:(%rdi), %gs:(%rsi)
 // CHECK: encoding: [0x66,0x65,0xa7]        
 cmpsw %es:(%rdi), %gs:(%rsi) 
 
-// CHECK: cwtd 
-// CHECK: encoding: [0x66,0x99]          
-cwtd 
-
-// CHECK: cwtl 
-// CHECK: encoding: [0x98]          
-cwtl 
-
 // CHECK: insb %dx, %es:(%rdi) 
 // CHECK: encoding: [0x6c]        
 insb %dx, %es:(%rdi) 

Modified: llvm/trunk/test/MC/X86/I86-32.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/I86-32.s?rev=356420&r1=356419&r2=356420&view=diff
==============================================================================
--- llvm/trunk/test/MC/X86/I86-32.s (original)
+++ llvm/trunk/test/MC/X86/I86-32.s Mon Mar 18 15:06:19 2019
@@ -420,6 +420,10 @@ calll 64
 // CHECK: encoding: [0x66,0x98]          
 cbtw 
 
+// CHECK: cwtl 
+// CHECK: encoding: [0x98]          
+cwtl 
+
 // CHECK: clc 
 // CHECK: encoding: [0xf8]          
 clc 
@@ -432,6 +436,10 @@ cld
 // CHECK: encoding: [0xfa]          
 cli 
 
+// CHECK: cwtd 
+// CHECK: encoding: [0x66,0x99]          
+cwtd 
+
 // CHECK: cltd 
 // CHECK: encoding: [0x99]          
 cltd 

Modified: llvm/trunk/test/MC/X86/I86-64.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/X86/I86-64.s?rev=356420&r1=356419&r2=356420&view=diff
==============================================================================
--- llvm/trunk/test/MC/X86/I86-64.s (original)
+++ llvm/trunk/test/MC/X86/I86-64.s Mon Mar 18 15:06:19 2019
@@ -684,6 +684,14 @@ callw 64
 // CHECK: encoding: [0x66,0x98]          
 cbtw 
 
+// CHECK: cwtl 
+// CHECK: encoding: [0x98]          
+cwtl 
+
+// CHECK: cltq 
+// CHECK: encoding: [0x48,0x98]          
+cltq 
+
 // CHECK: clc 
 // CHECK: encoding: [0xf8]          
 clc 
@@ -696,10 +704,18 @@ cld
 // CHECK: encoding: [0xfa]          
 cli 
 
+// CHECK: cwtd 
+// CHECK: encoding: [0x66,0x99]          
+cwtd 
+
 // CHECK: cltd 
 // CHECK: encoding: [0x99]          
 cltd 
 
+// CHECK: cqto 
+// CHECK: encoding: [0x48,0x99]          
+cqto 
+
 // CHECK: cmc 
 // CHECK: encoding: [0xf5]          
 cmc 




More information about the llvm-commits mailing list