1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00

[X86][I86,I186,I286,I386,I486,PPRO, MMX]: Adding full coverage of MC encoding for the I86, I186, I286, I386, I486, PPRO and MMX isa sets.<NFC>

NFC.
 Adding MC regressions tests to cover the I86, I186, I286, I386, I486, PPRO and MMX isa sets.
 This patch is part of a larger task to cover MC encoding of all X86 ISA Sets.
 Started in revision: https://reviews.llvm.org/D39952

Reviewers: zvi, RKSimon, AndreiGrischenko, craig.topper
Differential Revision: https://reviews.llvm.org/D40879

Change-Id: I231a35861611bfd3d23c74cc59507373f021a629
llvm-svn: 322544
This commit is contained in:
Gadi Haber 2018-01-16 11:33:45 +00:00
parent 54c6b81933
commit d141ef10e6
14 changed files with 16124 additions and 0 deletions

666
test/MC/X86/I186-32.s Normal file
View File

@ -0,0 +1,666 @@
// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: bound 3809469200(%edx,%eax,4), %eax
// CHECK: encoding: [0x62,0x84,0x82,0x10,0xe3,0x0f,0xe3]
bound 3809469200(%edx,%eax,4), %eax
// CHECK: bound 485498096, %eax
// CHECK: encoding: [0x62,0x05,0xf0,0x1c,0xf0,0x1c]
bound 485498096, %eax
// CHECK: bound 485498096(%edx,%eax,4), %eax
// CHECK: encoding: [0x62,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
bound 485498096(%edx,%eax,4), %eax
// CHECK: bound 485498096(%edx), %eax
// CHECK: encoding: [0x62,0x82,0xf0,0x1c,0xf0,0x1c]
bound 485498096(%edx), %eax
// CHECK: bound 64(%edx,%eax), %eax
// CHECK: encoding: [0x62,0x44,0x02,0x40]
bound 64(%edx,%eax), %eax
// CHECK: bound (%edx), %eax
// CHECK: encoding: [0x62,0x02]
bound (%edx), %eax
// CHECK: enter $0, $0
// CHECK: encoding: [0xc8,0x00,0x00,0x00]
enter $0, $0
// CHECK: imull $0, %eax, %eax
// CHECK: encoding: [0x6b,0xc0,0x00]
imull $0, %eax, %eax
// CHECK: insb %dx, %es:(%edi)
// CHECK: encoding: [0x6c]
insb %dx, %es:(%edi)
// CHECK: insl %dx, %es:(%edi)
// CHECK: encoding: [0x6d]
insl %dx, %es:(%edi)
// CHECK: insw %dx, %es:(%edi)
// CHECK: encoding: [0x66,0x6d]
insw %dx, %es:(%edi)
// CHECK: leave
// CHECK: encoding: [0xc9]
leave
// CHECK: outsb %es:(%esi), %dx
// CHECK: encoding: [0x26,0x6e]
outsb %es:(%esi), %dx
// CHECK: outsl %es:(%esi), %dx
// CHECK: encoding: [0x26,0x6f]
outsl %es:(%esi), %dx
// CHECK: outsw %es:(%esi), %dx
// CHECK: encoding: [0x66,0x26,0x6f]
outsw %es:(%esi), %dx
// CHECK: popal
// CHECK: encoding: [0x61]
popal
// CHECK: popaw
// CHECK: encoding: [0x66,0x61]
popaw
// CHECK: pushal
// CHECK: encoding: [0x60]
pushal
// CHECK: pushaw
// CHECK: encoding: [0x66,0x60]
pushaw
// CHECK: pushl $0
// CHECK: encoding: [0x6a,0x00]
pushl $0
// CHECK: pushw $0
// CHECK: encoding: [0x66,0x6a,0x00]
pushw $0
// CHECK: rclb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x94,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rclb $0, -485498096(%edx,%eax,4)
// CHECK: rclb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x94,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rclb $0, 485498096(%edx,%eax,4)
// CHECK: rclb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0x92,0xf0,0x1c,0xf0,0x1c,0x00]
rclb $0, 485498096(%edx)
// CHECK: rclb $0, 485498096
// CHECK: encoding: [0xc0,0x15,0xf0,0x1c,0xf0,0x1c,0x00]
rclb $0, 485498096
// CHECK: rclb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x54,0x02,0x40,0x00]
rclb $0, 64(%edx,%eax)
// CHECK: rclb $0, (%edx)
// CHECK: encoding: [0xc0,0x12,0x00]
rclb $0, (%edx)
// CHECK: rcll $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x94,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rcll $0, -485498096(%edx,%eax,4)
// CHECK: rcll $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x94,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rcll $0, 485498096(%edx,%eax,4)
// CHECK: rcll $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0x92,0xf0,0x1c,0xf0,0x1c,0x00]
rcll $0, 485498096(%edx)
// CHECK: rcll $0, 485498096
// CHECK: encoding: [0xc1,0x15,0xf0,0x1c,0xf0,0x1c,0x00]
rcll $0, 485498096
// CHECK: rcll $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x54,0x02,0x40,0x00]
rcll $0, 64(%edx,%eax)
// CHECK: rcll $0, %eax
// CHECK: encoding: [0xc1,0xd0,0x00]
rcll $0, %eax
// CHECK: rcll $0, (%edx)
// CHECK: encoding: [0xc1,0x12,0x00]
rcll $0, (%edx)
// CHECK: rclw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x94,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rclw $0, -485498096(%edx,%eax,4)
// CHECK: rclw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x94,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rclw $0, 485498096(%edx,%eax,4)
// CHECK: rclw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0x92,0xf0,0x1c,0xf0,0x1c,0x00]
rclw $0, 485498096(%edx)
// CHECK: rclw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x15,0xf0,0x1c,0xf0,0x1c,0x00]
rclw $0, 485498096
// CHECK: rclw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x54,0x02,0x40,0x00]
rclw $0, 64(%edx,%eax)
// CHECK: rclw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x12,0x00]
rclw $0, (%edx)
// CHECK: rcrb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x9c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rcrb $0, -485498096(%edx,%eax,4)
// CHECK: rcrb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x9c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rcrb $0, 485498096(%edx,%eax,4)
// CHECK: rcrb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0x9a,0xf0,0x1c,0xf0,0x1c,0x00]
rcrb $0, 485498096(%edx)
// CHECK: rcrb $0, 485498096
// CHECK: encoding: [0xc0,0x1d,0xf0,0x1c,0xf0,0x1c,0x00]
rcrb $0, 485498096
// CHECK: rcrb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x5c,0x02,0x40,0x00]
rcrb $0, 64(%edx,%eax)
// CHECK: rcrb $0, (%edx)
// CHECK: encoding: [0xc0,0x1a,0x00]
rcrb $0, (%edx)
// CHECK: rcrl $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x9c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rcrl $0, -485498096(%edx,%eax,4)
// CHECK: rcrl $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x9c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rcrl $0, 485498096(%edx,%eax,4)
// CHECK: rcrl $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0x9a,0xf0,0x1c,0xf0,0x1c,0x00]
rcrl $0, 485498096(%edx)
// CHECK: rcrl $0, 485498096
// CHECK: encoding: [0xc1,0x1d,0xf0,0x1c,0xf0,0x1c,0x00]
rcrl $0, 485498096
// CHECK: rcrl $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x5c,0x02,0x40,0x00]
rcrl $0, 64(%edx,%eax)
// CHECK: rcrl $0, %eax
// CHECK: encoding: [0xc1,0xd8,0x00]
rcrl $0, %eax
// CHECK: rcrl $0, (%edx)
// CHECK: encoding: [0xc1,0x1a,0x00]
rcrl $0, (%edx)
// CHECK: rcrw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x9c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rcrw $0, -485498096(%edx,%eax,4)
// CHECK: rcrw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x9c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rcrw $0, 485498096(%edx,%eax,4)
// CHECK: rcrw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0x9a,0xf0,0x1c,0xf0,0x1c,0x00]
rcrw $0, 485498096(%edx)
// CHECK: rcrw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x1d,0xf0,0x1c,0xf0,0x1c,0x00]
rcrw $0, 485498096
// CHECK: rcrw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x5c,0x02,0x40,0x00]
rcrw $0, 64(%edx,%eax)
// CHECK: rcrw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x1a,0x00]
rcrw $0, (%edx)
// CHECK: rep insb %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x6c]
rep insb %dx, %es:(%edi)
// CHECK: rep insl %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x6d]
rep insl %dx, %es:(%edi)
// CHECK: rep insw %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x66,0x6d]
rep insw %dx, %es:(%edi)
// CHECK: repne insb %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x6c]
repne insb %dx, %es:(%edi)
// CHECK: repne insl %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x6d]
repne insl %dx, %es:(%edi)
// CHECK: repne insw %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x66,0x6d]
repne insw %dx, %es:(%edi)
// CHECK: repne outsb %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x26,0x6e]
repne outsb %es:(%esi), %dx
// CHECK: repne outsl %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x26,0x6f]
repne outsl %es:(%esi), %dx
// CHECK: repne outsw %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x66,0x26,0x6f]
repne outsw %es:(%esi), %dx
// CHECK: rep outsb %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x26,0x6e]
rep outsb %es:(%esi), %dx
// CHECK: rep outsl %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x26,0x6f]
rep outsl %es:(%esi), %dx
// CHECK: rep outsw %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x66,0x26,0x6f]
rep outsw %es:(%esi), %dx
// CHECK: rolb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x84,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rolb $0, -485498096(%edx,%eax,4)
// CHECK: rolb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x84,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rolb $0, 485498096(%edx,%eax,4)
// CHECK: rolb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rolb $0, 485498096(%edx)
// CHECK: rolb $0, 485498096
// CHECK: encoding: [0xc0,0x05,0xf0,0x1c,0xf0,0x1c,0x00]
rolb $0, 485498096
// CHECK: rolb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x44,0x02,0x40,0x00]
rolb $0, 64(%edx,%eax)
// CHECK: rolb $0, (%edx)
// CHECK: encoding: [0xc0,0x02,0x00]
rolb $0, (%edx)
// CHECK: roll $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x84,0x82,0x10,0xe3,0x0f,0xe3,0x00]
roll $0, -485498096(%edx,%eax,4)
// CHECK: roll $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x84,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
roll $0, 485498096(%edx,%eax,4)
// CHECK: roll $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
roll $0, 485498096(%edx)
// CHECK: roll $0, 485498096
// CHECK: encoding: [0xc1,0x05,0xf0,0x1c,0xf0,0x1c,0x00]
roll $0, 485498096
// CHECK: roll $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x44,0x02,0x40,0x00]
roll $0, 64(%edx,%eax)
// CHECK: roll $0, %eax
// CHECK: encoding: [0xc1,0xc0,0x00]
roll $0, %eax
// CHECK: roll $0, (%edx)
// CHECK: encoding: [0xc1,0x02,0x00]
roll $0, (%edx)
// CHECK: rolw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x84,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rolw $0, -485498096(%edx,%eax,4)
// CHECK: rolw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x84,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rolw $0, 485498096(%edx,%eax,4)
// CHECK: rolw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rolw $0, 485498096(%edx)
// CHECK: rolw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x05,0xf0,0x1c,0xf0,0x1c,0x00]
rolw $0, 485498096
// CHECK: rolw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x44,0x02,0x40,0x00]
rolw $0, 64(%edx,%eax)
// CHECK: rolw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x02,0x00]
rolw $0, (%edx)
// CHECK: rorb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x8c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rorb $0, -485498096(%edx,%eax,4)
// CHECK: rorb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0x8c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rorb $0, 485498096(%edx,%eax,4)
// CHECK: rorb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0x8a,0xf0,0x1c,0xf0,0x1c,0x00]
rorb $0, 485498096(%edx)
// CHECK: rorb $0, 485498096
// CHECK: encoding: [0xc0,0x0d,0xf0,0x1c,0xf0,0x1c,0x00]
rorb $0, 485498096
// CHECK: rorb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x4c,0x02,0x40,0x00]
rorb $0, 64(%edx,%eax)
// CHECK: rorb $0, (%edx)
// CHECK: encoding: [0xc0,0x0a,0x00]
rorb $0, (%edx)
// CHECK: rorl $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x8c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rorl $0, -485498096(%edx,%eax,4)
// CHECK: rorl $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0x8c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rorl $0, 485498096(%edx,%eax,4)
// CHECK: rorl $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0x8a,0xf0,0x1c,0xf0,0x1c,0x00]
rorl $0, 485498096(%edx)
// CHECK: rorl $0, 485498096
// CHECK: encoding: [0xc1,0x0d,0xf0,0x1c,0xf0,0x1c,0x00]
rorl $0, 485498096
// CHECK: rorl $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x4c,0x02,0x40,0x00]
rorl $0, 64(%edx,%eax)
// CHECK: rorl $0, %eax
// CHECK: encoding: [0xc1,0xc8,0x00]
rorl $0, %eax
// CHECK: rorl $0, (%edx)
// CHECK: encoding: [0xc1,0x0a,0x00]
rorl $0, (%edx)
// CHECK: rorw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x8c,0x82,0x10,0xe3,0x0f,0xe3,0x00]
rorw $0, -485498096(%edx,%eax,4)
// CHECK: rorw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0x8c,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
rorw $0, 485498096(%edx,%eax,4)
// CHECK: rorw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0x8a,0xf0,0x1c,0xf0,0x1c,0x00]
rorw $0, 485498096(%edx)
// CHECK: rorw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x0d,0xf0,0x1c,0xf0,0x1c,0x00]
rorw $0, 485498096
// CHECK: rorw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x4c,0x02,0x40,0x00]
rorw $0, 64(%edx,%eax)
// CHECK: rorw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x0a,0x00]
rorw $0, (%edx)
// CHECK: sarb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xbc,0x82,0x10,0xe3,0x0f,0xe3,0x00]
sarb $0, -485498096(%edx,%eax,4)
// CHECK: sarb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xbc,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
sarb $0, 485498096(%edx,%eax,4)
// CHECK: sarb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0xba,0xf0,0x1c,0xf0,0x1c,0x00]
sarb $0, 485498096(%edx)
// CHECK: sarb $0, 485498096
// CHECK: encoding: [0xc0,0x3d,0xf0,0x1c,0xf0,0x1c,0x00]
sarb $0, 485498096
// CHECK: sarb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x7c,0x02,0x40,0x00]
sarb $0, 64(%edx,%eax)
// CHECK: sarb $0, (%edx)
// CHECK: encoding: [0xc0,0x3a,0x00]
sarb $0, (%edx)
// CHECK: sarl $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xbc,0x82,0x10,0xe3,0x0f,0xe3,0x00]
sarl $0, -485498096(%edx,%eax,4)
// CHECK: sarl $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xbc,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
sarl $0, 485498096(%edx,%eax,4)
// CHECK: sarl $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0xba,0xf0,0x1c,0xf0,0x1c,0x00]
sarl $0, 485498096(%edx)
// CHECK: sarl $0, 485498096
// CHECK: encoding: [0xc1,0x3d,0xf0,0x1c,0xf0,0x1c,0x00]
sarl $0, 485498096
// CHECK: sarl $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x7c,0x02,0x40,0x00]
sarl $0, 64(%edx,%eax)
// CHECK: sarl $0, %eax
// CHECK: encoding: [0xc1,0xf8,0x00]
sarl $0, %eax
// CHECK: sarl $0, (%edx)
// CHECK: encoding: [0xc1,0x3a,0x00]
sarl $0, (%edx)
// CHECK: sarw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xbc,0x82,0x10,0xe3,0x0f,0xe3,0x00]
sarw $0, -485498096(%edx,%eax,4)
// CHECK: sarw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xbc,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
sarw $0, 485498096(%edx,%eax,4)
// CHECK: sarw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0xba,0xf0,0x1c,0xf0,0x1c,0x00]
sarw $0, 485498096(%edx)
// CHECK: sarw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x3d,0xf0,0x1c,0xf0,0x1c,0x00]
sarw $0, 485498096
// CHECK: sarw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x7c,0x02,0x40,0x00]
sarw $0, 64(%edx,%eax)
// CHECK: sarw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x3a,0x00]
sarw $0, (%edx)
// CHECK: shlb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xa4,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shlb $0, -485498096(%edx,%eax,4)
// CHECK: shlb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xa4,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shlb $0, 485498096(%edx,%eax,4)
// CHECK: shlb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0xa2,0xf0,0x1c,0xf0,0x1c,0x00]
shlb $0, 485498096(%edx)
// CHECK: shlb $0, 485498096
// CHECK: encoding: [0xc0,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shlb $0, 485498096
// CHECK: shlb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x64,0x02,0x40,0x00]
shlb $0, 64(%edx,%eax)
// CHECK: shlb $0, (%edx)
// CHECK: encoding: [0xc0,0x22,0x00]
shlb $0, (%edx)
// CHECK: shll $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xa4,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shll $0, -485498096(%edx,%eax,4)
// CHECK: shll $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xa4,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shll $0, 485498096(%edx,%eax,4)
// CHECK: shll $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0xa2,0xf0,0x1c,0xf0,0x1c,0x00]
shll $0, 485498096(%edx)
// CHECK: shll $0, 485498096
// CHECK: encoding: [0xc1,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shll $0, 485498096
// CHECK: shll $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x64,0x02,0x40,0x00]
shll $0, 64(%edx,%eax)
// CHECK: shll $0, %eax
// CHECK: encoding: [0xc1,0xe0,0x00]
shll $0, %eax
// CHECK: shll $0, (%edx)
// CHECK: encoding: [0xc1,0x22,0x00]
shll $0, (%edx)
// CHECK: shlw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xa4,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shlw $0, -485498096(%edx,%eax,4)
// CHECK: shlw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xa4,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shlw $0, 485498096(%edx,%eax,4)
// CHECK: shlw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0xa2,0xf0,0x1c,0xf0,0x1c,0x00]
shlw $0, 485498096(%edx)
// CHECK: shlw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shlw $0, 485498096
// CHECK: shlw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x64,0x02,0x40,0x00]
shlw $0, 64(%edx,%eax)
// CHECK: shlw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x22,0x00]
shlw $0, (%edx)
// CHECK: shrb $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xac,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shrb $0, -485498096(%edx,%eax,4)
// CHECK: shrb $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc0,0xac,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shrb $0, 485498096(%edx,%eax,4)
// CHECK: shrb $0, 485498096(%edx)
// CHECK: encoding: [0xc0,0xaa,0xf0,0x1c,0xf0,0x1c,0x00]
shrb $0, 485498096(%edx)
// CHECK: shrb $0, 485498096
// CHECK: encoding: [0xc0,0x2d,0xf0,0x1c,0xf0,0x1c,0x00]
shrb $0, 485498096
// CHECK: shrb $0, 64(%edx,%eax)
// CHECK: encoding: [0xc0,0x6c,0x02,0x40,0x00]
shrb $0, 64(%edx,%eax)
// CHECK: shrb $0, (%edx)
// CHECK: encoding: [0xc0,0x2a,0x00]
shrb $0, (%edx)
// CHECK: shrl $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xac,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shrl $0, -485498096(%edx,%eax,4)
// CHECK: shrl $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0xc1,0xac,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shrl $0, 485498096(%edx,%eax,4)
// CHECK: shrl $0, 485498096(%edx)
// CHECK: encoding: [0xc1,0xaa,0xf0,0x1c,0xf0,0x1c,0x00]
shrl $0, 485498096(%edx)
// CHECK: shrl $0, 485498096
// CHECK: encoding: [0xc1,0x2d,0xf0,0x1c,0xf0,0x1c,0x00]
shrl $0, 485498096
// CHECK: shrl $0, 64(%edx,%eax)
// CHECK: encoding: [0xc1,0x6c,0x02,0x40,0x00]
shrl $0, 64(%edx,%eax)
// CHECK: shrl $0, %eax
// CHECK: encoding: [0xc1,0xe8,0x00]
shrl $0, %eax
// CHECK: shrl $0, (%edx)
// CHECK: encoding: [0xc1,0x2a,0x00]
shrl $0, (%edx)
// CHECK: shrw $0, -485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xac,0x82,0x10,0xe3,0x0f,0xe3,0x00]
shrw $0, -485498096(%edx,%eax,4)
// CHECK: shrw $0, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x66,0xc1,0xac,0x82,0xf0,0x1c,0xf0,0x1c,0x00]
shrw $0, 485498096(%edx,%eax,4)
// CHECK: shrw $0, 485498096(%edx)
// CHECK: encoding: [0x66,0xc1,0xaa,0xf0,0x1c,0xf0,0x1c,0x00]
shrw $0, 485498096(%edx)
// CHECK: shrw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x2d,0xf0,0x1c,0xf0,0x1c,0x00]
shrw $0, 485498096
// CHECK: shrw $0, 64(%edx,%eax)
// CHECK: encoding: [0x66,0xc1,0x6c,0x02,0x40,0x00]
shrw $0, 64(%edx,%eax)
// CHECK: shrw $0, (%edx)
// CHECK: encoding: [0x66,0xc1,0x2a,0x00]
shrw $0, (%edx)

