mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-01 15:11:24 +00:00
f6145affbf
Requires new AsmParserOperand types that detect 16-bit and 32/64-bit mode so that we choose the right instruction based on default sizing without predicates. This is necessary since predicates mess up the disassembler table building. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225256 91177308-0d34-0410-b5e6-96231b3b80d8
283 lines
5.2 KiB
Plaintext
283 lines
5.2 KiB
Plaintext
# RUN: llvm-mc --disassemble %s -triple=x86_64 | FileCheck %s
|
|
|
|
# Coverage
|
|
|
|
# CHECK: vcmptrue_usps
|
|
0xc5 0x04 0xc2 0xc7 0x1f
|
|
|
|
# CHECK: vcmptrue_uspd
|
|
0xc5 0x05 0xc2 0xc7 0x1f
|
|
|
|
# CHECK: vcmptrue_usss
|
|
0xc5 0x06 0xc2 0xc7 0x1f
|
|
|
|
# CHECK: vcmptrue_ussd
|
|
0xc5 0x07 0xc2 0xc7 0x1f
|
|
|
|
# CHECK: vcmpeq_uqps
|
|
0xc5 0x04 0xc2 0xc7 0x08
|
|
|
|
# CHECK: vcmpeq_uqpd
|
|
0xc5 0x05 0xc2 0xc7 0x08
|
|
|
|
# CHECK: vcmpeq_uqss
|
|
0xc5 0x06 0xc2 0xc7 0x08
|
|
|
|
# CHECK: vcmpeq_uqsd
|
|
0xc5 0x07 0xc2 0xc7 0x08
|
|
|
|
# CHECK: vcmpeqps
|
|
0xc5 0x04 0xc2 0xc7 0x00
|
|
|
|
# CHECK: vcmpeqpd
|
|
0xc5 0x05 0xc2 0xc7 0x00
|
|
|
|
# CHECK: vcmpeqss
|
|
0xc5 0x06 0xc2 0xc7 0x00
|
|
|
|
# CHECK: vcmpeqsd
|
|
0xc5 0x07 0xc2 0xc7 0x00
|
|
|
|
# CHECK: cmpeqps
|
|
0x0f 0xc2 0xc7 0x00
|
|
|
|
# CHECK: cmpeqpd
|
|
0x66 0x0f 0xc2 0xc7 0x00
|
|
|
|
# CHECK: cmpeqss
|
|
0xf3 0x0f 0xc2 0xc7 0x00
|
|
|
|
# CHECK: cmpeqsd
|
|
0xf2 0x0f 0xc2 0xc7 0x00
|
|
|
|
# CHECK: cmpordps
|
|
0x0f 0xc2 0xc7 0x07
|
|
|
|
# CHECK: cmpordpd
|
|
0x66 0x0f 0xc2 0xc7 0x07
|
|
|
|
# CHECK: cmpordss
|
|
0xf3 0x0f 0xc2 0xc7 0x07
|
|
|
|
# CHECK: cmpordsd
|
|
0xf2 0x0f 0xc2 0xc7 0x07
|
|
|
|
# CHECK: extrq $2, $3, %xmm0
|
|
0x66 0x0f 0x78 0xc0 0x03 0x02
|
|
|
|
# CHECK: extrq %xmm1, %xmm0
|
|
0x66 0x0f 0x79 0xc1
|
|
|
|
# CHECK: insertq $6, $5, %xmm1, %xmm0
|
|
0xf2 0x0f 0x78 0xc1 0x05 0x06
|
|
|
|
# CHECK: insertq %xmm1, %xmm0
|
|
0xf2 0x0f 0x79 0xc1
|
|
|
|
# CHECK: movntsd %xmm0, (%rdi)
|
|
0xf2 0x0f 0x2b 0x07
|
|
|
|
# CHECK: movntss %xmm0, (%rdi)
|
|
0xf3 0x0f 0x2b 0x07
|
|
|
|
# CHECK: adcxl %eax, %eax
|
|
0x66 0x0f 0x38 0xf6 0xc0
|
|
|
|
# CHECK: adcxl (%rax), %eax
|
|
0x66 0x0f 0x38 0xf6 0x00
|
|
|
|
# CHECK: adcxq %rax, %rax
|
|
0x66 0x48 0x0f 0x38 0xf6 0xc0
|
|
|
|
# CHECK: adcxq (%rax), %rax
|
|
0x66 0x48 0x0f 0x38 0xf6 0x00
|
|
|
|
# CHECK: adoxl %eax, %eax
|
|
0xf3 0x0f 0x38 0xf6 0xc0
|
|
|
|
# CHECK: adoxl (%rax), %eax
|
|
0xf3 0x0f 0x38 0xf6 0x00
|
|
|
|
# CHECK: adoxq %rax, %rax
|
|
0xf3 0x48 0x0f 0x38 0xf6 0xc0
|
|
|
|
# CHECK: adoxq (%rax), %rax
|
|
0xf3 0x48 0x0f 0x38 0xf6 0x00
|
|
|
|
# CHECK: xbegin 53
|
|
0xc7 0xf8 0x35 0x00 0x00 0x00
|
|
|
|
# CHECK: xbegin 53
|
|
0x66 0xc7 0xf8 0x35 0x00
|
|
|
|
# CHECK: xend
|
|
0x0f 0x01 0xd5
|
|
|
|
# CHECK: xabort $13
|
|
0xc6 0xf8 0x0d
|
|
|
|
# CHECK: xsaveq (%rax)
|
|
0x48 0x0f 0xae 0x20
|
|
|
|
# CHECK: xrstorq (%rax)
|
|
0x48 0x0f 0xae 0x28
|
|
|
|
# CHECK: xsaveoptq (%rax)
|
|
0x48 0x0f 0xae 0x30
|
|
|
|
# CHECK: clac
|
|
0x0f 0x01 0xca
|
|
|
|
# CHECK: stac
|
|
0x0f 0x01 0xcb
|
|
|
|
# CHECK: movabsb -6066930261531658096, %al
|
|
0xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsb -6066930261531658096, %al
|
|
0x48 0xa0 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsw -6066930261531658096, %ax
|
|
0x66 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsl -6066930261531658096, %eax
|
|
0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsq -6066930261531658096, %rax
|
|
0x48 0xa1 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsb %al, -6066930261531658096
|
|
0xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsb %al, -6066930261531658096
|
|
0x48 0xa2 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsw %ax, -6066930261531658096
|
|
0x66 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsl %eax, -6066930261531658096
|
|
0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: movabsq %rax, -6066930261531658096
|
|
0x48 0xa3 0x90 0x78 0x56 0x34 0x12 0xef 0xcd 0xab
|
|
|
|
# CHECK: sha1rnds4 $1, %xmm1, %xmm2
|
|
0x0f 0x3a 0xcc 0xd1 0x01
|
|
|
|
# CHECK: sha1rnds4 $1, (%rax), %xmm2
|
|
0x0f 0x3a 0xcc 0x10 0x01
|
|
|
|
# CHECK: sha1nexte %xmm1, %xmm2
|
|
0x0f 0x38 0xc8 0xd1
|
|
|
|
# CHECK: sha1nexte (%rax), %xmm2
|
|
0x0f 0x38 0xc8 0x10
|
|
|
|
# CHECK: sha1msg1 %xmm1, %xmm2
|
|
0x0f 0x38 0xc9 0xd1
|
|
|
|
# CHECK: sha1msg1 (%rax), %xmm2
|
|
0x0f 0x38 0xc9 0x10
|
|
|
|
# CHECK: sha1msg2 %xmm1, %xmm2
|
|
0x0f 0x38 0xca 0xd1
|
|
|
|
# CHECK: sha1msg2 (%rax), %xmm2
|
|
0x0f 0x38 0xca 0x10
|
|
|
|
# CHECK: sha256rnds2 (%rax), %xmm2
|
|
0x0f 0x38 0xcb 0x10
|
|
|
|
# CHECK: sha256rnds2 %xmm1, %xmm2
|
|
0x0f 0x38 0xcb 0xd1
|
|
|
|
# CHECK: sha256msg1 %xmm1, %xmm2
|
|
0x0f 0x38 0xcc 0xd1
|
|
|
|
# CHECK: sha256msg1 (%rax), %xmm2
|
|
0x0f 0x38 0xcc 0x10
|
|
|
|
# CHECK: sha256msg2 %xmm1, %xmm2
|
|
0x0f 0x38 0xcd 0xd1
|
|
|
|
# CHECK: sha256msg2 (%rax), %xmm2
|
|
0x0f 0x38 0xcd 0x10
|
|
|
|
# CHECK: incl %ecx
|
|
0xff 0xc1
|
|
|
|
# CHECK: decl %ecx
|
|
0xff 0xc9
|
|
|
|
# CHECK: incw %cx
|
|
0x66 0xff 0xc1
|
|
|
|
# CHECK: decw %cx
|
|
0x66 0xff 0xc9
|
|
|
|
# CHECK: incb %cl
|
|
0xfe 0xc1
|
|
|
|
# CHECK: decb %cl
|
|
0xfe 0xc9
|
|
|
|
# CHECK: incq %rcx
|
|
0x48 0xff 0xc1
|
|
|
|
# CHECK: decq %rcx
|
|
0x48 0xff 0xc9
|
|
|
|
# CHECK: movq %xmm0, %xmm0
|
|
0xf3 0x0f 0x7e 0xc0
|
|
|
|
# CHECK: vmovq %xmm0, %xmm0
|
|
0xc5 0xfa 0x7e 0xc0
|
|
|
|
# CHECK: vmovq %xmm0, %rax
|
|
0xc4 0xe1 0xf9 0x7e 0xc0
|
|
|
|
# CHECK: movd %xmm0, %rax
|
|
0x66 0x48 0x0f 0x7e 0xc0
|
|
|
|
# CHECK: pextrw $3, %xmm3, %ecx
|
|
0x66 0x0f 0x3a 0x15 0xd9 0x03
|
|
|
|
# CHECK: pextrw $3, %xmm3, (%rax)
|
|
0x66 0x0f 0x3a 0x15 0x18 0x03
|
|
|
|
# CHECK: $0, 305419896(,%r8)
|
|
0x43 0x80 0x04 0x05 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(%r13,%r8)
|
|
0x43 0x80 0x84 0x05 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(,%r8)
|
|
0x42 0x80 0x04 0x05 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(%rbp,%r8)
|
|
0x42 0x80 0x84 0x05 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(,%r12)
|
|
0x42 0x80 0x04 0x25 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(%rbp,%r12)
|
|
0x42 0x80 0x84 0x25 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896
|
|
0x80 0x04 0x25 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: $0, 305419896(%rbp)
|
|
0x80 0x84 0x25 0x78 0x56 0x34 0x12 0x00
|
|
|
|
# CHECK: movabsq 6510615555426900570, %rax
|
|
0x48 0xa1 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a
|
|
|
|
# CHECK: movq 1515870810, %rax
|
|
0x67, 0x48 0xa1 0x5a 0x5a 0x5a 0x5a
|
|
|
|
# CHECK: movabsq %rax, 6510615555426900570
|
|
0x48 0xa3 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a 0x5a
|
|
|
|
# CHECK: movq %rax, 1515870810
|
|
0x67, 0x48 0xa3 0x5a 0x5a 0x5a 0x5a
|