283 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
			
		
		
	
	
			283 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
| // RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=skx  --show-encoding %s | FileCheck %s
 | |
| 
 | |
| // CHECK: vpblendmb %zmm25, %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0x82,0x6d,0x40,0x66,0xc9]
 | |
|           vpblendmb %zmm25, %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb %zmm25, %zmm18, %zmm17 {%k5}
 | |
| // CHECK:  encoding: [0x62,0x82,0x6d,0x45,0x66,0xc9]
 | |
|           vpblendmb %zmm25, %zmm18, %zmm17 {%k5}
 | |
| 
 | |
| // CHECK: vpblendmb %zmm25, %zmm18, %zmm17 {%k5} {z}
 | |
| // CHECK:  encoding: [0x62,0x82,0x6d,0xc5,0x66,0xc9]
 | |
|           vpblendmb %zmm25, %zmm18, %zmm17 {%k5} {z}
 | |
| 
 | |
| // CHECK: vpblendmb (%rcx), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xe2,0x6d,0x40,0x66,0x09]
 | |
|           vpblendmb (%rcx), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb 291(%rax,%r14,8), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xa2,0x6d,0x40,0x66,0x8c,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vpblendmb 291(%rax,%r14,8), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb 8128(%rdx), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xe2,0x6d,0x40,0x66,0x4a,0x7f]
 | |
|           vpblendmb 8128(%rdx), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb 8192(%rdx), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xe2,0x6d,0x40,0x66,0x8a,0x00,0x20,0x00,0x00]
 | |
|           vpblendmb 8192(%rdx), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb -8192(%rdx), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xe2,0x6d,0x40,0x66,0x4a,0x80]
 | |
|           vpblendmb -8192(%rdx), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmb -8256(%rdx), %zmm18, %zmm17
 | |
| // CHECK:  encoding: [0x62,0xe2,0x6d,0x40,0x66,0x8a,0xc0,0xdf,0xff,0xff]
 | |
|           vpblendmb -8256(%rdx), %zmm18, %zmm17
 | |
| 
 | |
| // CHECK: vpblendmw %zmm17, %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x22,0xdd,0x40,0x66,0xd1]
 | |
|           vpblendmw %zmm17, %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw %zmm17, %zmm20, %zmm26 {%k7}
 | |
| // CHECK:  encoding: [0x62,0x22,0xdd,0x47,0x66,0xd1]
 | |
|           vpblendmw %zmm17, %zmm20, %zmm26 {%k7}
 | |
| 
 | |
| // CHECK: vpblendmw %zmm17, %zmm20, %zmm26 {%k7} {z}
 | |
| // CHECK:  encoding: [0x62,0x22,0xdd,0xc7,0x66,0xd1]
 | |
|           vpblendmw %zmm17, %zmm20, %zmm26 {%k7} {z}
 | |
| 
 | |
| // CHECK: vpblendmw (%rcx), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x62,0xdd,0x40,0x66,0x11]
 | |
|           vpblendmw (%rcx), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw 291(%rax,%r14,8), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x22,0xdd,0x40,0x66,0x94,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vpblendmw 291(%rax,%r14,8), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw 8128(%rdx), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x62,0xdd,0x40,0x66,0x52,0x7f]
 | |
|           vpblendmw 8128(%rdx), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw 8192(%rdx), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x62,0xdd,0x40,0x66,0x92,0x00,0x20,0x00,0x00]
 | |
|           vpblendmw 8192(%rdx), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw -8192(%rdx), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x62,0xdd,0x40,0x66,0x52,0x80]
 | |
|           vpblendmw -8192(%rdx), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vpblendmw -8256(%rdx), %zmm20, %zmm26
 | |
| // CHECK:  encoding: [0x62,0x62,0xdd,0x40,0x66,0x92,0xc0,0xdf,0xff,0xff]
 | |
|           vpblendmw -8256(%rdx), %zmm20, %zmm26
 | |
| 
 | |
| // CHECK: vptestmb %zmm19, %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xb2,0x75,0x40,0x26,0xeb]
 | |
|           vptestmb %zmm19, %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb %zmm19, %zmm17, %k5 {%k3}
 | |
| // CHECK:  encoding: [0x62,0xb2,0x75,0x43,0x26,0xeb]
 | |
|           vptestmb %zmm19, %zmm17, %k5 {%k3}
 | |
| 
 | |
| // CHECK: vptestmb (%rcx), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xf2,0x75,0x40,0x26,0x29]
 | |
|           vptestmb (%rcx), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb 291(%rax,%r14,8), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xb2,0x75,0x40,0x26,0xac,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vptestmb 291(%rax,%r14,8), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb 8128(%rdx), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xf2,0x75,0x40,0x26,0x6a,0x7f]
 | |