846
test/MC/X86/I186-64.s Normal file
View File

@ -0,0 +1,846 @@
// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: enter $0, $0
// CHECK: encoding: [0xc8,0x00,0x00,0x00]
enter $0, $0
// CHECK: imull $0, %r13d, %r13d
// CHECK: encoding: [0x45,0x6b,0xed,0x00]
imull $0, %r13d, %r13d
// CHECK: insb %dx, %es:(%rdi)
// CHECK: encoding: [0x6c]
insb %dx, %es:(%rdi)
// CHECK: insl %dx, %es:(%rdi)
// CHECK: encoding: [0x6d]
insl %dx, %es:(%rdi)
// CHECK: insw %dx, %es:(%rdi)
// CHECK: encoding: [0x66,0x6d]
insw %dx, %es:(%rdi)
// CHECK: leave
// CHECK: encoding: [0xc9]
leave
// CHECK: outsb %gs:(%rsi), %dx
// CHECK: encoding: [0x65,0x6e]
outsb %gs:(%rsi), %dx
// CHECK: outsl %gs:(%rsi), %dx
// CHECK: encoding: [0x65,0x6f]
outsl %gs:(%rsi), %dx
// CHECK: outsw %gs:(%rsi), %dx
// CHECK: encoding: [0x66,0x65,0x6f]
outsw %gs:(%rsi), %dx
// CHECK: pushq $0
// CHECK: encoding: [0x6a,0x00]
pushq $0
// CHECK: rclb $0, 485498096
// CHECK: encoding: [0xc0,0x14,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rclb $0, 485498096
// CHECK: rclb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x52,0x40,0x00]
rclb $0, 64(%rdx)
// CHECK: rclb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x54,0x82,0x40,0x00]
rclb $0, 64(%rdx,%rax,4)
// CHECK: rclb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x54,0x82,0xc0,0x00]
rclb $0, -64(%rdx,%rax,4)
// CHECK: rclb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x54,0x02,0x40,0x00]
rclb $0, 64(%rdx,%rax)
// CHECK: rclb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xd6,0x00]
rclb $0, %r14b
// CHECK: rclb $0, (%rdx)
// CHECK: encoding: [0xc0,0x12,0x00]
rclb $0, (%rdx)
// CHECK: rcll $0, 485498096
// CHECK: encoding: [0xc1,0x14,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rcll $0, 485498096
// CHECK: rcll $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x52,0x40,0x00]
rcll $0, 64(%rdx)
// CHECK: rcll $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x54,0x82,0x40,0x00]
rcll $0, 64(%rdx,%rax,4)
// CHECK: rcll $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x54,0x82,0xc0,0x00]
rcll $0, -64(%rdx,%rax,4)
// CHECK: rcll $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x54,0x02,0x40,0x00]
rcll $0, 64(%rdx,%rax)
// CHECK: rcll $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xd5,0x00]
rcll $0, %r13d
// CHECK: rcll $0, (%rdx)
// CHECK: encoding: [0xc1,0x12,0x00]
rcll $0, (%rdx)
// CHECK: rclq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x14,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rclq $0, 485498096
// CHECK: rclq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x52,0x40,0x00]
rclq $0, 64(%rdx)
// CHECK: rclq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x54,0x82,0x40,0x00]
rclq $0, 64(%rdx,%rax,4)
// CHECK: rclq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x54,0x82,0xc0,0x00]
rclq $0, -64(%rdx,%rax,4)
// CHECK: rclq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x54,0x02,0x40,0x00]
rclq $0, 64(%rdx,%rax)
// CHECK: rclq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x12,0x00]
rclq $0, (%rdx)
// CHECK: rclw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x14,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rclw $0, 485498096
// CHECK: rclw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x52,0x40,0x00]
rclw $0, 64(%rdx)
// CHECK: rclw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x54,0x82,0x40,0x00]
rclw $0, 64(%rdx,%rax,4)
// CHECK: rclw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x54,0x82,0xc0,0x00]
rclw $0, -64(%rdx,%rax,4)
// CHECK: rclw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x54,0x02,0x40,0x00]
rclw $0, 64(%rdx,%rax)
// CHECK: rclw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xd6,0x00]
rclw $0, %r14w
// CHECK: rclw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x12,0x00]
rclw $0, (%rdx)
// CHECK: rcrb $0, 485498096
// CHECK: encoding: [0xc0,0x1c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rcrb $0, 485498096
// CHECK: rcrb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x5a,0x40,0x00]
rcrb $0, 64(%rdx)
// CHECK: rcrb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x5c,0x82,0x40,0x00]
rcrb $0, 64(%rdx,%rax,4)
// CHECK: rcrb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x5c,0x82,0xc0,0x00]
rcrb $0, -64(%rdx,%rax,4)
// CHECK: rcrb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x5c,0x02,0x40,0x00]
rcrb $0, 64(%rdx,%rax)
// CHECK: rcrb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xde,0x00]
rcrb $0, %r14b
// CHECK: rcrb $0, (%rdx)
// CHECK: encoding: [0xc0,0x1a,0x00]
rcrb $0, (%rdx)
// CHECK: rcrl $0, 485498096
// CHECK: encoding: [0xc1,0x1c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rcrl $0, 485498096
// CHECK: rcrl $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x5a,0x40,0x00]
rcrl $0, 64(%rdx)
// CHECK: rcrl $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x5c,0x82,0x40,0x00]
rcrl $0, 64(%rdx,%rax,4)
// CHECK: rcrl $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x5c,0x82,0xc0,0x00]
rcrl $0, -64(%rdx,%rax,4)
// CHECK: rcrl $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x5c,0x02,0x40,0x00]
rcrl $0, 64(%rdx,%rax)
// CHECK: rcrl $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xdd,0x00]
rcrl $0, %r13d
// CHECK: rcrl $0, (%rdx)
// CHECK: encoding: [0xc1,0x1a,0x00]
rcrl $0, (%rdx)
// CHECK: rcrq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x1c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rcrq $0, 485498096
// CHECK: rcrq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x5a,0x40,0x00]
rcrq $0, 64(%rdx)
// CHECK: rcrq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x5c,0x82,0x40,0x00]
rcrq $0, 64(%rdx,%rax,4)
// CHECK: rcrq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x5c,0x82,0xc0,0x00]
rcrq $0, -64(%rdx,%rax,4)
// CHECK: rcrq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x5c,0x02,0x40,0x00]
rcrq $0, 64(%rdx,%rax)
// CHECK: rcrq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x1a,0x00]
rcrq $0, (%rdx)
// CHECK: rcrw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x1c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rcrw $0, 485498096
// CHECK: rcrw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x5a,0x40,0x00]
rcrw $0, 64(%rdx)
// CHECK: rcrw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x5c,0x82,0x40,0x00]
rcrw $0, 64(%rdx,%rax,4)
// CHECK: rcrw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x5c,0x82,0xc0,0x00]
rcrw $0, -64(%rdx,%rax,4)
// CHECK: rcrw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x5c,0x02,0x40,0x00]
rcrw $0, 64(%rdx,%rax)
// CHECK: rcrw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xde,0x00]
rcrw $0, %r14w
// CHECK: rcrw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x1a,0x00]
rcrw $0, (%rdx)
// CHECK: rep insb %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x6c]
rep insb %dx, %es:(%rdi)
// CHECK: rep insl %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x6d]
rep insl %dx, %es:(%rdi)
// CHECK: rep insw %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x66,0x6d]
rep insw %dx, %es:(%rdi)
// CHECK: repne insb %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x6c]
repne insb %dx, %es:(%rdi)
// CHECK: repne insl %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x6d]
repne insl %dx, %es:(%rdi)
// CHECK: repne insw %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x66,0x6d]
repne insw %dx, %es:(%rdi)
// CHECK: repne outsb %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x65,0x6e]
repne outsb %gs:(%rsi), %dx
// CHECK: repne outsl %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x65,0x6f]
repne outsl %gs:(%rsi), %dx
// CHECK: repne outsw %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x66,0x65,0x6f]
repne outsw %gs:(%rsi), %dx
// CHECK: rep outsb %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x65,0x6e]
rep outsb %gs:(%rsi), %dx
// CHECK: rep outsl %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x65,0x6f]
rep outsl %gs:(%rsi), %dx
// CHECK: rep outsw %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x66,0x65,0x6f]
rep outsw %gs:(%rsi), %dx
// CHECK: rolb $0, 485498096
// CHECK: encoding: [0xc0,0x04,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rolb $0, 485498096
// CHECK: rolb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x42,0x40,0x00]
rolb $0, 64(%rdx)
// CHECK: rolb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x44,0x82,0x40,0x00]
rolb $0, 64(%rdx,%rax,4)
// CHECK: rolb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x44,0x82,0xc0,0x00]
rolb $0, -64(%rdx,%rax,4)
// CHECK: rolb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x44,0x02,0x40,0x00]
rolb $0, 64(%rdx,%rax)
// CHECK: rolb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xc6,0x00]
rolb $0, %r14b
// CHECK: rolb $0, (%rdx)
// CHECK: encoding: [0xc0,0x02,0x00]
rolb $0, (%rdx)
// CHECK: roll $0, 485498096
// CHECK: encoding: [0xc1,0x04,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
roll $0, 485498096
// CHECK: roll $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x42,0x40,0x00]
roll $0, 64(%rdx)
// CHECK: roll $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x44,0x82,0x40,0x00]
roll $0, 64(%rdx,%rax,4)
// CHECK: roll $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x44,0x82,0xc0,0x00]
roll $0, -64(%rdx,%rax,4)
// CHECK: roll $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x44,0x02,0x40,0x00]
roll $0, 64(%rdx,%rax)
// CHECK: roll $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xc5,0x00]
roll $0, %r13d
// CHECK: roll $0, (%rdx)
// CHECK: encoding: [0xc1,0x02,0x00]
roll $0, (%rdx)
// CHECK: rolq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x04,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rolq $0, 485498096
// CHECK: rolq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x42,0x40,0x00]
rolq $0, 64(%rdx)
// CHECK: rolq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x44,0x82,0x40,0x00]
rolq $0, 64(%rdx,%rax,4)
// CHECK: rolq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x44,0x82,0xc0,0x00]
rolq $0, -64(%rdx,%rax,4)
// CHECK: rolq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x44,0x02,0x40,0x00]
rolq $0, 64(%rdx,%rax)
// CHECK: rolq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x02,0x00]
rolq $0, (%rdx)
// CHECK: rolw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x04,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rolw $0, 485498096
// CHECK: rolw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x42,0x40,0x00]
rolw $0, 64(%rdx)
// CHECK: rolw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x44,0x82,0x40,0x00]
rolw $0, 64(%rdx,%rax,4)
// CHECK: rolw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x44,0x82,0xc0,0x00]
rolw $0, -64(%rdx,%rax,4)
// CHECK: rolw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x44,0x02,0x40,0x00]
rolw $0, 64(%rdx,%rax)
// CHECK: rolw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xc6,0x00]
rolw $0, %r14w
// CHECK: rolw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x02,0x00]
rolw $0, (%rdx)
// CHECK: rorb $0, 485498096
// CHECK: encoding: [0xc0,0x0c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rorb $0, 485498096
// CHECK: rorb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x4a,0x40,0x00]
rorb $0, 64(%rdx)
// CHECK: rorb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x4c,0x82,0x40,0x00]
rorb $0, 64(%rdx,%rax,4)
// CHECK: rorb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x4c,0x82,0xc0,0x00]
rorb $0, -64(%rdx,%rax,4)
// CHECK: rorb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x4c,0x02,0x40,0x00]
rorb $0, 64(%rdx,%rax)
// CHECK: rorb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xce,0x00]
rorb $0, %r14b
// CHECK: rorb $0, (%rdx)
// CHECK: encoding: [0xc0,0x0a,0x00]
rorb $0, (%rdx)
// CHECK: rorl $0, 485498096
// CHECK: encoding: [0xc1,0x0c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rorl $0, 485498096
// CHECK: rorl $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x4a,0x40,0x00]
rorl $0, 64(%rdx)
// CHECK: rorl $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x4c,0x82,0x40,0x00]
rorl $0, 64(%rdx,%rax,4)
// CHECK: rorl $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x4c,0x82,0xc0,0x00]
rorl $0, -64(%rdx,%rax,4)
// CHECK: rorl $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x4c,0x02,0x40,0x00]
rorl $0, 64(%rdx,%rax)
// CHECK: rorl $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xcd,0x00]
rorl $0, %r13d
// CHECK: rorl $0, (%rdx)
// CHECK: encoding: [0xc1,0x0a,0x00]
rorl $0, (%rdx)
// CHECK: rorq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x0c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rorq $0, 485498096
// CHECK: rorq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x4a,0x40,0x00]
rorq $0, 64(%rdx)
// CHECK: rorq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x4c,0x82,0x40,0x00]
rorq $0, 64(%rdx,%rax,4)
// CHECK: rorq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x4c,0x82,0xc0,0x00]
rorq $0, -64(%rdx,%rax,4)
// CHECK: rorq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x4c,0x02,0x40,0x00]
rorq $0, 64(%rdx,%rax)
// CHECK: rorq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x0a,0x00]
rorq $0, (%rdx)
// CHECK: rorw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x0c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
rorw $0, 485498096
// CHECK: rorw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x4a,0x40,0x00]
rorw $0, 64(%rdx)
// CHECK: rorw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x4c,0x82,0x40,0x00]
rorw $0, 64(%rdx,%rax,4)
// CHECK: rorw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x4c,0x82,0xc0,0x00]
rorw $0, -64(%rdx,%rax,4)
// CHECK: rorw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x4c,0x02,0x40,0x00]
rorw $0, 64(%rdx,%rax)
// CHECK: rorw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xce,0x00]
rorw $0, %r14w
// CHECK: rorw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x0a,0x00]
rorw $0, (%rdx)
// CHECK: sarb $0, 485498096
// CHECK: encoding: [0xc0,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
sarb $0, 485498096
// CHECK: sarb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x7a,0x40,0x00]
sarb $0, 64(%rdx)
// CHECK: sarb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x7c,0x82,0x40,0x00]
sarb $0, 64(%rdx,%rax,4)
// CHECK: sarb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x7c,0x82,0xc0,0x00]
sarb $0, -64(%rdx,%rax,4)
// CHECK: sarb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x7c,0x02,0x40,0x00]
sarb $0, 64(%rdx,%rax)
// CHECK: sarb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xfe,0x00]
sarb $0, %r14b
// CHECK: sarb $0, (%rdx)
// CHECK: encoding: [0xc0,0x3a,0x00]
sarb $0, (%rdx)
// CHECK: sarl $0, 485498096
// CHECK: encoding: [0xc1,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
sarl $0, 485498096
// CHECK: sarl $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x7a,0x40,0x00]
sarl $0, 64(%rdx)
// CHECK: sarl $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x7c,0x82,0x40,0x00]
sarl $0, 64(%rdx,%rax,4)
// CHECK: sarl $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x7c,0x82,0xc0,0x00]
sarl $0, -64(%rdx,%rax,4)
// CHECK: sarl $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x7c,0x02,0x40,0x00]
sarl $0, 64(%rdx,%rax)
// CHECK: sarl $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xfd,0x00]
sarl $0, %r13d
// CHECK: sarl $0, (%rdx)
// CHECK: encoding: [0xc1,0x3a,0x00]
sarl $0, (%rdx)
// CHECK: sarq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
sarq $0, 485498096
// CHECK: sarq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x7a,0x40,0x00]
sarq $0, 64(%rdx)
// CHECK: sarq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x7c,0x82,0x40,0x00]
sarq $0, 64(%rdx,%rax,4)
// CHECK: sarq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x7c,0x82,0xc0,0x00]
sarq $0, -64(%rdx,%rax,4)
// CHECK: sarq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x7c,0x02,0x40,0x00]
sarq $0, 64(%rdx,%rax)
// CHECK: sarq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x3a,0x00]
sarq $0, (%rdx)
// CHECK: sarw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x3c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
sarw $0, 485498096
// CHECK: sarw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x7a,0x40,0x00]
sarw $0, 64(%rdx)
// CHECK: sarw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x7c,0x82,0x40,0x00]
sarw $0, 64(%rdx,%rax,4)
// CHECK: sarw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x7c,0x82,0xc0,0x00]
sarw $0, -64(%rdx,%rax,4)
// CHECK: sarw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x7c,0x02,0x40,0x00]
sarw $0, 64(%rdx,%rax)
// CHECK: sarw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xfe,0x00]
sarw $0, %r14w
// CHECK: sarw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x3a,0x00]
sarw $0, (%rdx)
// CHECK: shlb $0, 485498096
// CHECK: encoding: [0xc0,0x24,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shlb $0, 485498096
// CHECK: shlb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x62,0x40,0x00]
shlb $0, 64(%rdx)
// CHECK: shlb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x64,0x82,0x40,0x00]
shlb $0, 64(%rdx,%rax,4)
// CHECK: shlb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x64,0x82,0xc0,0x00]
shlb $0, -64(%rdx,%rax,4)
// CHECK: shlb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x64,0x02,0x40,0x00]
shlb $0, 64(%rdx,%rax)
// CHECK: shlb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xe6,0x00]
shlb $0, %r14b
// CHECK: shlb $0, (%rdx)
// CHECK: encoding: [0xc0,0x22,0x00]
shlb $0, (%rdx)
// CHECK: shll $0, 485498096
// CHECK: encoding: [0xc1,0x24,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shll $0, 485498096
// CHECK: shll $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x62,0x40,0x00]
shll $0, 64(%rdx)
// CHECK: shll $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x64,0x82,0x40,0x00]
shll $0, 64(%rdx,%rax,4)
// CHECK: shll $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x64,0x82,0xc0,0x00]
shll $0, -64(%rdx,%rax,4)
// CHECK: shll $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x64,0x02,0x40,0x00]
shll $0, 64(%rdx,%rax)
// CHECK: shll $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xe5,0x00]
shll $0, %r13d
// CHECK: shll $0, (%rdx)
// CHECK: encoding: [0xc1,0x22,0x00]
shll $0, (%rdx)
// CHECK: shlq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x24,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shlq $0, 485498096
// CHECK: shlq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x62,0x40,0x00]
shlq $0, 64(%rdx)
// CHECK: shlq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x64,0x82,0x40,0x00]
shlq $0, 64(%rdx,%rax,4)
// CHECK: shlq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x64,0x82,0xc0,0x00]
shlq $0, -64(%rdx,%rax,4)
// CHECK: shlq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x64,0x02,0x40,0x00]
shlq $0, 64(%rdx,%rax)
// CHECK: shlq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x22,0x00]
shlq $0, (%rdx)
// CHECK: shlw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x24,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shlw $0, 485498096
// CHECK: shlw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x62,0x40,0x00]
shlw $0, 64(%rdx)
// CHECK: shlw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x64,0x82,0x40,0x00]
shlw $0, 64(%rdx,%rax,4)
// CHECK: shlw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x64,0x82,0xc0,0x00]
shlw $0, -64(%rdx,%rax,4)
// CHECK: shlw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x64,0x02,0x40,0x00]
shlw $0, 64(%rdx,%rax)
// CHECK: shlw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xe6,0x00]
shlw $0, %r14w
// CHECK: shlw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x22,0x00]
shlw $0, (%rdx)
// CHECK: shrb $0, 485498096
// CHECK: encoding: [0xc0,0x2c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shrb $0, 485498096
// CHECK: shrb $0, 64(%rdx)
// CHECK: encoding: [0xc0,0x6a,0x40,0x00]
shrb $0, 64(%rdx)
// CHECK: shrb $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x6c,0x82,0x40,0x00]
shrb $0, 64(%rdx,%rax,4)
// CHECK: shrb $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc0,0x6c,0x82,0xc0,0x00]
shrb $0, -64(%rdx,%rax,4)
// CHECK: shrb $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc0,0x6c,0x02,0x40,0x00]
shrb $0, 64(%rdx,%rax)
// CHECK: shrb $0, %r14b
// CHECK: encoding: [0x41,0xc0,0xee,0x00]
shrb $0, %r14b
// CHECK: shrb $0, (%rdx)
// CHECK: encoding: [0xc0,0x2a,0x00]
shrb $0, (%rdx)
// CHECK: shrl $0, 485498096
// CHECK: encoding: [0xc1,0x2c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shrl $0, 485498096
// CHECK: shrl $0, 64(%rdx)
// CHECK: encoding: [0xc1,0x6a,0x40,0x00]
shrl $0, 64(%rdx)
// CHECK: shrl $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x6c,0x82,0x40,0x00]
shrl $0, 64(%rdx,%rax,4)
// CHECK: shrl $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0xc1,0x6c,0x82,0xc0,0x00]
shrl $0, -64(%rdx,%rax,4)
// CHECK: shrl $0, 64(%rdx,%rax)
// CHECK: encoding: [0xc1,0x6c,0x02,0x40,0x00]
shrl $0, 64(%rdx,%rax)
// CHECK: shrl $0, %r13d
// CHECK: encoding: [0x41,0xc1,0xed,0x00]
shrl $0, %r13d
// CHECK: shrl $0, (%rdx)
// CHECK: encoding: [0xc1,0x2a,0x00]
shrl $0, (%rdx)
// CHECK: shrq $0, 485498096
// CHECK: encoding: [0x48,0xc1,0x2c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shrq $0, 485498096
// CHECK: shrq $0, 64(%rdx)
// CHECK: encoding: [0x48,0xc1,0x6a,0x40,0x00]
shrq $0, 64(%rdx)
// CHECK: shrq $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x6c,0x82,0x40,0x00]
shrq $0, 64(%rdx,%rax,4)
// CHECK: shrq $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0xc1,0x6c,0x82,0xc0,0x00]
shrq $0, -64(%rdx,%rax,4)
// CHECK: shrq $0, 64(%rdx,%rax)
// CHECK: encoding: [0x48,0xc1,0x6c,0x02,0x40,0x00]
shrq $0, 64(%rdx,%rax)
// CHECK: shrq $0, (%rdx)
// CHECK: encoding: [0x48,0xc1,0x2a,0x00]
shrq $0, (%rdx)
// CHECK: shrw $0, 485498096
// CHECK: encoding: [0x66,0xc1,0x2c,0x25,0xf0,0x1c,0xf0,0x1c,0x00]
shrw $0, 485498096
// CHECK: shrw $0, 64(%rdx)
// CHECK: encoding: [0x66,0xc1,0x6a,0x40,0x00]
shrw $0, 64(%rdx)
// CHECK: shrw $0, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x6c,0x82,0x40,0x00]
shrw $0, 64(%rdx,%rax,4)
// CHECK: shrw $0, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0xc1,0x6c,0x82,0xc0,0x00]
shrw $0, -64(%rdx,%rax,4)
// CHECK: shrw $0, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0xc1,0x6c,0x02,0x40,0x00]
shrw $0, 64(%rdx,%rax)
// CHECK: shrw $0, %r14w
// CHECK: encoding: [0x66,0x41,0xc1,0xee,0x00]
shrw $0, %r14w
// CHECK: shrw $0, (%rdx)
// CHECK: encoding: [0x66,0xc1,0x2a,0x00]
shrw $0, (%rdx)

