mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 19:52:54 +01:00
41639473ed
- This is "experimental" code, I am feeling my way around and working out the best way to do things (and learning tblgen in the process). Comments welcome, but keep in mind this stuff will change radically. - This is enough to match "subb" and friends, but not much else. The next step is to automatically generate the matchers for individual operands. llvm-svn: 77657
37 lines
737 B
ArmAsm
37 lines
737 B
ArmAsm
// FIXME: Actually test that we get the expected results.
|
|
|
|
// RUN: llvm-mc -triple i386-unknown-unknown %s > %t 2> %t2
|
|
|
|
# Immediates
|
|
push $1
|
|
push $(1+2)
|
|
push $a
|
|
push $1 + 2
|
|
|
|
# Disambiguation
|
|
push 4+4
|
|
push (4+4)
|
|
push (4+4)(%eax)
|
|
push 8(%eax)
|
|
push (%eax)
|
|
push (4+4)(,%eax)
|
|
|
|
# Indirect Memory Operands
|
|
push 1(%eax)
|
|
push 1(%eax,%ebx)
|
|
push 1(%eax,%ebx,)
|
|
push 1(%eax,%ebx,4)
|
|
push 1(,%ebx)
|
|
push 1(,%ebx,)
|
|
push 1(,%ebx,4)
|
|
push 1(,%ebx,(2+2))
|
|
|
|
# '*'
|
|
call a
|
|
call *a
|
|
call *%eax
|
|
call 4(%eax) # FIXME: Warn or reject.
|
|
call *4(%eax)
|
|
|
|
|