|           vptestmb 8128(%rdx), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb 8192(%rdx), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xf2,0x75,0x40,0x26,0xaa,0x00,0x20,0x00,0x00]
 | |
|           vptestmb 8192(%rdx), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb -8192(%rdx), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xf2,0x75,0x40,0x26,0x6a,0x80]
 | |
|           vptestmb -8192(%rdx), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmb -8256(%rdx), %zmm17, %k5
 | |
| // CHECK:  encoding: [0x62,0xf2,0x75,0x40,0x26,0xaa,0xc0,0xdf,0xff,0xff]
 | |
|           vptestmb -8256(%rdx), %zmm17, %k5
 | |
| 
 | |
| // CHECK: vptestmw %zmm19, %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xb2,0x95,0x40,0x26,0xe3]
 | |
|           vptestmw %zmm19, %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw %zmm19, %zmm29, %k4 {%k2}
 | |
| // CHECK:  encoding: [0x62,0xb2,0x95,0x42,0x26,0xe3]
 | |
|           vptestmw %zmm19, %zmm29, %k4 {%k2}
 | |
| 
 | |
| // CHECK: vptestmw (%rcx), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0x95,0x40,0x26,0x21]
 | |
|           vptestmw (%rcx), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw 291(%rax,%r14,8), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xb2,0x95,0x40,0x26,0xa4,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vptestmw 291(%rax,%r14,8), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw 8128(%rdx), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0x95,0x40,0x26,0x62,0x7f]
 | |
|           vptestmw 8128(%rdx), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw 8192(%rdx), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0x95,0x40,0x26,0xa2,0x00,0x20,0x00,0x00]
 | |
|           vptestmw 8192(%rdx), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw -8192(%rdx), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0x95,0x40,0x26,0x62,0x80]
 | |
|           vptestmw -8192(%rdx), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestmw -8256(%rdx), %zmm29, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0x95,0x40,0x26,0xa2,0xc0,0xdf,0xff,0xff]
 | |
|           vptestmw -8256(%rdx), %zmm29, %k4
 | |
| 
 | |
| // CHECK: vptestnmb %zmm23, %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xb2,0x3e,0x40,0x26,0xd7]
 | |
|           vptestnmb %zmm23, %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb %zmm23, %zmm24, %k2 {%k7}
 | |
| // CHECK:  encoding: [0x62,0xb2,0x3e,0x47,0x26,0xd7]
 | |
|           vptestnmb %zmm23, %zmm24, %k2 {%k7}
 | |
| 
 | |
| // CHECK: vptestnmb (%rcx), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0x3e,0x40,0x26,0x11]
 | |
|           vptestnmb (%rcx), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb 291(%rax,%r14,8), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xb2,0x3e,0x40,0x26,0x94,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vptestnmb 291(%rax,%r14,8), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb 8128(%rdx), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0x3e,0x40,0x26,0x52,0x7f]
 | |
|           vptestnmb 8128(%rdx), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb 8192(%rdx), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0x3e,0x40,0x26,0x92,0x00,0x20,0x00,0x00]
 | |
|           vptestnmb 8192(%rdx), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb -8192(%rdx), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0x3e,0x40,0x26,0x52,0x80]
 | |
|           vptestnmb -8192(%rdx), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmb -8256(%rdx), %zmm24, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0x3e,0x40,0x26,0x92,0xc0,0xdf,0xff,0xff]
 | |
|           vptestnmb -8256(%rdx), %zmm24, %k2
 | |
| 
 | |
| // CHECK: vptestnmw %zmm27, %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0x92,0xee,0x40,0x26,0xe3]
 | |
|           vptestnmw %zmm27, %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw %zmm27, %zmm18, %k4 {%k5}
 | |
| // CHECK:  encoding: [0x62,0x92,0xee,0x45,0x26,0xe3]
 | |
|           vptestnmw %zmm27, %zmm18, %k4 {%k5}
 | |
| 
 | |
| // CHECK: vptestnmw (%rcx), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0xee,0x40,0x26,0x21]
 | |
|           vptestnmw (%rcx), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw 291(%rax,%r14,8), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xb2,0xee,0x40,0x26,0xa4,0xf0,0x23,0x01,0x00,0x00]
 | |
|           vptestnmw 291(%rax,%r14,8), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw 8128(%rdx), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0xee,0x40,0x26,0x62,0x7f]
 | |
|           vptestnmw 8128(%rdx), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw 8192(%rdx), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0xee,0x40,0x26,0xa2,0x00,0x20,0x00,0x00]
 | |