266
test/MC/X86/I286-32.s Normal file
View File

@ -0,0 +1,266 @@
// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: clts
// CHECK: encoding: [0x0f,0x06]
clts
// CHECK: larl 3809469200(%edx,%eax,4), %eax
// CHECK: encoding: [0x0f,0x02,0x84,0x82,0x10,0xe3,0x0f,0xe3]
larl 3809469200(%edx,%eax,4), %eax
// CHECK: larl 485498096, %eax
// CHECK: encoding: [0x0f,0x02,0x05,0xf0,0x1c,0xf0,0x1c]
larl 485498096, %eax
// CHECK: larl 485498096(%edx,%eax,4), %eax
// CHECK: encoding: [0x0f,0x02,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
larl 485498096(%edx,%eax,4), %eax
// CHECK: larl 485498096(%edx), %eax
// CHECK: encoding: [0x0f,0x02,0x82,0xf0,0x1c,0xf0,0x1c]
larl 485498096(%edx), %eax
// CHECK: larl 64(%edx,%eax), %eax
// CHECK: encoding: [0x0f,0x02,0x44,0x02,0x40]
larl 64(%edx,%eax), %eax
// CHECK: larl %eax, %eax
// CHECK: encoding: [0x0f,0x02,0xc0]
larl %eax, %eax
// CHECK: larl (%edx), %eax
// CHECK: encoding: [0x0f,0x02,0x02]
larl (%edx), %eax
// CHECK: lldtw -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x94,0x82,0x10,0xe3,0x0f,0xe3]
lldtw -485498096(%edx,%eax,4)
// CHECK: lldtw 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x94,0x82,0xf0,0x1c,0xf0,0x1c]
lldtw 485498096(%edx,%eax,4)
// CHECK: lldtw 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0x92,0xf0,0x1c,0xf0,0x1c]
lldtw 485498096(%edx)
// CHECK: lldtw 485498096
// CHECK: encoding: [0x0f,0x00,0x15,0xf0,0x1c,0xf0,0x1c]
lldtw 485498096
// CHECK: lldtw 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x54,0x02,0x40]
lldtw 64(%edx,%eax)
// CHECK: lldtw (%edx)
// CHECK: encoding: [0x0f,0x00,0x12]
lldtw (%edx)
// CHECK: lmsww -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xb4,0x82,0x10,0xe3,0x0f,0xe3]
lmsww -485498096(%edx,%eax,4)
// CHECK: lmsww 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xb4,0x82,0xf0,0x1c,0xf0,0x1c]
lmsww 485498096(%edx,%eax,4)
// CHECK: lmsww 485498096(%edx)
// CHECK: encoding: [0x0f,0x01,0xb2,0xf0,0x1c,0xf0,0x1c]
lmsww 485498096(%edx)
// CHECK: lmsww 485498096
// CHECK: encoding: [0x0f,0x01,0x35,0xf0,0x1c,0xf0,0x1c]
lmsww 485498096
// CHECK: lmsww 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x01,0x74,0x02,0x40]
lmsww 64(%edx,%eax)
// CHECK: lmsww (%edx)
// CHECK: encoding: [0x0f,0x01,0x32]
lmsww (%edx)
// CHECK: lsll 3809469200(%edx,%eax,4), %eax
// CHECK: encoding: [0x0f,0x03,0x84,0x82,0x10,0xe3,0x0f,0xe3]
lsll 3809469200(%edx,%eax,4), %eax
// CHECK: lsll 485498096, %eax
// CHECK: encoding: [0x0f,0x03,0x05,0xf0,0x1c,0xf0,0x1c]
lsll 485498096, %eax
// CHECK: lsll 485498096(%edx,%eax,4), %eax
// CHECK: encoding: [0x0f,0x03,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
lsll 485498096(%edx,%eax,4), %eax
// CHECK: lsll 485498096(%edx), %eax
// CHECK: encoding: [0x0f,0x03,0x82,0xf0,0x1c,0xf0,0x1c]
lsll 485498096(%edx), %eax
// CHECK: lsll 64(%edx,%eax), %eax
// CHECK: encoding: [0x0f,0x03,0x44,0x02,0x40]
lsll 64(%edx,%eax), %eax
// CHECK: lsll %eax, %eax
// CHECK: encoding: [0x0f,0x03,0xc0]
lsll %eax, %eax
// CHECK: lsll (%edx), %eax
// CHECK: encoding: [0x0f,0x03,0x02]
lsll (%edx), %eax
// CHECK: ltrw -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x9c,0x82,0x10,0xe3,0x0f,0xe3]
ltrw -485498096(%edx,%eax,4)
// CHECK: ltrw 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x9c,0x82,0xf0,0x1c,0xf0,0x1c]
ltrw 485498096(%edx,%eax,4)
// CHECK: ltrw 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0x9a,0xf0,0x1c,0xf0,0x1c]
ltrw 485498096(%edx)
// CHECK: ltrw 485498096
// CHECK: encoding: [0x0f,0x00,0x1d,0xf0,0x1c,0xf0,0x1c]
ltrw 485498096
// CHECK: ltrw 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x5c,0x02,0x40]
ltrw 64(%edx,%eax)
// CHECK: ltrw (%edx)
// CHECK: encoding: [0x0f,0x00,0x1a]
ltrw (%edx)
// CHECK: sldtl %eax
// CHECK: encoding: [0x0f,0x00,0xc0]
sldtl %eax
// CHECK: sldtw -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x84,0x82,0x10,0xe3,0x0f,0xe3]
sldtw -485498096(%edx,%eax,4)
// CHECK: sldtw 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
sldtw 485498096(%edx,%eax,4)
// CHECK: sldtw 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0x82,0xf0,0x1c,0xf0,0x1c]
sldtw 485498096(%edx)
// CHECK: sldtw 485498096
// CHECK: encoding: [0x0f,0x00,0x05,0xf0,0x1c,0xf0,0x1c]
sldtw 485498096
// CHECK: sldtw 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x44,0x02,0x40]
sldtw 64(%edx,%eax)
// CHECK: sldtw (%edx)
// CHECK: encoding: [0x0f,0x00,0x02]
sldtw (%edx)
// CHECK: smswl %eax
// CHECK: encoding: [0x0f,0x01,0xe0]
smswl %eax
// CHECK: smsww -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
smsww -485498096(%edx,%eax,4)
// CHECK: smsww 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xa4,0x82,0xf0,0x1c,0xf0,0x1c]
smsww 485498096(%edx,%eax,4)
// CHECK: smsww 485498096(%edx)
// CHECK: encoding: [0x0f,0x01,0xa2,0xf0,0x1c,0xf0,0x1c]
smsww 485498096(%edx)
// CHECK: smsww 485498096
// CHECK: encoding: [0x0f,0x01,0x25,0xf0,0x1c,0xf0,0x1c]
smsww 485498096
// CHECK: smsww 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x01,0x64,0x02,0x40]
smsww 64(%edx,%eax)
// CHECK: smsww (%edx)
// CHECK: encoding: [0x0f,0x01,0x22]
smsww (%edx)
// CHECK: strl %eax
// CHECK: encoding: [0x0f,0x00,0xc8]
strl %eax
// CHECK: strw -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x8c,0x82,0x10,0xe3,0x0f,0xe3]
strw -485498096(%edx,%eax,4)
// CHECK: strw 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0x8c,0x82,0xf0,0x1c,0xf0,0x1c]
strw 485498096(%edx,%eax,4)
// CHECK: strw 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0x8a,0xf0,0x1c,0xf0,0x1c]
strw 485498096(%edx)
// CHECK: strw 485498096
// CHECK: encoding: [0x0f,0x00,0x0d,0xf0,0x1c,0xf0,0x1c]
strw 485498096
// CHECK: strw 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x4c,0x02,0x40]
strw 64(%edx,%eax)
// CHECK: strw (%edx)
// CHECK: encoding: [0x0f,0x00,0x0a]
strw (%edx)
// CHECK: verr -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0xa4,0x82,0x10,0xe3,0x0f,0xe3]
verr -485498096(%edx,%eax,4)
// CHECK: verr 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0xa4,0x82,0xf0,0x1c,0xf0,0x1c]
verr 485498096(%edx,%eax,4)
// CHECK: verr 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0xa2,0xf0,0x1c,0xf0,0x1c]
verr 485498096(%edx)
// CHECK: verr 485498096
// CHECK: encoding: [0x0f,0x00,0x25,0xf0,0x1c,0xf0,0x1c]
verr 485498096
// CHECK: verr 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x64,0x02,0x40]
verr 64(%edx,%eax)
// CHECK: verr (%edx)
// CHECK: encoding: [0x0f,0x00,0x22]
verr (%edx)
// CHECK: verw -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0xac,0x82,0x10,0xe3,0x0f,0xe3]
verw -485498096(%edx,%eax,4)
// CHECK: verw 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x00,0xac,0x82,0xf0,0x1c,0xf0,0x1c]
verw 485498096(%edx,%eax,4)
// CHECK: verw 485498096(%edx)
// CHECK: encoding: [0x0f,0x00,0xaa,0xf0,0x1c,0xf0,0x1c]
verw 485498096(%edx)
// CHECK: verw 485498096
// CHECK: encoding: [0x0f,0x00,0x2d,0xf0,0x1c,0xf0,0x1c]
verw 485498096
// CHECK: verw 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x00,0x6c,0x02,0x40]
verw 64(%edx,%eax)
// CHECK: verw (%edx)
// CHECK: encoding: [0x0f,0x00,0x2a]
verw (%edx)

