blob: b069a282e5c54c86395d8701d9206fce12361bdf [file] [log] [blame]
.text
# All the following should be illegal for x86-64
aaa # illegal
aad # illegal
aam # illegal
aas # illegal
arpl %ax,%ax # illegal
bound %eax,(%rax) # illegal
calll *%eax # 32-bit data size not allowed
calll *(%ax) # 32-bit data size not allowed
calll *(%eax) # 32-bit data size not allowed
calll *(%r8) # 32-bit data size not allowed
calll *(%rax) # 32-bit data size not allowed
callq *(%ax) # 32-bit data size not allowed
callw *(%ax) # no 16-bit addressing
daa # illegal
das # illegal
enterl $0,$0 # can't have 32-bit stack operands
into # illegal
foo: jcxz foo # No prefix exists to select CX as a counter
jmpl *%eax # 32-bit data size not allowed
jmpl *(%rax) # 32-bit data size not allowed
lcalll $0,$0 # illegal
lcallq $0,$0 # illegal
ldsl %eax,(%rax) # illegal
ldsq %rax,(%rax) # illegal
lesl %eax,(%rax) # illegal
lesq %rax,(%rax) # illegal
ljmpl $0,$0 # illegal
ljmpq $0,$0 # illegal
ljmpq *(%rax) # 64-bit data size not allowed
loopw foo # No prefix exists to select CX as a counter
loopew foo # No prefix exists to select CX as a counter
loopnew foo # No prefix exists to select CX as a counter
loopnzw foo # No prefix exists to select CX as a counter
loopzw foo # No prefix exists to select CX as a counter
leavel # can't have 32-bit stack operands
pop %ds # illegal
pop %es # illegal
pop %ss # illegal
popa # illegal
popl %eax # can't have 32-bit stack operands
push %cs # illegal
push %ds # illegal
push %es # illegal
push %ss # illegal
pusha # illegal
pushl %eax # can't have 32-bit stack operands
pushfl # can't have 32-bit stack operands
popfl # can't have 32-bit stack operands
retl # can't have 32-bit stack operands