|           vptestnmw 8192(%rdx), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw -8192(%rdx), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0xee,0x40,0x26,0x62,0x80]
 | |
|           vptestnmw -8192(%rdx), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmw -8256(%rdx), %zmm18, %k4
 | |
| // CHECK:  encoding: [0x62,0xf2,0xee,0x40,0x26,0xa2,0xc0,0xdf,0xff,0xff]
 | |
|           vptestnmw -8256(%rdx), %zmm18, %k4
 | |
| 
 | |
| // CHECK: vptestnmb %zmm19, %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xb2,0x26,0x40,0x26,0xdb]
 | |
|           vptestnmb %zmm19, %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb %zmm19, %zmm27, %k3 {%k2}
 | |
| // CHECK:  encoding: [0x62,0xb2,0x26,0x42,0x26,0xdb]
 | |
|           vptestnmb %zmm19, %zmm27, %k3 {%k2}
 | |
| 
 | |
| // CHECK: vptestnmb (%rcx), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xf2,0x26,0x40,0x26,0x19]
 | |
|           vptestnmb (%rcx), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb 4660(%rax,%r14,8), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xb2,0x26,0x40,0x26,0x9c,0xf0,0x34,0x12,0x00,0x00]
 | |
|           vptestnmb 4660(%rax,%r14,8), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb 8128(%rdx), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xf2,0x26,0x40,0x26,0x5a,0x7f]
 | |
|           vptestnmb 8128(%rdx), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb 8192(%rdx), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xf2,0x26,0x40,0x26,0x9a,0x00,0x20,0x00,0x00]
 | |
|           vptestnmb 8192(%rdx), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb -8192(%rdx), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xf2,0x26,0x40,0x26,0x5a,0x80]
 | |
|           vptestnmb -8192(%rdx), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmb -8256(%rdx), %zmm27, %k3
 | |
| // CHECK:  encoding: [0x62,0xf2,0x26,0x40,0x26,0x9a,0xc0,0xdf,0xff,0xff]
 | |
|           vptestnmb -8256(%rdx), %zmm27, %k3
 | |
| 
 | |
| // CHECK: vptestnmw %zmm21, %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xb2,0xf6,0x40,0x26,0xd5]
 | |
|           vptestnmw %zmm21, %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw %zmm21, %zmm17, %k2 {%k4}
 | |
| // CHECK:  encoding: [0x62,0xb2,0xf6,0x44,0x26,0xd5]
 | |
|           vptestnmw %zmm21, %zmm17, %k2 {%k4}
 | |
| 
 | |
| // CHECK: vptestnmw (%rcx), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0xf6,0x40,0x26,0x11]
 | |
|           vptestnmw (%rcx), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw 4660(%rax,%r14,8), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xb2,0xf6,0x40,0x26,0x94,0xf0,0x34,0x12,0x00,0x00]
 | |
|           vptestnmw 4660(%rax,%r14,8), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw 8128(%rdx), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0xf6,0x40,0x26,0x52,0x7f]
 | |
|           vptestnmw 8128(%rdx), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw 8192(%rdx), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0xf6,0x40,0x26,0x92,0x00,0x20,0x00,0x00]
 | |
|           vptestnmw 8192(%rdx), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw -8192(%rdx), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0xf6,0x40,0x26,0x52,0x80]
 | |
|           vptestnmw -8192(%rdx), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vptestnmw -8256(%rdx), %zmm17, %k2
 | |
| // CHECK:  encoding: [0x62,0xf2,0xf6,0x40,0x26,0x92,0xc0,0xdf,0xff,0xff]
 | |
|           vptestnmw -8256(%rdx), %zmm17, %k2
 | |
| 
 | |
| // CHECK: vpmovb2m %zmm28, %k5
 | |
| // CHECK:  encoding: [0x62,0x92,0x7e,0x48,0x29,0xec]
 | |
|           vpmovb2m %zmm28, %k5
 | |
| 
 | |
| // CHECK: vpmovw2m %zmm30, %k3
 | |
| // CHECK:  encoding: [0x62,0x92,0xfe,0x48,0x29,0xde]
 | |
|           vpmovw2m %zmm30, %k3
 | |
| 
 | |
| // CHECK: vpmovm2b %k3, %zmm18
 | |
| // CHECK:  encoding: [0x62,0xe2,0x7e,0x48,0x28,0xd3]
 | |
|           vpmovm2b %k3, %zmm18
 | |
| 
 | |
| // CHECK: vpmovm2w %k5, %zmm24
 | |
| // CHECK:  encoding: [0x62,0x62,0xfe,0x48,0x28,0xc5]
 | |
|           vpmovm2w %k5, %zmm24
 | |
| 
 |