406
test/MC/X86/I286-64.s Normal file
View File

@ -0,0 +1,406 @@
// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: clts
// CHECK: encoding: [0x0f,0x06]
clts
// CHECK: larl 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
larl 485498096, %r13d
// CHECK: larl 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x6a,0x40]
larl 64(%rdx), %r13d
// CHECK: larl 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x6c,0x82,0x40]
larl 64(%rdx,%rax,4), %r13d
// CHECK: larl -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x6c,0x82,0xc0]
larl -64(%rdx,%rax,4), %r13d
// CHECK: larl 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x6c,0x02,0x40]
larl 64(%rdx,%rax), %r13d
// CHECK: larl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x02,0xed]
larl %r13d, %r13d
// CHECK: larl (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0x02,0x2a]
larl (%rdx), %r13d
// CHECK: lgdtq 485498096
// CHECK: encoding: [0x0f,0x01,0x14,0x25,0xf0,0x1c,0xf0,0x1c]
lgdtq 485498096
// CHECK: lgdtq 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x52,0x40]
lgdtq 64(%rdx)
// CHECK: lgdtq 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x54,0x82,0x40]
lgdtq 64(%rdx,%rax,4)
// CHECK: lgdtq -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x54,0x82,0xc0]
lgdtq -64(%rdx,%rax,4)
// CHECK: lgdtq 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x54,0x02,0x40]
lgdtq 64(%rdx,%rax)
// CHECK: lgdtq (%rdx)
// CHECK: encoding: [0x0f,0x01,0x12]
lgdtq (%rdx)
// CHECK: lidtq 485498096
// CHECK: encoding: [0x0f,0x01,0x1c,0x25,0xf0,0x1c,0xf0,0x1c]
lidtq 485498096
// CHECK: lidtq 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x5a,0x40]
lidtq 64(%rdx)
// CHECK: lidtq 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x5c,0x82,0x40]
lidtq 64(%rdx,%rax,4)
// CHECK: lidtq -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x5c,0x82,0xc0]
lidtq -64(%rdx,%rax,4)
// CHECK: lidtq 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x5c,0x02,0x40]
lidtq 64(%rdx,%rax)
// CHECK: lidtq (%rdx)
// CHECK: encoding: [0x0f,0x01,0x1a]
lidtq (%rdx)
// CHECK: lldtw 485498096
// CHECK: encoding: [0x0f,0x00,0x14,0x25,0xf0,0x1c,0xf0,0x1c]
lldtw 485498096
// CHECK: lldtw 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x52,0x40]
lldtw 64(%rdx)
// CHECK: lldtw 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x54,0x82,0x40]
lldtw 64(%rdx,%rax,4)
// CHECK: lldtw -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x54,0x82,0xc0]
lldtw -64(%rdx,%rax,4)
// CHECK: lldtw 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x54,0x02,0x40]
lldtw 64(%rdx,%rax)
// CHECK: lldtw %r11w
// CHECK: encoding: [0x41,0x0f,0x00,0xd3]
lldtw %r11w
// CHECK: lldtw (%rdx)
// CHECK: encoding: [0x0f,0x00,0x12]
lldtw (%rdx)
// CHECK: lmsww 485498096
// CHECK: encoding: [0x0f,0x01,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
lmsww 485498096
// CHECK: lmsww 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x72,0x40]
lmsww 64(%rdx)
// CHECK: lmsww 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x74,0x82,0x40]
lmsww 64(%rdx,%rax,4)
// CHECK: lmsww -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x74,0x82,0xc0]
lmsww -64(%rdx,%rax,4)
// CHECK: lmsww 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x74,0x02,0x40]
lmsww 64(%rdx,%rax)
// CHECK: lmsww %r11w
// CHECK: encoding: [0x41,0x0f,0x01,0xf3]
lmsww %r11w
// CHECK: lmsww (%rdx)
// CHECK: encoding: [0x0f,0x01,0x32]
lmsww (%rdx)
// CHECK: lsll 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
lsll 485498096, %r13d
// CHECK: lsll 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x6a,0x40]
lsll 64(%rdx), %r13d
// CHECK: lsll 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x6c,0x82,0x40]
lsll 64(%rdx,%rax,4), %r13d
// CHECK: lsll -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x6c,0x82,0xc0]
lsll -64(%rdx,%rax,4), %r13d
// CHECK: lsll 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x6c,0x02,0x40]
lsll 64(%rdx,%rax), %r13d
// CHECK: lsll %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x03,0xed]
lsll %r13d, %r13d
// CHECK: lsll (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0x03,0x2a]
lsll (%rdx), %r13d
// CHECK: ltrw 485498096
// CHECK: encoding: [0x0f,0x00,0x1c,0x25,0xf0,0x1c,0xf0,0x1c]
ltrw 485498096
// CHECK: ltrw 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x5a,0x40]
ltrw 64(%rdx)
// CHECK: ltrw 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x5c,0x82,0x40]
ltrw 64(%rdx,%rax,4)
// CHECK: ltrw -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x5c,0x82,0xc0]
ltrw -64(%rdx,%rax,4)
// CHECK: ltrw 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x5c,0x02,0x40]
ltrw 64(%rdx,%rax)
// CHECK: ltrw %r11w
// CHECK: encoding: [0x41,0x0f,0x00,0xdb]
ltrw %r11w
// CHECK: ltrw (%rdx)
// CHECK: encoding: [0x0f,0x00,0x1a]
ltrw (%rdx)
// CHECK: sgdtq 485498096
// CHECK: encoding: [0x0f,0x01,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
sgdtq 485498096
// CHECK: sgdtq 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x42,0x40]
sgdtq 64(%rdx)
// CHECK: sgdtq 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x44,0x82,0x40]
sgdtq 64(%rdx,%rax,4)
// CHECK: sgdtq -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x44,0x82,0xc0]
sgdtq -64(%rdx,%rax,4)
// CHECK: sgdtq 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x44,0x02,0x40]
sgdtq 64(%rdx,%rax)
// CHECK: sgdtq (%rdx)
// CHECK: encoding: [0x0f,0x01,0x02]
sgdtq (%rdx)
// CHECK: sidtq 485498096
// CHECK: encoding: [0x0f,0x01,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
sidtq 485498096
// CHECK: sidtq 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x4a,0x40]
sidtq 64(%rdx)
// CHECK: sidtq 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x4c,0x82,0x40]
sidtq 64(%rdx,%rax,4)
// CHECK: sidtq -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x4c,0x82,0xc0]
sidtq -64(%rdx,%rax,4)
// CHECK: sidtq 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x4c,0x02,0x40]
sidtq 64(%rdx,%rax)
// CHECK: sidtq (%rdx)
// CHECK: encoding: [0x0f,0x01,0x0a]
sidtq (%rdx)
// CHECK: sldtl %r13d
// CHECK: encoding: [0x41,0x0f,0x00,0xc5]
sldtl %r13d
// CHECK: sldtq 485498096
// CHECK: encoding: [0x48,0x0f,0x00,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
sldtq 485498096
// CHECK: sldtq 64(%rdx)
// CHECK: encoding: [0x48,0x0f,0x00,0x42,0x40]
sldtq 64(%rdx)
// CHECK: sldtq 64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0x0f,0x00,0x44,0x82,0x40]
sldtq 64(%rdx,%rax,4)
// CHECK: sldtq -64(%rdx,%rax,4)
// CHECK: encoding: [0x48,0x0f,0x00,0x44,0x82,0xc0]
sldtq -64(%rdx,%rax,4)
// CHECK: sldtq 64(%rdx,%rax)
// CHECK: encoding: [0x48,0x0f,0x00,0x44,0x02,0x40]
sldtq 64(%rdx,%rax)
// CHECK: sldtq (%rdx)
// CHECK: encoding: [0x48,0x0f,0x00,0x02]
sldtq (%rdx)
// CHECK: sldtw 485498096
// CHECK: encoding: [0x0f,0x00,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
sldtw 485498096
// CHECK: sldtw 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x42,0x40]
sldtw 64(%rdx)
// CHECK: sldtw 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x44,0x82,0x40]
sldtw 64(%rdx,%rax,4)
// CHECK: sldtw -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x44,0x82,0xc0]
sldtw -64(%rdx,%rax,4)
// CHECK: sldtw 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x44,0x02,0x40]
sldtw 64(%rdx,%rax)
// CHECK: sldtw (%rdx)
// CHECK: encoding: [0x0f,0x00,0x02]
sldtw (%rdx)
// CHECK: smswl %r13d
// CHECK: encoding: [0x41,0x0f,0x01,0xe5]
smswl %r13d
// CHECK: smsww 485498096
// CHECK: encoding: [0x0f,0x01,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
smsww 485498096
// CHECK: smsww 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x62,0x40]
smsww 64(%rdx)
// CHECK: smsww 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x64,0x82,0x40]
smsww 64(%rdx,%rax,4)
// CHECK: smsww -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x64,0x82,0xc0]
smsww -64(%rdx,%rax,4)
// CHECK: smsww 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x64,0x02,0x40]
smsww 64(%rdx,%rax)
// CHECK: smsww (%rdx)
// CHECK: encoding: [0x0f,0x01,0x22]
smsww (%rdx)
// CHECK: strl %r13d
// CHECK: encoding: [0x41,0x0f,0x00,0xcd]
strl %r13d
// CHECK: strw 485498096
// CHECK: encoding: [0x0f,0x00,0x0c,0x25,0xf0,0x1c,0xf0,0x1c]
strw 485498096
// CHECK: strw 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x4a,0x40]
strw 64(%rdx)
// CHECK: strw 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x4c,0x82,0x40]
strw 64(%rdx,%rax,4)
// CHECK: strw -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x4c,0x82,0xc0]
strw -64(%rdx,%rax,4)
// CHECK: strw 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x4c,0x02,0x40]
strw 64(%rdx,%rax)
// CHECK: strw (%rdx)
// CHECK: encoding: [0x0f,0x00,0x0a]
strw (%rdx)
// CHECK: verr 485498096
// CHECK: encoding: [0x0f,0x00,0x24,0x25,0xf0,0x1c,0xf0,0x1c]
verr 485498096
// CHECK: verr 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x62,0x40]
verr 64(%rdx)
// CHECK: verr 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x64,0x82,0x40]
verr 64(%rdx,%rax,4)
// CHECK: verr -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x64,0x82,0xc0]
verr -64(%rdx,%rax,4)
// CHECK: verr 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x64,0x02,0x40]
verr 64(%rdx,%rax)
// CHECK: verr %r11w
// CHECK: encoding: [0x41,0x0f,0x00,0xe3]
verr %r11w
// CHECK: verr (%rdx)
// CHECK: encoding: [0x0f,0x00,0x22]
verr (%rdx)
// CHECK: verw 485498096
// CHECK: encoding: [0x0f,0x00,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
verw 485498096
// CHECK: verw 64(%rdx)
// CHECK: encoding: [0x0f,0x00,0x6a,0x40]
verw 64(%rdx)
// CHECK: verw 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x6c,0x82,0x40]
verw 64(%rdx,%rax,4)
// CHECK: verw -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x00,0x6c,0x82,0xc0]
verw -64(%rdx,%rax,4)
// CHECK: verw 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x00,0x6c,0x02,0x40]
verw 64(%rdx,%rax)
// CHECK: verw %r11w
// CHECK: encoding: [0x41,0x0f,0x00,0xeb]
verw %r11w
// CHECK: verw (%rdx)
// CHECK: encoding: [0x0f,0x00,0x2a]
verw (%rdx)

