1# Check AVX GFNI instructions
2
3.allow_index_reg
4.text
5_start:
6	vgf2p8mulb %ymm4, %ymm5, %ymm6
7	vgf2p8mulb -123456(%rax,%r14,8), %ymm5, %ymm6
8	vgf2p8mulb 126(%rdx), %ymm5, %ymm6
9
10	vgf2p8affineqb $0xab, %ymm4, %ymm5, %ymm6
11	vgf2p8affineqb $123, -123456(%rax,%r14,8), %ymm5, %ymm6
12	vgf2p8affineqb $123, 126(%rdx), %ymm5, %ymm6
13
14	vgf2p8affineinvqb $0xab, %ymm4, %ymm5, %ymm6
15	vgf2p8affineinvqb $123, -123456(%rax,%r14,8), %ymm5, %ymm6
16	vgf2p8affineinvqb $123, 126(%rdx), %ymm5, %ymm6
17
18	vgf2p8mulb %xmm4, %xmm5, %xmm6
19	vgf2p8mulb -123456(%rax,%r14,8), %xmm5, %xmm6
20	vgf2p8mulb 126(%rdx), %xmm5, %xmm6
21
22	vgf2p8affineqb $0xab, %xmm4, %xmm5, %xmm6
23	vgf2p8affineqb $123, -123456(%rax,%r14,8), %xmm5, %xmm6
24	vgf2p8affineqb $123, 126(%rdx), %xmm5, %xmm6
25
26	vgf2p8affineinvqb $0xab, %xmm4, %xmm5, %xmm6
27	vgf2p8affineinvqb $123, -123456(%rax,%r14,8), %xmm5, %xmm6
28	vgf2p8affineinvqb $123, 126(%rdx), %xmm5, %xmm6
29
30.intel_syntax noprefix
31
32	vgf2p8mulb ymm6, ymm5, ymm4
33	vgf2p8mulb ymm6, ymm5, YMMWORD PTR [rax+r14*8-123456]
34	vgf2p8mulb ymm6, ymm5, YMMWORD PTR [rdx+126]
35
36	vgf2p8affineqb ymm6, ymm5, ymm4, 0xab
37	vgf2p8affineqb ymm6, ymm5, YMMWORD PTR [rax+r14*8-123456], 123
38	vgf2p8affineqb ymm6, ymm5, YMMWORD PTR [rdx+126], 123
39
40	vgf2p8affineinvqb ymm6, ymm5, ymm4, 0xab
41	vgf2p8affineinvqb ymm6, ymm5, YMMWORD PTR [rax+r14*8-123456], 123
42	vgf2p8affineinvqb ymm6, ymm5, YMMWORD PTR [rdx+126], 123
43
44	vgf2p8mulb xmm6, xmm5, xmm4
45	vgf2p8mulb xmm6, xmm5, XMMWORD PTR [rax+r14*8-123456]
46	vgf2p8mulb xmm6, xmm5, XMMWORD PTR [rdx+126]
47
48	vgf2p8affineqb xmm6, xmm5, xmm4, 0xab
49	vgf2p8affineqb xmm6, xmm5, XMMWORD PTR [rax+r14*8-123456], 123
50	vgf2p8affineqb xmm6, xmm5, XMMWORD PTR [rdx+126], 123
51
52	vgf2p8affineinvqb xmm6, xmm5, xmm4, 0xab
53	vgf2p8affineinvqb xmm6, xmm5, XMMWORD PTR [rax+r14*8-123456], 123
54	vgf2p8affineinvqb xmm6, xmm5, XMMWORD PTR [rdx+126], 123
55