xref: /llvm-project/llvm/test/MC/X86/apx/rex2-format-intel.s (revision 3d35b94e3a9abcf5f703267c7653fd6ef39870b6)
158bb2d19SShengchen Kan# RUN: llvm-mc -triple x86_64 -show-encoding -x86-asm-syntax=intel -output-asm-variant=1 %s | FileCheck %s
258bb2d19SShengchen Kan
358bb2d19SShengchen Kan## AddRegFrm
458bb2d19SShengchen Kan
558bb2d19SShengchen Kan# CHECK: mov	r16d, 1
658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xb8,0x01,0x00,0x00,0x00]
758bb2d19SShengchen Kan         mov	r16d, 1
858bb2d19SShengchen Kan
958bb2d19SShengchen Kan## MRMSrcReg
1058bb2d19SShengchen Kan
1158bb2d19SShengchen Kan# CHECK: movsxd	rax, r16d
1258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x18,0x63,0xc0]
1358bb2d19SShengchen Kan         movsxd	rax, r16d
1458bb2d19SShengchen Kan
1558bb2d19SShengchen Kan# CHECK: movsxd	r16, eax
1658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x48,0x63,0xc0]
1758bb2d19SShengchen Kan         movsxd	r16, eax
1858bb2d19SShengchen Kan
1958bb2d19SShengchen Kan# CHECK: movsxd	r17, r16d
2058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x58,0x63,0xc8]
2158bb2d19SShengchen Kan         movsxd	r17, r16d
2258bb2d19SShengchen Kan
23*3d35b94eSShengchen Kan# CHECK: popcnt r17d, r16d
24*3d35b94eSShengchen Kan# CHECK: encoding: [0xf3,0xd5,0xd0,0xb8,0xc8]
25*3d35b94eSShengchen Kan         popcnt r17d, r16d
26*3d35b94eSShengchen Kan
2758bb2d19SShengchen Kan## MRMSrcRegCC
2858bb2d19SShengchen Kan
2958bb2d19SShengchen Kan# CHECK: cmovl	eax, r16d
3058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x4c,0xc0]
3158bb2d19SShengchen Kan         cmovl	eax, r16d
3258bb2d19SShengchen Kan
3358bb2d19SShengchen Kan# CHECK: cmovl	r16d, eax
3458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xc0,0x4c,0xc0]
3558bb2d19SShengchen Kan         cmovl	r16d, eax
3658bb2d19SShengchen Kan
3758bb2d19SShengchen Kan# CHECK: cmovl	r17d, r16d
3858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xd0,0x4c,0xc8]
3958bb2d19SShengchen Kan         cmovl	r17d, r16d
4058bb2d19SShengchen Kan
4158bb2d19SShengchen Kan## MRMSrcMem
4258bb2d19SShengchen Kan
4358bb2d19SShengchen Kan# CHECK: imul	ebx, dword ptr [r16 + rax]
4458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0xaf,0x1c,0x00]
4558bb2d19SShengchen Kan         imul	ebx, dword ptr [r16 + rax]
4658bb2d19SShengchen Kan
4758bb2d19SShengchen Kan# CHECK: imul	ebx, dword ptr [rax + r16]
4858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xa0,0xaf,0x1c,0x00]
4958bb2d19SShengchen Kan         imul	ebx, dword ptr [rax + r16]
5058bb2d19SShengchen Kan
5158bb2d19SShengchen Kan# CHECK: imul	r16d, dword ptr [rax + rbx]
5258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xc0,0xaf,0x04,0x18]
5358bb2d19SShengchen Kan         imul	r16d, dword ptr [rax + rbx]
5458bb2d19SShengchen Kan
5558bb2d19SShengchen Kan# CHECK: imul	eax, dword ptr [r16 + r17]
5658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xb0,0xaf,0x04,0x08]
5758bb2d19SShengchen Kan         imul	eax, dword ptr [r16 + r17]
5858bb2d19SShengchen Kan
5958bb2d19SShengchen Kan# CHECK: imul	r17d, dword ptr [rax + r16]
6058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xe0,0xaf,0x0c,0x00]
6158bb2d19SShengchen Kan         imul	r17d, dword ptr [rax + r16]
6258bb2d19SShengchen Kan
6358bb2d19SShengchen Kan# CHECK: imul	r17d, dword ptr [r16 + rax]
6458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xd0,0xaf,0x0c,0x00]
6558bb2d19SShengchen Kan         imul	r17d, dword ptr [r16 + rax]
6658bb2d19SShengchen Kan
6758bb2d19SShengchen Kan# CHECK: imul	r18d, dword ptr [r16 + r17]
6858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xf0,0xaf,0x14,0x08]
6958bb2d19SShengchen Kan         imul	r18d, dword ptr [r16 + r17]
7058bb2d19SShengchen Kan
7158bb2d19SShengchen Kan## MRMSrcMemCC
7258bb2d19SShengchen Kan
7358bb2d19SShengchen Kan# CHECK: cmovl	ebx, dword ptr [r16 + rax]
7458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x4c,0x1c,0x00]
7558bb2d19SShengchen Kan         cmovl	ebx, dword ptr [r16 + rax]
7658bb2d19SShengchen Kan
7758bb2d19SShengchen Kan# CHECK: cmovl	ebx, dword ptr [rax + r16]
7858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xa0,0x4c,0x1c,0x00]
7958bb2d19SShengchen Kan         cmovl	ebx, dword ptr [rax + r16]
8058bb2d19SShengchen Kan
8158bb2d19SShengchen Kan# CHECK: cmovl	r16d, dword ptr [rax + rbx]
8258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xc0,0x4c,0x04,0x18]
8358bb2d19SShengchen Kan         cmovl	r16d, dword ptr [rax + rbx]
8458bb2d19SShengchen Kan
8558bb2d19SShengchen Kan# CHECK: cmovl	eax, dword ptr [r16 + r17]
8658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xb0,0x4c,0x04,0x08]
8758bb2d19SShengchen Kan         cmovl	eax, dword ptr [r16 + r17]
8858bb2d19SShengchen Kan
8958bb2d19SShengchen Kan# CHECK: cmovl	r17d, dword ptr [rax + r16]
9058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xe0,0x4c,0x0c,0x00]
9158bb2d19SShengchen Kan         cmovl	r17d, dword ptr [rax + r16]
9258bb2d19SShengchen Kan
9358bb2d19SShengchen Kan# CHECK: cmovl	r17d, dword ptr [r16 + rax]
9458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xd0,0x4c,0x0c,0x00]
9558bb2d19SShengchen Kan         cmovl	r17d, dword ptr [r16 + rax]
9658bb2d19SShengchen Kan
9758bb2d19SShengchen Kan# CHECK: cmovl	r18d, dword ptr [r16 + r17]
9858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xf0,0x4c,0x14,0x08]
9958bb2d19SShengchen Kan         cmovl	r18d, dword ptr [r16 + r17]
10058bb2d19SShengchen Kan
10158bb2d19SShengchen Kan## MRMDestReg
10258bb2d19SShengchen Kan
10358bb2d19SShengchen Kan# CHECK: mov	r16d, eax
10458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0x89,0xc0]
10558bb2d19SShengchen Kan         mov	r16d, eax
10658bb2d19SShengchen Kan
10758bb2d19SShengchen Kan# CHECK: mov	eax, r16d
10858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x40,0x89,0xc0]
10958bb2d19SShengchen Kan         mov	eax, r16d
11058bb2d19SShengchen Kan
11158bb2d19SShengchen Kan# CHECK: mov	r17d, r16d
11258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x50,0x89,0xc1]
11358bb2d19SShengchen Kan         mov	r17d, r16d
11458bb2d19SShengchen Kan
11558bb2d19SShengchen Kan## MRMDestMem
11658bb2d19SShengchen Kan
11758bb2d19SShengchen Kan# CHECK: mov	dword ptr [r16 + rax], ebx
11858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0x89,0x1c,0x00]
11958bb2d19SShengchen Kan         mov	dword ptr [r16 + rax], ebx
12058bb2d19SShengchen Kan
12158bb2d19SShengchen Kan# CHECK: mov	dword ptr [rax + r16], ebx
12258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0x89,0x1c,0x00]
12358bb2d19SShengchen Kan         mov	dword ptr [rax + r16], ebx
12458bb2d19SShengchen Kan
12558bb2d19SShengchen Kan# CHECK: mov	dword ptr [rax + rbx], r16d
12658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x40,0x89,0x04,0x18]
12758bb2d19SShengchen Kan         mov	dword ptr [rax + rbx], r16d
12858bb2d19SShengchen Kan
12958bb2d19SShengchen Kan# CHECK: mov	dword ptr [r16 + r17], eax
13058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0x89,0x04,0x08]
13158bb2d19SShengchen Kan         mov	dword ptr [r16 + r17], eax
13258bb2d19SShengchen Kan
13358bb2d19SShengchen Kan# CHECK: mov	dword ptr [rax + r16], r17d
13458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x60,0x89,0x0c,0x00]
13558bb2d19SShengchen Kan         mov	dword ptr [rax + r16], r17d
13658bb2d19SShengchen Kan
13758bb2d19SShengchen Kan# CHECK: mov	dword ptr [r16 + rax], r17d
13858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x50,0x89,0x0c,0x00]
13958bb2d19SShengchen Kan         mov	dword ptr [r16 + rax], r17d
14058bb2d19SShengchen Kan
14158bb2d19SShengchen Kan# CHECK: mov	dword ptr [r16 + r17], r18d
14258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x70,0x89,0x14,0x08]
14358bb2d19SShengchen Kan         mov	dword ptr [r16 + r17], r18d
14458bb2d19SShengchen Kan
14558bb2d19SShengchen Kan# CHECK: mov    byte ptr [r16 + r14], bpl
14658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x12,0x88,0x2c,0x30]
14758bb2d19SShengchen Kan         mov    byte ptr [r16 + r14], bpl
14858bb2d19SShengchen Kan
14958bb2d19SShengchen Kan## MRMXmCC
15058bb2d19SShengchen Kan
15158bb2d19SShengchen Kan# CHECK: sete	byte ptr [rax + r16]
15258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xa0,0x94,0x04,0x00]
15358bb2d19SShengchen Kan         sete	byte ptr [rax + r16]
15458bb2d19SShengchen Kan
15558bb2d19SShengchen Kan# CHECK: sete	byte ptr [r16 + rax]
15658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x94,0x04,0x00]
15758bb2d19SShengchen Kan         sete	byte ptr [r16 + rax]
15858bb2d19SShengchen Kan
15958bb2d19SShengchen Kan# CHECK: sete	byte ptr [r16 + r17]
16058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xb0,0x94,0x04,0x08]
16158bb2d19SShengchen Kan         sete	byte ptr [r16 + r17]
16258bb2d19SShengchen Kan
16358bb2d19SShengchen Kan## MRMXm
16458bb2d19SShengchen Kan
16558bb2d19SShengchen Kan# CHECK: nop	dword ptr [rax + r16]
16658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xa0,0x1f,0x04,0x00]
16758bb2d19SShengchen Kan         nop	dword ptr [rax + r16]
16858bb2d19SShengchen Kan
16958bb2d19SShengchen Kan# CHECK: nop	dword ptr [r16 + rax]
17058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x1f,0x04,0x00]
17158bb2d19SShengchen Kan         nop	dword ptr [r16 + rax]
17258bb2d19SShengchen Kan
17358bb2d19SShengchen Kan# CHECK: nop	dword ptr [r16 + r17]
17458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0xb0,0x1f,0x04,0x08]
17558bb2d19SShengchen Kan         nop	dword ptr [r16 + r17]
17658bb2d19SShengchen Kan
17758bb2d19SShengchen Kan## MRM0m
17858bb2d19SShengchen Kan
17958bb2d19SShengchen Kan# CHECK: inc	dword ptr [rax + r16]
18058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xff,0x04,0x00]
18158bb2d19SShengchen Kan         inc	dword ptr [rax + r16]
18258bb2d19SShengchen Kan
18358bb2d19SShengchen Kan# CHECK: inc	dword ptr [r16 + rax]
18458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xff,0x04,0x00]
18558bb2d19SShengchen Kan         inc	dword ptr [r16 + rax]
18658bb2d19SShengchen Kan
18758bb2d19SShengchen Kan# CHECK: inc	dword ptr [r16 + r17]
18858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xff,0x04,0x08]
18958bb2d19SShengchen Kan         inc	dword ptr [r16 + r17]
19058bb2d19SShengchen Kan
19158bb2d19SShengchen Kan## MRM1m
19258bb2d19SShengchen Kan
19358bb2d19SShengchen Kan# CHECK: dec	dword ptr [rax + r16]
19458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xff,0x0c,0x00]
19558bb2d19SShengchen Kan         dec	dword ptr [rax + r16]
19658bb2d19SShengchen Kan
19758bb2d19SShengchen Kan# CHECK: dec	dword ptr [r16 + rax]
19858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xff,0x0c,0x00]
19958bb2d19SShengchen Kan         dec	dword ptr [r16 + rax]
20058bb2d19SShengchen Kan
20158bb2d19SShengchen Kan# CHECK: dec	dword ptr [r16 + r17]
20258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xff,0x0c,0x08]
20358bb2d19SShengchen Kan         dec	dword ptr [r16 + r17]
20458bb2d19SShengchen Kan
20558bb2d19SShengchen Kan## MRM2m
20658bb2d19SShengchen Kan
20758bb2d19SShengchen Kan# CHECK: not	dword ptr [rax + r16]
20858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x14,0x00]
20958bb2d19SShengchen Kan         not	dword ptr [rax + r16]
21058bb2d19SShengchen Kan
21158bb2d19SShengchen Kan# CHECK: not	dword ptr [r16 + rax]
21258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x14,0x00]
21358bb2d19SShengchen Kan         not	dword ptr [r16 + rax]
21458bb2d19SShengchen Kan
21558bb2d19SShengchen Kan# CHECK: not	dword ptr [r16 + r17]
21658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x14,0x08]
21758bb2d19SShengchen Kan         not	dword ptr [r16 + r17]
21858bb2d19SShengchen Kan
21958bb2d19SShengchen Kan## MRM3m
22058bb2d19SShengchen Kan
22158bb2d19SShengchen Kan# CHECK: neg	dword ptr [rax + r16]
22258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x1c,0x00]
22358bb2d19SShengchen Kan         neg	dword ptr [rax + r16]
22458bb2d19SShengchen Kan
22558bb2d19SShengchen Kan# CHECK: neg	dword ptr [r16 + rax]
22658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x1c,0x00]
22758bb2d19SShengchen Kan         neg	dword ptr [r16 + rax]
22858bb2d19SShengchen Kan
22958bb2d19SShengchen Kan# CHECK: neg	dword ptr [r16 + r17]
23058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x1c,0x08]
23158bb2d19SShengchen Kan         neg	dword ptr [r16 + r17]
23258bb2d19SShengchen Kan
23358bb2d19SShengchen Kan## MRM4m
23458bb2d19SShengchen Kan
23558bb2d19SShengchen Kan# CHECK: mul	dword ptr [rax + r16]
23658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x24,0x00]
23758bb2d19SShengchen Kan         mul	dword ptr [rax + r16]
23858bb2d19SShengchen Kan
23958bb2d19SShengchen Kan# CHECK: mul	dword ptr [r16 + rax]
24058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x24,0x00]
24158bb2d19SShengchen Kan         mul	dword ptr [r16 + rax]
24258bb2d19SShengchen Kan
24358bb2d19SShengchen Kan# CHECK: mul	dword ptr [r16 + r17]
24458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x24,0x08]
24558bb2d19SShengchen Kan         mul	dword ptr [r16 + r17]
24658bb2d19SShengchen Kan
24758bb2d19SShengchen Kan## MRM5m
24858bb2d19SShengchen Kan
24958bb2d19SShengchen Kan# CHECK: imul	dword ptr [rax + r16]
25058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x2c,0x00]
25158bb2d19SShengchen Kan         imul	dword ptr [rax + r16]
25258bb2d19SShengchen Kan
25358bb2d19SShengchen Kan# CHECK: imul	dword ptr [r16 + rax]
25458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x2c,0x00]
25558bb2d19SShengchen Kan         imul	dword ptr [r16 + rax]
25658bb2d19SShengchen Kan
25758bb2d19SShengchen Kan# CHECK: imul	dword ptr [r16 + r17]
25858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x2c,0x08]
25958bb2d19SShengchen Kan         imul	dword ptr [r16 + r17]
26058bb2d19SShengchen Kan
26158bb2d19SShengchen Kan## MRM6m
26258bb2d19SShengchen Kan
26358bb2d19SShengchen Kan# CHECK: div	dword ptr [rax + r16]
26458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x34,0x00]
26558bb2d19SShengchen Kan         div	dword ptr [rax + r16]
26658bb2d19SShengchen Kan
26758bb2d19SShengchen Kan# CHECK: div	dword ptr [r16 + rax]
26858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x34,0x00]
26958bb2d19SShengchen Kan         div	dword ptr [r16 + rax]
27058bb2d19SShengchen Kan
27158bb2d19SShengchen Kan# CHECK: div	dword ptr [r16 + r17]
27258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x34,0x08]
27358bb2d19SShengchen Kan         div	dword ptr [r16 + r17]
27458bb2d19SShengchen Kan
27558bb2d19SShengchen Kan## MRM7m
27658bb2d19SShengchen Kan
27758bb2d19SShengchen Kan# CHECK: idiv	dword ptr [rax + r16]
27858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x20,0xf7,0x3c,0x00]
27958bb2d19SShengchen Kan         idiv	dword ptr [rax + r16]
28058bb2d19SShengchen Kan
28158bb2d19SShengchen Kan# CHECK: idiv	dword ptr [r16 + rax]
28258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0x3c,0x00]
28358bb2d19SShengchen Kan         idiv	dword ptr [r16 + rax]
28458bb2d19SShengchen Kan
28558bb2d19SShengchen Kan# CHECK: idiv	dword ptr [r16 + r17]
28658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x30,0xf7,0x3c,0x08]
28758bb2d19SShengchen Kan         idiv	dword ptr [r16 + r17]
28858bb2d19SShengchen Kan
28958bb2d19SShengchen Kan## MRMXrCC
29058bb2d19SShengchen Kan
29158bb2d19SShengchen Kan# CHECK: sete	r16b
29258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x94,0xc0]
29358bb2d19SShengchen Kan         sete	r16b
29458bb2d19SShengchen Kan
29558bb2d19SShengchen Kan## MRMXr
29658bb2d19SShengchen Kan
29758bb2d19SShengchen Kan# CHECK: nop	r16d
29858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x90,0x1f,0xc0]
29958bb2d19SShengchen Kan         nop	r16d
30058bb2d19SShengchen Kan
30158bb2d19SShengchen Kan## MRM0r
30258bb2d19SShengchen Kan
30358bb2d19SShengchen Kan# CHECK: inc	r16d
30458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xff,0xc0]
30558bb2d19SShengchen Kan         inc	r16d
30658bb2d19SShengchen Kan
30758bb2d19SShengchen Kan## MRM1r
30858bb2d19SShengchen Kan
30958bb2d19SShengchen Kan# CHECK: dec	r16d
31058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xff,0xc8]
31158bb2d19SShengchen Kan         dec	r16d
31258bb2d19SShengchen Kan
31358bb2d19SShengchen Kan## MRM2r
31458bb2d19SShengchen Kan
31558bb2d19SShengchen Kan# CHECK: not	r16d
31658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xd0]
31758bb2d19SShengchen Kan         not	r16d
31858bb2d19SShengchen Kan
31958bb2d19SShengchen Kan## MRM3r
32058bb2d19SShengchen Kan
32158bb2d19SShengchen Kan# CHECK: neg	r16d
32258bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xd8]
32358bb2d19SShengchen Kan         neg	r16d
32458bb2d19SShengchen Kan
32558bb2d19SShengchen Kan## MRM4r
32658bb2d19SShengchen Kan
32758bb2d19SShengchen Kan# CHECK: mul	r16d
32858bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xe0]
32958bb2d19SShengchen Kan         mul	r16d
33058bb2d19SShengchen Kan
33158bb2d19SShengchen Kan## MRM5r
33258bb2d19SShengchen Kan
33358bb2d19SShengchen Kan# CHECK: imul	r16d
33458bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xe8]
33558bb2d19SShengchen Kan         imul	r16d
33658bb2d19SShengchen Kan
33758bb2d19SShengchen Kan## MRM6r
33858bb2d19SShengchen Kan
33958bb2d19SShengchen Kan# CHECK: div	r16d
34058bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xf0]
34158bb2d19SShengchen Kan         div	r16d
34258bb2d19SShengchen Kan
34358bb2d19SShengchen Kan## MRM7r
34458bb2d19SShengchen Kan
34558bb2d19SShengchen Kan# CHECK: idiv	r16d
34658bb2d19SShengchen Kan# CHECK: encoding: [0xd5,0x10,0xf7,0xf8]
34758bb2d19SShengchen Kan         idiv	r16d
348