682
test/MC/X86/I386-32.s Normal file
View File

@ -0,0 +1,682 @@
// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: bsfl %eax, %eax
// CHECK: encoding: [0x0f,0xbc,0xc0]
bsfl %eax, %eax
// CHECK: bsrl %eax, %eax
// CHECK: encoding: [0x0f,0xbd,0xc0]
bsrl %eax, %eax
// CHECK: btcl $0, %eax
// CHECK: encoding: [0x0f,0xba,0xf8,0x00]
btcl $0, %eax
// CHECK: btcl %eax, %eax
// CHECK: encoding: [0x0f,0xbb,0xc0]
btcl %eax, %eax
// CHECK: btl $0, %eax
// CHECK: encoding: [0x0f,0xba,0xe0,0x00]
btl $0, %eax
// CHECK: btl %eax, %eax
// CHECK: encoding: [0x0f,0xa3,0xc0]
btl %eax, %eax
// CHECK: btrl $0, %eax
// CHECK: encoding: [0x0f,0xba,0xf0,0x00]
btrl $0, %eax
// CHECK: btrl %eax, %eax
// CHECK: encoding: [0x0f,0xb3,0xc0]
btrl %eax, %eax
// CHECK: btsl $0, %eax
// CHECK: encoding: [0x0f,0xba,0xe8,0x00]
btsl $0, %eax
// CHECK: btsl %eax, %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)
// CHECK: cmpsl %es:(%edi), %es:(%esi)
// CHECK: encoding: [0x26,0xa7]
cmpsl %es:(%edi), %es:(%esi)
// CHECK: cmpsw %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)
// CHECK: insl %dx, %es:(%edi)
// CHECK: encoding: [0x6d]
insl %dx, %es:(%edi)
// CHECK: insw %dx, %es:(%edi)
// CHECK: encoding: [0x66,0x6d]
insw %dx, %es:(%edi)
// CHECK: iretl
// CHECK: encoding: [0xcf]
iretl
// CHECK: iretw
// CHECK: encoding: [0x66,0xcf]
iretw
// CHECK: jecxz 64
// CHECK: encoding: [0xe3,A]
jecxz 64
// CHECK: lodsl %es:(%esi), %eax
// CHECK: encoding: [0x26,0xad]
lodsl %es:(%esi), %eax
// CHECK: movsb %es:(%esi), %es:(%edi)
// CHECK: encoding: [0x26,0xa4]
movsb %es:(%esi), %es:(%edi)
// CHECK: movsl %es:(%esi), %es:(%edi)
// CHECK: encoding: [0x26,0xa5]
movsl %es:(%esi), %es:(%edi)
// CHECK: movsw %es:(%esi), %es:(%edi)
// CHECK: encoding: [0x66,0x26,0xa5]
movsw %es:(%esi), %es:(%edi)
// CHECK: outsb %es:(%esi), %dx
// CHECK: encoding: [0x26,0x6e]
outsb %es:(%esi), %dx
// CHECK: outsl %es:(%esi), %dx
// CHECK: encoding: [0x26,0x6f]
outsl %es:(%esi), %dx
// CHECK: outsw %es:(%esi), %dx
// CHECK: encoding: [0x66,0x26,0x6f]
outsw %es:(%esi), %dx
// CHECK: popal
// CHECK: encoding: [0x61]
popal
// CHECK: popaw
// CHECK: encoding: [0x66,0x61]
popaw
// CHECK: popfl
// CHECK: encoding: [0x9d]
popfl
// CHECK: popfw
// CHECK: encoding: [0x66,0x9d]
popfw
// CHECK: pushal
// CHECK: encoding: [0x60]
pushal
// CHECK: pushaw
// CHECK: encoding: [0x66,0x60]
pushaw
// CHECK: pushfl
// CHECK: encoding: [0x9c]
pushfl
// CHECK: pushfw
// CHECK: encoding: [0x66,0x9c]
pushfw
// CHECK: rep cmpsb %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf3,0x26,0xa6]
rep cmpsb %es:(%edi), %es:(%esi)
// CHECK: rep cmpsl %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf3,0x26,0xa7]
rep cmpsl %es:(%edi), %es:(%esi)
// CHECK: rep cmpsw %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf3,0x66,0x26,0xa7]
rep cmpsw %es:(%edi), %es:(%esi)
// CHECK: rep insb %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x6c]
rep insb %dx, %es:(%edi)
// CHECK: rep insl %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x6d]
rep insl %dx, %es:(%edi)
// CHECK: rep insw %dx, %es:(%edi)
// CHECK: encoding: [0xf3,0x66,0x6d]
rep insw %dx, %es:(%edi)
// CHECK: rep lodsl %es:(%esi), %eax
// CHECK: encoding: [0xf3,0x26,0xad]
rep lodsl %es:(%esi), %eax
// CHECK: rep movsb %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf3,0x26,0xa4]
rep movsb %es:(%esi), %es:(%edi)
// CHECK: rep movsl %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf3,0x26,0xa5]
rep movsl %es:(%esi), %es:(%edi)
// CHECK: rep movsw %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf3,0x66,0x26,0xa5]
rep movsw %es:(%esi), %es:(%edi)
// CHECK: repne cmpsb %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf2,0x26,0xa6]
repne cmpsb %es:(%edi), %es:(%esi)
// CHECK: repne cmpsl %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf2,0x26,0xa7]
repne cmpsl %es:(%edi), %es:(%esi)
// CHECK: repne cmpsw %es:(%edi), %es:(%esi)
// CHECK: encoding: [0xf2,0x66,0x26,0xa7]
repne cmpsw %es:(%edi), %es:(%esi)
// CHECK: repne insb %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x6c]
repne insb %dx, %es:(%edi)
// CHECK: repne insl %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x6d]
repne insl %dx, %es:(%edi)
// CHECK: repne insw %dx, %es:(%edi)
// CHECK: encoding: [0xf2,0x66,0x6d]
repne insw %dx, %es:(%edi)
// CHECK: repne lodsl %es:(%esi), %eax
// CHECK: encoding: [0xf2,0x26,0xad]
repne lodsl %es:(%esi), %eax
// CHECK: repne movsb %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf2,0x26,0xa4]
repne movsb %es:(%esi), %es:(%edi)
// CHECK: repne movsl %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf2,0x26,0xa5]
repne movsl %es:(%esi), %es:(%edi)
// CHECK: repne movsw %es:(%esi), %es:(%edi)
// CHECK: encoding: [0xf2,0x66,0x26,0xa5]
repne movsw %es:(%esi), %es:(%edi)
// CHECK: repne outsb %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x26,0x6e]
repne outsb %es:(%esi), %dx
// CHECK: repne outsl %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x26,0x6f]
repne outsl %es:(%esi), %dx
// CHECK: repne outsw %es:(%esi), %dx
// CHECK: encoding: [0xf2,0x66,0x26,0x6f]
repne outsw %es:(%esi), %dx
// CHECK: repne scasl %es:(%edi), %eax
// CHECK: encoding: [0xf2,0xaf]
repne scasl %es:(%edi), %eax
// CHECK: repne stosl %eax, %es:(%edi)
// CHECK: encoding: [0xf2,0xab]
repne stosl %eax, %es:(%edi)
// CHECK: rep outsb %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x26,0x6e]
rep outsb %es:(%esi), %dx
// CHECK: rep outsl %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x26,0x6f]
rep outsl %es:(%esi), %dx
// CHECK: rep outsw %es:(%esi), %dx
// CHECK: encoding: [0xf3,0x66,0x26,0x6f]
rep outsw %es:(%esi), %dx
// CHECK: rep scasl %es:(%edi), %eax
// CHECK: encoding: [0xf3,0xaf]
rep scasl %es:(%edi), %eax
// CHECK: rep stosl %eax, %es:(%edi)
// CHECK: encoding: [0xf3,0xab]
rep stosl %eax, %es:(%edi)
// CHECK: scasl %es:(%edi), %eax
// CHECK: encoding: [0xaf]
scasl %es:(%edi), %eax
// CHECK: seta -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x97,0x84,0x82,0x10,0xe3,0x0f,0xe3]
seta -485498096(%edx,%eax,4)
// CHECK: seta 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x97,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
seta 485498096(%edx,%eax,4)
// CHECK: seta 485498096(%edx)
// CHECK: encoding: [0x0f,0x97,0x82,0xf0,0x1c,0xf0,0x1c]
seta 485498096(%edx)
// CHECK: seta 485498096
// CHECK: encoding: [0x0f,0x97,0x05,0xf0,0x1c,0xf0,0x1c]
seta 485498096
// CHECK: seta 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x97,0x44,0x02,0x40]
seta 64(%edx,%eax)
// CHECK: setae -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x93,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setae -485498096(%edx,%eax,4)
// CHECK: setae 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x93,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setae 485498096(%edx,%eax,4)
// CHECK: setae 485498096(%edx)
// CHECK: encoding: [0x0f,0x93,0x82,0xf0,0x1c,0xf0,0x1c]
setae 485498096(%edx)
// CHECK: setae 485498096
// CHECK: encoding: [0x0f,0x93,0x05,0xf0,0x1c,0xf0,0x1c]
setae 485498096
// CHECK: setae 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x93,0x44,0x02,0x40]
setae 64(%edx,%eax)
// CHECK: seta (%edx)
// CHECK: encoding: [0x0f,0x97,0x02]
seta (%edx)
// CHECK: setae (%edx)
// CHECK: encoding: [0x0f,0x93,0x02]
setae (%edx)
// CHECK: setb -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x92,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setb -485498096(%edx,%eax,4)
// CHECK: setb 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x92,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setb 485498096(%edx,%eax,4)
// CHECK: setb 485498096(%edx)
// CHECK: encoding: [0x0f,0x92,0x82,0xf0,0x1c,0xf0,0x1c]
setb 485498096(%edx)
// CHECK: setb 485498096
// CHECK: encoding: [0x0f,0x92,0x05,0xf0,0x1c,0xf0,0x1c]
setb 485498096
// CHECK: setb 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x92,0x44,0x02,0x40]
setb 64(%edx,%eax)
// CHECK: setbe -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x96,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setbe -485498096(%edx,%eax,4)
// CHECK: setbe 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x96,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setbe 485498096(%edx,%eax,4)
// CHECK: setbe 485498096(%edx)
// CHECK: encoding: [0x0f,0x96,0x82,0xf0,0x1c,0xf0,0x1c]
setbe 485498096(%edx)
// CHECK: setbe 485498096
// CHECK: encoding: [0x0f,0x96,0x05,0xf0,0x1c,0xf0,0x1c]
setbe 485498096
// CHECK: setbe 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x96,0x44,0x02,0x40]
setbe 64(%edx,%eax)
// CHECK: setb (%edx)
// CHECK: encoding: [0x0f,0x92,0x02]
setb (%edx)
// CHECK: setbe (%edx)
// CHECK: encoding: [0x0f,0x96,0x02]
setbe (%edx)
// CHECK: sete -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x94,0x84,0x82,0x10,0xe3,0x0f,0xe3]
sete -485498096(%edx,%eax,4)
// CHECK: sete 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x94,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
sete 485498096(%edx,%eax,4)
// CHECK: sete 485498096(%edx)
// CHECK: encoding: [0x0f,0x94,0x82,0xf0,0x1c,0xf0,0x1c]
sete 485498096(%edx)
// CHECK: sete 485498096
// CHECK: encoding: [0x0f,0x94,0x05,0xf0,0x1c,0xf0,0x1c]
sete 485498096
// CHECK: sete 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x94,0x44,0x02,0x40]
sete 64(%edx,%eax)
// CHECK: sete (%edx)
// CHECK: encoding: [0x0f,0x94,0x02]
sete (%edx)
// CHECK: setg -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9f,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setg -485498096(%edx,%eax,4)
// CHECK: setg 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9f,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setg 485498096(%edx,%eax,4)
// CHECK: setg 485498096(%edx)
// CHECK: encoding: [0x0f,0x9f,0x82,0xf0,0x1c,0xf0,0x1c]
setg 485498096(%edx)
// CHECK: setg 485498096
// CHECK: encoding: [0x
setg 485498096
// CHECK: setg 485498096
// CHECK: encoding: [0x0f,0x9f,0x05,0xf0,0x1c,0xf0,0x1c]
setg 485498096
// CHECK: setg 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9f,0x44,0x02,0x40]
setg 64(%edx,%eax)
// CHECK: setge -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9d,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setge -485498096(%edx,%eax,4)
// CHECK: setge 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9d,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setge 485498096(%edx,%eax,4)
// CHECK: setge 485498096(%edx)
// CHECK: encoding: [0x0f,0x9d,0x82,0xf0,0x1c,0xf0,0x1c]
setge 485498096(%edx)
// CHECK: setge 485498096
// CHECK: encoding: [0x0f,0x9d,0x05,0xf0,0x1c,0xf0,0x1c]
setge 485498096
// CHECK: setge 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9d,0x44,0x02,0x40]
setge 64(%edx,%eax)
// CHECK: setg (%edx)
// CHECK: encoding: [0x0f,0x9f,0x02]
setg (%edx)
// CHECK: setge (%edx)
// CHECK: encoding: [0x0f,0x9d,0x02]
setge (%edx)
// CHECK: setl -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9c,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setl -485498096(%edx,%eax,4)
// CHECK: setl 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9c,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setl 485498096(%edx,%eax,4)
// CHECK: setl 485498096(%edx)
// CHECK: encoding: [0x0f,0x9c,0x82,0xf0,0x1c,0xf0,0x1c]
setl 485498096(%edx)
// CHECK: setl 485498096
// CHECK: encoding: [0x0f,0x9c,0x05,0xf0,0x1c,0xf0,0x1c]
setl 485498096
// CHECK: setl 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9c,0x44,0x02,0x40]
setl 64(%edx,%eax)
// CHECK: setle -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9e,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setle -485498096(%edx,%eax,4)
// CHECK: setle 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9e,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setle 485498096(%edx,%eax,4)
// CHECK: setle 485498096(%edx)
// CHECK: encoding: [0x0f,0x9e,0x82,0xf0,0x1c,0xf0,0x1c]
setle 485498096(%edx)
// CHECK: setle 485498096
// CHECK: encoding: [0x0f,0x9e,0x05,0xf0,0x1c,0xf0,0x1c]
setle 485498096
// CHECK: setle 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9e,0x44,0x02,0x40]
setle 64(%edx,%eax)
// CHECK: setl (%edx)
// CHECK: encoding: [0x0f,0x9c,0x02]
setl (%edx)
// CHECK: setle (%edx)
// CHECK: encoding: [0x0f,0x9e,0x02]
setle (%edx)
// CHECK: setne -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x95,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setne -485498096(%edx,%eax,4)
// CHECK: setne 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x95,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setne 485498096(%edx,%eax,4)
// CHECK: setne 485498096(%edx)
// CHECK: encoding: [0x0f,0x95,0x82,0xf0,0x1c,0xf0,0x1c]
setne 485498096(%edx)
// CHECK: setne 485498096
// CHECK: encoding: [0x0f,0x95,0x05,0xf0,0x1c,0xf0,0x1c]
setne 485498096
// CHECK: setne 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x95,0x44,0x02,0x40]
setne 64(%edx,%eax)
// CHECK: setne (%edx)
// CHECK: encoding: [0x0f,0x95,0x02]
setne (%edx)
// CHECK: setno -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x91,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setno -485498096(%edx,%eax,4)
// CHECK: setno 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x91,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setno 485498096(%edx,%eax,4)
// CHECK: setno 485498096(%edx)
// CHECK: encoding: [0x0f,0x91,0x82,0xf0,0x1c,0xf0,0x1c]
setno 485498096(%edx)
// CHECK: setno 485498096
// CHECK: encoding: [0x0f,0x91,0x05,0xf0,0x1c,0xf0,0x1c]
setno 485498096
// CHECK: setno 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x91,0x44,0x02,0x40]
setno 64(%edx,%eax)
// CHECK: setno (%edx)
// CHECK: encoding: [0x0f,0x91,0x02]
setno (%edx)
// CHECK: setnp -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9b,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setnp -485498096(%edx,%eax,4)
// CHECK: setnp 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9b,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setnp 485498096(%edx,%eax,4)
// CHECK: setnp 485498096(%edx)
// CHECK: encoding: [0x0f,0x9b,0x82,0xf0,0x1c,0xf0,0x1c]
setnp 485498096(%edx)
// CHECK: setnp 485498096
// CHECK: encoding: [0x0f,0x9b,0x05,0xf0,0x1c,0xf0,0x1c]
setnp 485498096
// CHECK: setnp 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9b,0x44,0x02,0x40]
setnp 64(%edx,%eax)
// CHECK: setnp (%edx)
// CHECK: encoding: [0x0f,0x9b,0x02]
setnp (%edx)
// CHECK: setns -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x99,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setns -485498096(%edx,%eax,4)
// CHECK: setns 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x99,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setns 485498096(%edx,%eax,4)
// CHECK: setns 485498096(%edx)
// CHECK: encoding: [0x0f,0x99,0x82,0xf0,0x1c,0xf0,0x1c]
setns 485498096(%edx)
// CHECK: setns 485498096
// CHECK: encoding: [0x0f,0x99,0x05,0xf0,0x1c,0xf0,0x1c]
setns 485498096
// CHECK: setns 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x99,0x44,0x02,0x40]
setns 64(%edx,%eax)
// CHECK: setns (%edx)
// CHECK: encoding: [0x0f,0x99,0x02]
setns (%edx)
// CHECK: seto -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x90,0x84,0x82,0x10,0xe3,0x0f,0xe3]
seto -485498096(%edx,%eax,4)
// CHECK: seto 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x90,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
seto 485498096(%edx,%eax,4)
// CHECK: seto 485498096(%edx)
// CHECK: encoding: [0x0f,0x90,0x82,0xf0,0x1c,0xf0,0x1c]
seto 485498096(%edx)
// CHECK: seto 485498096
// CHECK: encoding: [0x0f,0x90,0x05,0xf0,0x1c,0xf0,0x1c]
seto 485498096
// CHECK: seto 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x90,0x44,0x02,0x40]
seto 64(%edx,%eax)
// CHECK: seto (%edx)
// CHECK: encoding: [0x0f,0x90,0x02]
seto (%edx)
// CHECK: setp -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9a,0x84,0x82,0x10,0xe3,0x0f,0xe3]
setp -485498096(%edx,%eax,4)
// CHECK: setp 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x9a,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
setp 485498096(%edx,%eax,4)
// CHECK: setp 485498096(%edx)
// CHECK: encoding: [0x0f,0x9a,0x82,0xf0,0x1c,0xf0,0x1c]
setp 485498096(%edx)
// CHECK: setp 485498096
// CHECK: encoding: [0x0f,0x9a,0x05,0xf0,0x1c,0xf0,0x1c]
setp 485498096
// CHECK: setp 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x9a,0x44,0x02,0x40]
setp 64(%edx,%eax)
// CHECK: setp (%edx)
// CHECK: encoding: [0x0f,0x9a,0x02]
setp (%edx)
// CHECK: sets -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x98,0x84,0x82,0x10,0xe3,0x0f,0xe3]
sets -485498096(%edx,%eax,4)
// CHECK: sets 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x98,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
sets 485498096(%edx,%eax,4)
// CHECK: sets 485498096(%edx)
// CHECK: encoding: [0x0f,0x98,0x82,0xf0,0x1c,0xf0,0x1c]
sets 485498096(%edx)
// CHECK: sets 485498096
// CHECK: encoding: [0x0f,0x98,0x05,0xf0,0x1c,0xf0,0x1c]
sets 485498096
// CHECK: sets 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x98,0x44,0x02,0x40]
sets 64(%edx,%eax)
// CHECK: sets (%edx)
// CHECK: encoding: [0x0f,0x98,0x02]
sets (%edx)
// CHECK: shldl $0, %eax, %eax
// CHECK: encoding: [0x0f,0xa4,0xc0,0x00]
shldl $0, %eax, %eax
// CHECK: shldl %cl, %eax, %eax
// CHECK: encoding: [0x0f,0xa5,0xc0]
shldl %cl, %eax, %eax
// CHECK: shrdl $0, %eax, %eax
// CHECK: encoding: [0x0f,0xac,0xc0,0x00]
shrdl $0, %eax, %eax
// CHECK: shrdl %cl, %eax, %eax
// CHECK: encoding: [0x0f,0xad,0xc0]
shrdl %cl, %eax, %eax
// CHECK: stosl %eax, %es:(%edi)
// CHECK: encoding: [0xab]
stosl %eax, %es:(%edi)

874
test/MC/X86/I386-64.s Normal file
View File

@ -0,0 +1,874 @@
// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: bsfl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xbc,0xed]
bsfl %r13d, %r13d
// CHECK: bsrl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xbd,0xed]
bsrl %r13d, %r13d
// CHECK: btcl $0, %r13d
// CHECK: encoding: [0x41,0x0f,0xba,0xfd,0x00]
btcl $0, %r13d
// CHECK: btcl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xbb,0xed]
btcl %r13d, %r13d
// CHECK: btl $0, %r13d
// CHECK: encoding: [0x41,0x0f,0xba,0xe5,0x00]
btl $0, %r13d
// CHECK: btl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xa3,0xed]
btl %r13d, %r13d
// CHECK: btrl $0, %r13d
// CHECK: encoding: [0x41,0x0f,0xba,0xf5,0x00]
btrl $0, %r13d
// CHECK: btrl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xb3,0xed]
btrl %r13d, %r13d
// CHECK: btsl $0, %r13d
// CHECK: encoding: [0x41,0x0f,0xba,0xed,0x00]
btsl $0, %r13d
// CHECK: btsl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xab,0xed]
btsl %r13d, %r13d
// CHECK: cltd
// CHECK: encoding: [0x99]
cltd
// CHECK: cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0x65,0xa6]
cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0x65,0xa7]
cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0x48,0x65,0xa7]
cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: cmpsw %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)
// CHECK: insl %dx, %es:(%rdi)
// CHECK: encoding: [0x6d]
insl %dx, %es:(%rdi)
// CHECK: insw %dx, %es:(%rdi)
// CHECK: encoding: [0x66,0x6d]
insw %dx, %es:(%rdi)
// CHECK: iretl
// CHECK: encoding: [0xcf]
iretl
// CHECK: iretq
// CHECK: encoding: [0x48,0xcf]
iretq
// CHECK: iretw
// CHECK: encoding: [0x66,0xcf]
iretw
// CHECK: lodsl %gs:(%rsi), %eax
// CHECK: encoding: [0x65,0xad]
lodsl %gs:(%rsi), %eax
// CHECK: lzcntl %r13d, %r13d
// CHECK: encoding: [0xf3,0x45,0x0f,0xbd,0xed]
lzcntl %r13d, %r13d
// CHECK: movsb %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0x65,0xa4]
movsb %gs:(%rsi), %es:(%rdi)
// CHECK: movsbl 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
movsbl 485498096, %r13d
// CHECK: movsbl 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x6a,0x40]
movsbl 64(%rdx), %r13d
// CHECK: movsbl 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x6c,0x82,0x40]
movsbl 64(%rdx,%rax,4), %r13d
// CHECK: movsbl -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x6c,0x82,0xc0]
movsbl -64(%rdx,%rax,4), %r13d
// CHECK: movsbl 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x6c,0x02,0x40]
movsbl 64(%rdx,%rax), %r13d
// CHECK: movsbl %r11b, %r13d
// CHECK: encoding: [0x45,0x0f,0xbe,0xeb]
movsbl %r11b, %r13d
// CHECK: movsbl %r14b, %r13d
// CHECK: encoding: [0x45,0x0f,0xbe,0xee]
movsbl %r14b, %r13d
// CHECK: movsbl (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xbe,0x2a]
movsbl (%rdx), %r13d
// CHECK: movsl %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0x65,0xa5]
movsl %gs:(%rsi), %es:(%rdi)
// CHECK: movsq %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0x48,0x65,0xa5]
movsq %gs:(%rsi), %es:(%rdi)
// CHECK: movsw %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0x66,0x65,0xa5]
movsw %gs:(%rsi), %es:(%rdi)
// CHECK: movswl 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
movswl 485498096, %r13d
// CHECK: movswl 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x6a,0x40]
movswl 64(%rdx), %r13d
// CHECK: movswl 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x6c,0x82,0x40]
movswl 64(%rdx,%rax,4), %r13d
// CHECK: movswl -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x6c,0x82,0xc0]
movswl -64(%rdx,%rax,4), %r13d
// CHECK: movswl 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x6c,0x02,0x40]
movswl 64(%rdx,%rax), %r13d
// CHECK: movswl %r11w, %r13d
// CHECK: encoding: [0x45,0x0f,0xbf,0xeb]
movswl %r11w, %r13d
// CHECK: movswl %r14w, %r13d
// CHECK: encoding: [0x45,0x0f,0xbf,0xee]
movswl %r14w, %r13d
// CHECK: movswl (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xbf,0x2a]
movswl (%rdx), %r13d
// CHECK: movzbl 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
movzbl 485498096, %r13d
// CHECK: movzbl 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x6a,0x40]
movzbl 64(%rdx), %r13d
// CHECK: movzbl 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x6c,0x82,0x40]
movzbl 64(%rdx,%rax,4), %r13d
// CHECK: movzbl -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x6c,0x82,0xc0]
movzbl -64(%rdx,%rax,4), %r13d
// CHECK: movzbl 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x6c,0x02,0x40]
movzbl 64(%rdx,%rax), %r13d
// CHECK: movzbl %r11b, %r13d
// CHECK: encoding: [0x45,0x0f,0xb6,0xeb]
movzbl %r11b, %r13d
// CHECK: movzbl %r14b, %r13d
// CHECK: encoding: [0x45,0x0f,0xb6,0xee]
movzbl %r14b, %r13d
// CHECK: movzbl (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xb6,0x2a]
movzbl (%rdx), %r13d
// CHECK: movzwl 485498096, %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x2c,0x25,0xf0,0x1c,0xf0,0x1c]
movzwl 485498096, %r13d
// CHECK: movzwl 64(%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x6a,0x40]
movzwl 64(%rdx), %r13d
// CHECK: movzwl 64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x6c,0x82,0x40]
movzwl 64(%rdx,%rax,4), %r13d
// CHECK: movzwl -64(%rdx,%rax,4), %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x6c,0x82,0xc0]
movzwl -64(%rdx,%rax,4), %r13d
// CHECK: movzwl 64(%rdx,%rax), %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x6c,0x02,0x40]
movzwl 64(%rdx,%rax), %r13d
// CHECK: movzwl %r11w, %r13d
// CHECK: encoding: [0x45,0x0f,0xb7,0xeb]
movzwl %r11w, %r13d
// CHECK: movzwl %r14w, %r13d
// CHECK: encoding: [0x45,0x0f,0xb7,0xee]
movzwl %r14w, %r13d
// CHECK: movzwl (%rdx), %r13d
// CHECK: encoding: [0x44,0x0f,0xb7,0x2a]
movzwl (%rdx), %r13d
// CHECK: outsb %gs:(%rsi), %dx
// CHECK: encoding: [0x65,0x6e]
outsb %gs:(%rsi), %dx
// CHECK: outsl %gs:(%rsi), %dx
// CHECK: encoding: [0x65,0x6f]
outsl %gs:(%rsi), %dx
// CHECK: outsw %gs:(%rsi), %dx
// CHECK: encoding: [0x66,0x65,0x6f]
outsw %gs:(%rsi), %dx
// CHECK: rep cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf3,0x65,0xa6]
rep cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: rep cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf3,0x65,0xa7]
rep cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: rep cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf3,0x48,0x65,0xa7]
rep cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: rep cmpsw %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf3,0x66,0x65,0xa7]
rep cmpsw %es:(%rdi), %gs:(%rsi)
// CHECK: rep insb %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x6c]
rep insb %dx, %es:(%rdi)
// CHECK: rep insl %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x6d]
rep insl %dx, %es:(%rdi)
// CHECK: rep insw %dx, %es:(%rdi)
// CHECK: encoding: [0xf3,0x66,0x6d]
rep insw %dx, %es:(%rdi)
// CHECK: rep lodsl %gs:(%rsi), %eax
// CHECK: encoding: [0xf3,0x65,0xad]
rep lodsl %gs:(%rsi), %eax
// CHECK: rep movsb %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf3,0x65,0xa4]
rep movsb %gs:(%rsi), %es:(%rdi)
// CHECK: rep movsl %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf3,0x65,0xa5]
rep movsl %gs:(%rsi), %es:(%rdi)
// CHECK: rep movsq %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf3,0x48,0x65,0xa5]
rep movsq %gs:(%rsi), %es:(%rdi)
// CHECK: rep movsw %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf3,0x66,0x65,0xa5]
rep movsw %gs:(%rsi), %es:(%rdi)
// CHECK: repne cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf2,0x65,0xa6]
repne cmpsb %es:(%rdi), %gs:(%rsi)
// CHECK: repne cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf2,0x65,0xa7]
repne cmpsl %es:(%rdi), %gs:(%rsi)
// CHECK: repne cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf2,0x48,0x65,0xa7]
repne cmpsq %es:(%rdi), %gs:(%rsi)
// CHECK: repne cmpsw %es:(%rdi), %gs:(%rsi)
// CHECK: encoding: [0xf2,0x66,0x65,0xa7]
repne cmpsw %es:(%rdi), %gs:(%rsi)
// CHECK: repne insb %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x6c]
repne insb %dx, %es:(%rdi)
// CHECK: repne insl %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x6d]
repne insl %dx, %es:(%rdi)
// CHECK: repne insw %dx, %es:(%rdi)
// CHECK: encoding: [0xf2,0x66,0x6d]
repne insw %dx, %es:(%rdi)
// CHECK: repne lodsl %gs:(%rsi), %eax
// CHECK: encoding: [0xf2,0x65,0xad]
repne lodsl %gs:(%rsi), %eax
// CHECK: repne movsb %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf2,0x65,0xa4]
repne movsb %gs:(%rsi), %es:(%rdi)
// CHECK: repne movsl %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf2,0x65,0xa5]
repne movsl %gs:(%rsi), %es:(%rdi)
// CHECK: repne movsq %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf2,0x48,0x65,0xa5]
repne movsq %gs:(%rsi), %es:(%rdi)
// CHECK: repne movsw %gs:(%rsi), %es:(%rdi)
// CHECK: encoding: [0xf2,0x66,0x65,0xa5]
repne movsw %gs:(%rsi), %es:(%rdi)
// CHECK: repne outsb %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x65,0x6e]
repne outsb %gs:(%rsi), %dx
// CHECK: repne outsl %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x65,0x6f]
repne outsl %gs:(%rsi), %dx
// CHECK: repne outsw %gs:(%rsi), %dx
// CHECK: encoding: [0xf2,0x66,0x65,0x6f]
repne outsw %gs:(%rsi), %dx
// CHECK: repne scasl %es:(%rdi), %eax
// CHECK: encoding: [0xf2,0xaf]
repne scasl %es:(%rdi), %eax
// CHECK: repne stosl %eax, %es:(%rdi)
// CHECK: encoding: [0xf2,0xab]
repne stosl %eax, %es:(%rdi)
// CHECK: rep outsb %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x65,0x6e]
rep outsb %gs:(%rsi), %dx
// CHECK: rep outsl %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x65,0x6f]
rep outsl %gs:(%rsi), %dx
// CHECK: rep outsw %gs:(%rsi), %dx
// CHECK: encoding: [0xf3,0x66,0x65,0x6f]
rep outsw %gs:(%rsi), %dx
// CHECK: rep scasl %es:(%rdi), %eax
// CHECK: encoding: [0xf3,0xaf]
rep scasl %es:(%rdi), %eax
// CHECK: rep stosl %eax, %es:(%rdi)
// CHECK: encoding: [0xf3,0xab]
rep stosl %eax, %es:(%rdi)
// CHECK: scasl %es:(%rdi), %eax
// CHECK: encoding: [0xaf]
scasl %es:(%rdi), %eax
// CHECK: seta 485498096
// CHECK: encoding: [0x0f,0x97,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
seta 485498096
// CHECK: seta 64(%rdx)
// CHECK: encoding: [0x0f,0x97,0x42,0x40]
seta 64(%rdx)
// CHECK: seta 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x97,0x44,0x82,0x40]
seta 64(%rdx,%rax,4)
// CHECK: seta -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x97,0x44,0x82,0xc0]
seta -64(%rdx,%rax,4)
// CHECK: seta 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x97,0x44,0x02,0x40]
seta 64(%rdx,%rax)
// CHECK: setae 485498096
// CHECK: encoding: [0x0f,0x93,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setae 485498096
// CHECK: setae 64(%rdx)
// CHECK: encoding: [0x0f,0x93,0x42,0x40]
setae 64(%rdx)
// CHECK: setae 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x93,0x44,0x82,0x40]
setae 64(%rdx,%rax,4)
// CHECK: setae -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x93,0x44,0x82,0xc0]
setae -64(%rdx,%rax,4)
// CHECK: setae 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x93,0x44,0x02,0x40]
setae 64(%rdx,%rax)
// CHECK: setae %r14b
// CHECK: encoding: [0x41,0x0f,0x93,0xc6]
setae %r14b
// CHECK: setae (%rdx)
// CHECK: encoding: [0x0f,0x93,0x02]
setae (%rdx)
// CHECK: seta %r14b
// CHECK: encoding: [0x41,0x0f,0x97,0xc6]
seta %r14b
// CHECK: seta (%rdx)
// CHECK: encoding: [0x0f,0x97,0x02]
seta (%rdx)
// CHECK: setb 485498096
// CHECK: encoding: [0x0f,0x92,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setb 485498096
// CHECK: setb 64(%rdx)
// CHECK: encoding: [0x0f,0x92,0x42,0x40]
setb 64(%rdx)
// CHECK: setb 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x92,0x44,0x82,0x40]
setb 64(%rdx,%rax,4)
// CHECK: setb -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x92,0x44,0x82,0xc0]
setb -64(%rdx,%rax,4)
// CHECK: setb 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x92,0x44,0x02,0x40]
setb 64(%rdx,%rax)
// CHECK: setbe 485498096
// CHECK: encoding: [0x0f,0x96,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setbe 485498096
// CHECK: setbe 64(%rdx)
// CHECK: encoding: [0x0f,0x96,0x42,0x40]
setbe 64(%rdx)
// CHECK: setbe 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x96,0x44,0x82,0x40]
setbe 64(%rdx,%rax,4)
// CHECK: setbe -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x96,0x44,0x82,0xc0]
setbe -64(%rdx,%rax,4)
// CHECK: setbe 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x96,0x44,0x02,0x40]
setbe 64(%rdx,%rax)
// CHECK: setbe %r14b
// CHECK: encoding: [0x41,0x0f,0x96,0xc6]
setbe %r14b
// CHECK: setbe (%rdx)
// CHECK: encoding: [0x0f,0x96,0x02]
setbe (%rdx)
// CHECK: setb %r14b
// CHECK: encoding: [0x41,0x0f,0x92,0xc6]
setb %r14b
// CHECK: setb (%rdx)
// CHECK: encoding: [0x0f,0x92,0x02]
setb (%rdx)
// CHECK: sete 485498096
// CHECK: encoding: [0x0f,0x94,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
sete 485498096
// CHECK: sete 64(%rdx)
// CHECK: encoding: [0x0f,0x94,0x42,0x40]
sete 64(%rdx)
// CHECK: sete 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x94,0x44,0x82,0x40]
sete 64(%rdx,%rax,4)
// CHECK: sete -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x94,0x44,0x82,0xc0]
sete -64(%rdx,%rax,4)
// CHECK: sete 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x94,0x44,0x02,0x40]
sete 64(%rdx,%rax)
// CHECK: sete %r14b
// CHECK: encoding: [0x41,0x0f,0x94,0xc6]
sete %r14b
// CHECK: sete (%rdx)
// CHECK: encoding: [0x0f,0x94,0x02]
sete (%rdx)
// CHECK: setg 485498096
// CHECK: encoding: [0x0f,0x9f,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setg 485498096
// CHECK: setg 64(%rdx)
// CHECK: encoding: [0x0f,0x9f,0x42,0x40]
setg 64(%rdx)
// CHECK: setg 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9f,0x44,0x82,0x40]
setg 64(%rdx,%rax,4)
// CHECK: setg -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9f,0x44,0x82,0xc0]
setg -64(%rdx,%rax,4)
// CHECK: setg 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9f,0x44,0x02,0x40]
setg 64(%rdx,%rax)
// CHECK: setge 485498096
// CHECK: encoding: [0x0f,0x9d,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setge 485498096
// CHECK: setge 64(%rdx)
// CHECK: encoding: [0x0f,0x9d,0x42,0x40]
setge 64(%rdx)
// CHECK: setge 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9d,0x44,0x82,0x40]
setge 64(%rdx,%rax,4)
// CHECK: setge -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9d,0x44,0x82,0xc0]
setge -64(%rdx,%rax,4)
// CHECK: setge 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9d,0x44,0x02,0
setge 64(%rdx,%rax)
// CHECK: setge 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9d,0x44,0x02,0x40]
setge 64(%rdx,%rax)
// CHECK: setge %r14b
// CHECK: encoding: [0x41,0x0f,0x9d,0xc6]
setge %r14b
// CHECK: setge (%rdx)
// CHECK: encoding: [0x0f,0x9d,0x02]
setge (%rdx)
// CHECK: setg %r14b
// CHECK: encoding: [0x41,0x0f,0x9f,0xc6]
setg %r14b
// CHECK: setg (%rdx)
// CHECK: encoding: [0x0f,0x9f,0x02]
setg (%rdx)
// CHECK: setl 485498096
// CHECK: encoding: [0x0f,0x9c,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setl 485498096
// CHECK: setl 64(%rdx)
// CHECK: encoding: [0x0f,0x9c,0x42,0x40]
setl 64(%rdx)
// CHECK: setl 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9c,0x44,0x82,0x40]
setl 64(%rdx,%rax,4)
// CHECK: setl -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9c,0x44,0x82,0xc0]
setl -64(%rdx,%rax,4)
// CHECK: setl 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9c,0x44,0x02,0x40]
setl 64(%rdx,%rax)
// CHECK: setle 485498096
// CHECK: encoding: [0x0f,0x9e,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setle 485498096
// CHECK: setle 64(%rdx)
// CHECK: encoding: [0x0f,0x9e,0x42,0x40]
setle 64(%rdx)
// CHECK: setle 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9e,0x44,0x82,0x40]
setle 64(%rdx,%rax,4)
// CHECK: setle -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9e,0x44,0x82,0xc0]
setle -64(%rdx,%rax,4)
// CHECK: setle 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9e,0x44,0x02,0x40]
setle 64(%rdx,%rax)
// CHECK: setle %r14b
// CHECK: encoding: [0x41,0x0f,0x9e,0xc6]
setle %r14b
// CHECK: setle (%rdx)
// CHECK: encoding: [0x0f,0x9e,0x02]
setle (%rdx)
// CHECK: setl %r14b
// CHECK: encoding: [0x41,0x0f,0x9c,0xc6]
setl %r14b
// CHECK: setl (%rdx)
// CHECK: encoding: [0x0f,0x9c,0x02]
setl (%rdx)
// CHECK: setne 485498096
// CHECK: encoding: [0x0f,0x95,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setne 485498096
// CHECK: setne 64(%rdx)
// CHECK: encoding: [0x0f,0x95,0x42,0x40]
setne 64(%rdx)
// CHECK: setne 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x95,0x44,0x82,0x40]
setne 64(%rdx,%rax,4)
// CHECK: setne -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x95,0x44,0x82,0xc0]
setne -64(%rdx,%rax,4)
// CHECK: setne 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x95,0x44,0x02,0x40]
setne 64(%rdx,%rax)
// CHECK: setne %r14b
// CHECK: encoding: [0x41,0x0f,0x95,0xc6]
setne %r14b
// CHECK: setne (%rdx)
// CHECK: encoding: [0x0f,0x95,0x02]
setne (%rdx)
// CHECK: setno 485498096
// CHECK: encoding: [0x0f,0x91,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setno 485498096
// CHECK: setno 64(%rdx)
// CHECK: encoding: [0x0f,0x91,0x42,0x40]
setno 64(%rdx)
// CHECK: setno 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x91,0x44,0x82,0x40]
setno 64(%rdx,%rax,4)
// CHECK: setno -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x91,0x44,0x82,0xc0]
setno -64(%rdx,%rax,4)
// CHECK: setno 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x91,0x44,0x02,0x40]
setno 64(%rdx,%rax)
// CHECK: setno %r14b
// CHECK: encoding: [0x41,0x0f,0x91,0xc6]
setno %r14b
// CHECK: setno (%rdx)
// CHECK: encoding: [0x0f,0x91,0x02]
setno (%rdx)
// CHECK: setnp 485498096
// CHECK: encoding: [0x0f,0x9b,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setnp 485498096
// CHECK: setnp 64(%rdx)
// CHECK: encoding: [0x0f,0x9b,0x42,0x40]
setnp 64(%rdx)
// CHECK: setnp 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9b,0x44,0x82,0x40]
setnp 64(%rdx,%rax,4)
// CHECK: setnp -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9b,0x44,0x82,0xc0]
setnp -64(%rdx,%rax,4)
// CHECK: setnp 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9b,0x44,0x02,0x40]
setnp 64(%rdx,%rax)
// CHECK: setnp %r14b
// CHECK: encoding: [0x41,0x0f,0x9b,0xc6]
setnp %r14b
// CHECK: setnp (%rdx)
// CHECK: encoding: [0x0f,0x9b,0x02]
setnp (%rdx)
// CHECK: setns 485498096
// CHECK: encoding: [0x0f,0x99,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setns 485498096
// CHECK: setns 64(%rdx)
// CHECK: encoding: [0x0f,0x99,0x42,0x40]
setns 64(%rdx)
// CHECK: setns 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x99,0x44,0x82,0x40]
setns 64(%rdx,%rax,4)
// CHECK: setns -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x99,0x44,0x82,0xc0]
setns -64(%rdx,%rax,4)
// CHECK: setns 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x99,0x44,0x02,0x40]
setns 64(%rdx,%rax)
// CHECK: setns %r14b
// CHECK: encoding: [0x41,0x0f,0x99,0xc6]
setns %r14b
// CHECK: setns (%rdx)
// CHECK: encoding: [0x0f,0x99,0x02]
setns (%rdx)
// CHECK: seto 485498096
// CHECK: encoding: [0x0f,0x90,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
seto 485498096
// CHECK: seto 64(%rdx)
// CHECK: encoding: [0x0f,0x90,0x42,0x40]
seto 64(%rdx)
// CHECK: seto 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x90,0x44,0x82,0x40]
seto 64(%rdx,%rax,4)
// CHECK: seto -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x90,0x44,0x82,0xc0]
seto -64(%rdx,%rax,4)
// CHECK: seto 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x90,0x44,0x02,0x40]
seto 64(%rdx,%rax)
// CHECK: seto %r14b
// CHECK: encoding: [0x41,0x0f,0x90,0xc6]
seto %r14b
// CHECK: seto (%rdx)
// CHECK: encoding: [0x0f,0x90,0x02]
seto (%rdx)
// CHECK: setp 485498096
// CHECK: encoding: [0x0f,0x9a,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
setp 485498096
// CHECK: setp 64(%rdx)
// CHECK: encoding: [0x0f,0x9a,0x42,0x40]
setp 64(%rdx)
// CHECK: setp 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9a,0x44,0x82,0x40]
setp 64(%rdx,%rax,4)
// CHECK: setp -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x9a,0x44,0x82,0xc0]
setp -64(%rdx,%rax,4)
// CHECK: setp 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x9a,0x44,0x02,0x40]
setp 64(%rdx,%rax)
// CHECK: setp %r14b
// CHECK: encoding: [0x41,0x0f,0x9a,0xc6]
setp %r14b
// CHECK: setp (%rdx)
// CHECK: encoding: [0x0f,0x9a,0x02]
setp (%rdx)
// CHECK: sets 485498096
// CHECK: encoding: [0x0f,0x98,0x04,0x25,0xf0,0x1c,0xf0,0x1c]
sets 485498096
// CHECK: sets 64(%rdx)
// CHECK: encoding: [0x0f,0x98,0x42,0x40]
sets 64(%rdx)
// CHECK: sets 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x98,0x44,0x82,0x40]
sets 64(%rdx,%rax,4)
// CHECK: sets -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x98,0x44,0x82,0xc0]
sets -64(%rdx,%rax,4)
// CHECK: sets 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x98,0x44,0x02,0x40]
sets 64(%rdx,%rax)
// CHECK: sets %r14b
// CHECK: encoding: [0x41,0x0f,0x98,0xc6]
sets %r14b
// CHECK: sets (%rdx)
// CHECK: encoding: [0x0f,0x98,0x02]
sets (%rdx)
// CHECK: shldl $0, %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xa4,0xed,0x00]
shldl $0, %r13d, %r13d
// CHECK: shldl %cl, %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xa5,0xed]
shldl %cl, %r13d, %r13d
// CHECK: shrdl $0, %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xac,0xed,0x00]
shrdl $0, %r13d, %r13d
// CHECK: shrdl %cl, %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xad,0xed]
shrdl %cl, %r13d, %r13d
// CHECK: stosl %eax, %es:(%rdi)
// CHECK: encoding: [0xab]
stosl %eax, %es:(%rdi)
// CHECK: tzcntl %r13d, %r13d
// CHECK: encoding: [0xf3,0x45,0x0f,0xbc,0xed]
tzcntl %r13d, %r13d

102
test/MC/X86/I486-32.s Normal file
View File

@ -0,0 +1,102 @@
// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: bswapl %eax
// CHECK: encoding: [0x0f,0xc8]
bswapl %eax
// CHECK: cmpxchgl %eax, 3809469200(%edx,%eax,4)
// CHECK: encoding: [0x0f,0xb1,0x84,0x82,0x10,0xe3,0x0f,0xe3]
cmpxchgl %eax, 3809469200(%edx,%eax,4)
// CHECK: cmpxchgl %eax, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0xb1,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
cmpxchgl %eax, 485498096(%edx,%eax,4)
// CHECK: cmpxchgl %eax, 485498096(%edx)
// CHECK: encoding: [0x0f,0xb1,0x82,0xf0,0x1c,0xf0,0x1c]
cmpxchgl %eax, 485498096(%edx)
// CHECK: cmpxchgl %eax, 485498096
// CHECK: encoding: [0x0f,0xb1,0x05,0xf0,0x1c,0xf0,0x1c]
cmpxchgl %eax, 485498096
// CHECK: cmpxchgl %eax, 64(%edx,%eax)
// CHECK: encoding: [0x0f,0xb1,0x44,0x02,0x40]
cmpxchgl %eax, 64(%edx,%eax)
// CHECK: cmpxchgl %eax, %eax
// CHECK: encoding: [0x0f,0xb1,0xc0]
cmpxchgl %eax, %eax
// CHECK: cmpxchgl %eax, (%edx)
// CHECK: encoding: [0x0f,0xb1,0x02]
cmpxchgl %eax, (%edx)
// CHECK: cpuid
// CHECK: encoding: [0x0f,0xa2]
cpuid
// CHECK: invd
// CHECK: encoding: [0x0f,0x08]
invd
// CHECK: invlpg -485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xbc,0x82,0x10,0xe3,0x0f,0xe3]
invlpg -485498096(%edx,%eax,4)
// CHECK: invlpg 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0x01,0xbc,0x82,0xf0,0x1c,0xf0,0x1c]
invlpg 485498096(%edx,%eax,4)
// CHECK: invlpg 485498096(%edx)
// CHECK: encoding: [0x0f,0x01,0xba,0xf0,0x1c,0xf0,0x1c]
invlpg 485498096(%edx)
// CHECK: invlpg 485498096
// CHECK: encoding: [0x0f,0x01,0x3d,0xf0,0x1c,0xf0,0x1c]
invlpg 485498096
// CHECK: invlpg 64(%edx,%eax)
// CHECK: encoding: [0x0f,0x01,0x7c,0x02,0x40]
invlpg 64(%edx,%eax)
// CHECK: invlpg (%edx)
// CHECK: encoding: [0x0f,0x01,0x3a]
invlpg (%edx)
// CHECK: rsm
// CHECK: encoding: [0x0f,0xaa]
rsm
// CHECK: wbinvd
// CHECK: encoding: [0x0f,0x09]
wbinvd
// CHECK: xaddl %eax, 3809469200(%edx,%eax,4)
// CHECK: encoding: [0x0f,0xc1,0x84,0x82,0x10,0xe3,0x0f,0xe3]
xaddl %eax, 3809469200(%edx,%eax,4)
// CHECK: xaddl %eax, 485498096(%edx,%eax,4)
// CHECK: encoding: [0x0f,0xc1,0x84,0x82,0xf0,0x1c,0xf0,0x1c]
xaddl %eax, 485498096(%edx,%eax,4)
// CHECK: xaddl %eax, 485498096(%edx)
// CHECK: encoding: [0x0f,0xc1,0x82,0xf0,0x1c,0xf0,0x1c]
xaddl %eax, 485498096(%edx)
// CHECK: xaddl %eax, 485498096
// CHECK: encoding: [0x0f,0xc1,0x05,0xf0,0x1c,0xf0,0x1c]
xaddl %eax, 485498096
// CHECK: xaddl %eax, 64(%edx,%eax)
// CHECK: encoding: [0x0f,0xc1,0x44,0x02,0x40]
xaddl %eax, 64(%edx,%eax)
// CHECK: xaddl %eax, %eax
// CHECK: encoding: [0x0f,0xc1,0xc0]
xaddl %eax, %eax
// CHECK: xaddl %eax, (%edx)
// CHECK: encoding: [0x0f,0xc1,0x02]
xaddl %eax, (%edx)

166
test/MC/X86/I486-64.s Normal file
View File

@ -0,0 +1,166 @@
// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: bswapl %r13d
// CHECK: encoding: [0x41,0x0f,0xcd]
bswapl %r13d
// CHECK: cmpxchgb %r14b, 485498096
// CHECK: encoding: [0x44,0x0f,0xb0,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
cmpxchgb %r14b, 485498096
// CHECK: cmpxchgb %r14b, 64(%rdx)
// CHECK: encoding: [0x44,0x0f,0xb0,0x72,0x40]
cmpxchgb %r14b, 64(%rdx)
// CHECK: cmpxchgb %r14b, 64(%rdx,%rax,4)
// CHECK: encoding: [0x44,0x0f,0xb0,0x74,0x82,0x40]
cmpxchgb %r14b, 64(%rdx,%rax,4)
// CHECK: cmpxchgb %r14b, -64(%rdx,%rax,4)
// CHECK: encoding: [0x44,0x0f,0xb0,0x74,0x82,0xc0]
cmpxchgb %r14b, -64(%rdx,%rax,4)
// CHECK: cmpxchgb %r14b, 64(%rdx,%rax)
// CHECK: encoding: [0x44,0x0f,0xb0,0x74,0x02,0x40]
cmpxchgb %r14b, 64(%rdx,%rax)
// CHECK: cmpxchgb %r14b, %r14b
// CHECK: encoding: [0x45,0x0f,0xb0,0xf6]
cmpxchgb %r14b, %r14b
// CHECK: cmpxchgb %r14b, (%rdx)
// CHECK: encoding: [0x44,0x0f,0xb0,0x32]
cmpxchgb %r14b, (%rdx)
// CHECK: cmpxchgl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xb1,0xed]
cmpxchgl %r13d, %r13d
// CHECK: cmpxchgw %r14w, 485498096
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
cmpxchgw %r14w, 485498096
// CHECK: cmpxchgw %r14w, 64(%rdx)
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x72,0x40]
cmpxchgw %r14w, 64(%rdx)
// CHECK: cmpxchgw %r14w, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x74,0x82,0x40]
cmpxchgw %r14w, 64(%rdx,%rax,4)
// CHECK: cmpxchgw %r14w, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x74,0x82,0xc0]
cmpxchgw %r14w, -64(%rdx,%rax,4)
// CHECK: cmpxchgw %r14w, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x74,0x02,0x40]
cmpxchgw %r14w, 64(%rdx,%rax)
// CHECK: cmpxchgw %r14w, %r14w
// CHECK: encoding: [0x66,0x45,0x0f,0xb1,0xf6]
cmpxchgw %r14w, %r14w
// CHECK: cmpxchgw %r14w, (%rdx)
// CHECK: encoding: [0x66,0x44,0x0f,0xb1,0x32]
cmpxchgw %r14w, (%rdx)
// CHECK: cpuid
// CHECK: encoding: [0x0f,0xa2]
cpuid
// CHECK: invd
// CHECK: encoding: [0x0f,0x08]
invd
// CHECK: invlpg 485498096
// CHECK: encoding: [0x0f,0x01,0x3c,0x25,0xf0,0x1c,0xf0,0x1c]
invlpg 485498096
// CHECK: invlpg 64(%rdx)
// CHECK: encoding: [0x0f,0x01,0x7a,0x40]
invlpg 64(%rdx)
// CHECK: invlpg 64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x7c,0x82,0x40]
invlpg 64(%rdx,%rax,4)
// CHECK: invlpg -64(%rdx,%rax,4)
// CHECK: encoding: [0x0f,0x01,0x7c,0x82,0xc0]
invlpg -64(%rdx,%rax,4)
// CHECK: invlpg 64(%rdx,%rax)
// CHECK: encoding: [0x0f,0x01,0x7c,0x02,0x40]
invlpg 64(%rdx,%rax)
// CHECK: invlpg (%rdx)
// CHECK: encoding: [0x0f,0x01,0x3a]
invlpg (%rdx)
// CHECK: rsm
// CHECK: encoding: [0x0f,0xaa]
rsm
// CHECK: wbinvd
// CHECK: encoding: [0x0f,0x09]
wbinvd
// CHECK: xaddb %r14b, 485498096
// CHECK: encoding: [0x44,0x0f,0xc0,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
xaddb %r14b, 485498096
// CHECK: xaddb %r14b, 64(%rdx)
// CHECK: encoding: [0x44,0x0f,0xc0,0x72,0x40]
xaddb %r14b, 64(%rdx)
// CHECK: xaddb %r14b, 64(%rdx,%rax,4)
// CHECK: encoding: [0x44,0x0f,0xc0,0x74,0x82,0x40]
xaddb %r14b, 64(%rdx,%rax,4)
// CHECK: xaddb %r14b, -64(%rdx,%rax,4)
// CHECK: encoding: [0x44,0x0f,0xc0,0x74,0x82,0xc0]
xaddb %r14b, -64(%rdx,%rax,4)
// CHECK: xaddb %r14b, 64(%rdx,%rax)
// CHECK: encoding: [0x44,0x0f,0xc0,0x74,0x02,0x40]
xaddb %r14b, 64(%rdx,%rax)
// CHECK: xaddb %r14b, %r14b
// CHECK: encoding: [0x45,0x0f,0xc0,0xf6]
xaddb %r14b, %r14b
// CHECK: xaddb %r14b, (%rdx)
// CHECK: encoding: [0x44,0x0f,0xc0,0x32]
xaddb %r14b, (%rdx)
// CHECK: xaddl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0xc1,0xed]
xaddl %r13d, %r13d
// CHECK: xaddw %r14w, 485498096
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x34,0x25,0xf0,0x1c,0xf0,0x1c]
xaddw %r14w, 485498096
// CHECK: xaddw %r14w, 64(%rdx)
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x72,0x40]
xaddw %r14w, 64(%rdx)
// CHECK: xaddw %r14w, 64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x74,0x82,0x40]
xaddw %r14w, 64(%rdx,%rax,4)
// CHECK: xaddw %r14w, -64(%rdx,%rax,4)
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x74,0x82,0xc0]
xaddw %r14w, -64(%rdx,%rax,4)
// CHECK: xaddw %r14w, 64(%rdx,%rax)
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x74,0x02,0x40]
xaddw %r14w, 64(%rdx,%rax)
// CHECK: xaddw %r14w, %r14w
// CHECK: encoding: [0x66,0x45,0x0f,0xc1,0xf6]
xaddw %r14w, %r14w
// CHECK: xaddw %r14w, (%rdx)
// CHECK: encoding: [0x66,0x44,0x0f,0xc1,0x32]
xaddw %r14w, (%rdx)

3530
test/MC/X86/I86-32.s Normal file

File diff suppressed because it is too large Load Diff

4846
test/MC/X86/I86-64.s Normal file

File diff suppressed because it is too large Load Diff

1730
test/MC/X86/MMX-32.s Executable file

File diff suppressed because it is too large Load Diff

1754
test/MC/X86/MMX-64.s Normal file

File diff suppressed because it is too large Load Diff

126
test/MC/X86/PPRO-32.s Normal file
View File

@ -0,0 +1,126 @@
// RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: cmovael %eax, %eax
// CHECK: encoding: [0x0f,0x43,0xc0]
cmovael %eax, %eax
// CHECK: cmoval %eax, %eax
// CHECK: encoding: [0x0f,0x47,0xc0]
cmoval %eax, %eax
// CHECK: cmovbel %eax, %eax
// CHECK: encoding: [0x0f,0x46,0xc0]
cmovbel %eax, %eax
// CHECK: cmovbl %eax, %eax
// CHECK: encoding: [0x0f,0x42,0xc0]
cmovbl %eax, %eax
// CHECK: cmovel %eax, %eax
// CHECK: encoding: [0x0f,0x44,0xc0]
cmovel %eax, %eax
// CHECK: cmovgel %eax, %eax
// CHECK: encoding: [0x0f,0x4d,0xc0]
cmovgel %eax, %eax
// CHECK: cmovgl %eax, %eax
// CHECK: encoding: [0x0f,0x4f,0xc0]
cmovgl %eax, %eax
// CHECK: cmovlel %eax, %eax
// CHECK: encoding: [0x0f,0x4e,0xc0]
cmovlel %eax, %eax
// CHECK: cmovll %eax, %eax
// CHECK: encoding: [0x0f,0x4c,0xc0]
cmovll %eax, %eax
// CHECK: cmovnel %eax, %eax
// CHECK: encoding: [0x0f,0x45,0xc0]
cmovnel %eax, %eax
// CHECK: cmovnol %eax, %eax
// CHECK: encoding: [0x0f,0x41,0xc0]
cmovnol %eax, %eax
// CHECK: cmovnpl %eax, %eax
// CHECK: encoding: [0x0f,0x4b,0xc0]
cmovnpl %eax, %eax
// CHECK: cmovnsl %eax, %eax
// CHECK: encoding: [0x0f,0x49,0xc0]
cmovnsl %eax, %eax
// CHECK: cmovol %eax, %eax
// CHECK: encoding: [0x0f,0x40,0xc0]
cmovol %eax, %eax
// CHECK: cmovpl %eax, %eax
// CHECK: encoding: [0x0f,0x4a,0xc0]
cmovpl %eax, %eax
// CHECK: cmovsl %eax, %eax
// CHECK: encoding: [0x0f,0x48,0xc0]
cmovsl %eax, %eax
// CHECK: fcmovbe %st(4), %st(0)
// CHECK: encoding: [0xda,0xd4]
fcmovbe %st(4), %st(0)
// CHECK: fcmovb %st(4), %st(0)
// CHECK: encoding: [0xda,0xc4]
fcmovb %st(4), %st(0)
// CHECK: fcmove %st(4), %st(0)
// CHECK: encoding: [0xda,0xcc]
fcmove %st(4), %st(0)
// CHECK: fcmovnbe %st(4), %st(0)
// CHECK: encoding: [0xdb,0xd4]
fcmovnbe %st(4), %st(0)
// CHECK: fcmovnb %st(4), %st(0)
// CHECK: encoding: [0xdb,0xc4]
fcmovnb %st(4), %st(0)
// CHECK: fcmovne %st(4), %st(0)
// CHECK: encoding: [0xdb,0xcc]
fcmovne %st(4), %st(0)
// CHECK: fcmovnu %st(4), %st(0)
// CHECK: encoding: [0xdb,0xdc]
fcmovnu %st(4), %st(0)
// CHECK: fcmovu %st(4), %st(0)
// CHECK: encoding: [0xda,0xdc]
fcmovu %st(4), %st(0)
// CHECK: fcomi %st(4)
// CHECK: encoding: [0xdb,0xf4]
fcomi %st(4)
// CHECK: fcompi %st(4)
// CHECK: encoding: [0xdf,0xf4]
fcompi %st(4)
// CHECK: fucomi %st(4)
// CHECK: encoding: [0xdb,0xec]
fucomi %st(4)
// CHECK: fucompi %st(4)
// CHECK: encoding: [0xdf,0xec]
fucompi %st(4)
// CHECK: sysenter
// CHECK: encoding: [0x0f,0x34]
sysenter
// CHECK: sysexitl
// CHECK: encoding: [0x0f,0x35]
sysexitl
// CHECK: ud2
// CHECK: encoding: [0x0f,0x0b]
ud2

130
test/MC/X86/PPRO-64.s Normal file
View File

@ -0,0 +1,130 @@
// RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
// CHECK: cmovael %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x43,0xed]
cmovael %r13d, %r13d
// CHECK: cmoval %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x47,0xed]
cmoval %r13d, %r13d
// CHECK: cmovbel %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x46,0xed]
cmovbel %r13d, %r13d
// CHECK: cmovbl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x42,0xed]
cmovbl %r13d, %r13d
// CHECK: cmovel %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x44,0xed]
cmovel %r13d, %r13d
// CHECK: cmovgel %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4d,0xed]
cmovgel %r13d, %r13d
// CHECK: cmovgl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4f,0xed]
cmovgl %r13d, %r13d
// CHECK: cmovlel %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4e,0xed]
cmovlel %r13d, %r13d
// CHECK: cmovll %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4c,0xed]
cmovll %r13d, %r13d
// CHECK: cmovnel %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x45,0xed]
cmovnel %r13d, %r13d
// CHECK: cmovnol %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x41,0xed]
cmovnol %r13d, %r13d
// CHECK: cmovnpl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4b,0xed]
cmovnpl %r13d, %r13d
// CHECK: cmovnsl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x49,0xed]
cmovnsl %r13d, %r13d
// CHECK: cmovol %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x40,0xed]
cmovol %r13d, %r13d
// CHECK: cmovpl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x4a,0xed]
cmovpl %r13d, %r13d
// CHECK: cmovsl %r13d, %r13d
// CHECK: encoding: [0x45,0x0f,0x48,0xed]
cmovsl %r13d, %r13d
// CHECK: fcmovbe %st(4), %st(0)
// CHECK: encoding: [0xda,0xd4]
fcmovbe %st(4), %st(0)
// CHECK: fcmovb %st(4), %st(0)
// CHECK: encoding: [0xda,0xc4]
fcmovb %st(4), %st(0)
// CHECK: fcmove %st(4), %st(0)
// CHECK: encoding: [0xda,0xcc]
fcmove %st(4), %st(0)
// CHECK: fcmovnbe %st(4), %st(0)
// CHECK: encoding: [0xdb,0xd4]
fcmovnbe %st(4), %st(0)
// CHECK: fcmovnb %st(4), %st(0)
// CHECK: encoding: [0xdb,0xc4]
fcmovnb %st(4), %st(0)
// CHECK: fcmovne %st(4), %st(0)
// CHECK: encoding: [0xdb,0xcc]
fcmovne %st(4), %st(0)
// CHECK: fcmovnu %st(4), %st(0)
// CHECK: encoding: [0xdb,0xdc]
fcmovnu %st(4), %st(0)
// CHECK: fcmovu %st(4), %st(0)
// CHECK: encoding: [0xda,0xdc]
fcmovu %st(4), %st(0)
// CHECK: fcomi %st(4)
// CHECK: encoding: [0xdb,0xf4]
fcomi %st(4)
// CHECK: fcompi %st(4)
// CHECK: encoding: [0xdf,0xf4]
fcompi %st(4)
// CHECK: fucomi %st(4)
// CHECK: encoding: [0xdb,0xec]
fucomi %st(4)
// CHECK: fucompi %st(4)
// CHECK: encoding: [0xdf,0xec]
fucompi %st(4)
// CHECK: sysenter
// CHECK: encoding: [0x0f,0x34]
sysenter
// CHECK: sysexitl
// CHECK: encoding: [0x0f,0x35]
sysexitl
// CHECK: sysexitq
// CHECK: encoding: [0x48,0x0f,0x35]
sysexitq
// CHECK: ud2
// CHECK: encoding: [0x0f,0x0b]
ud2