blob: bc6f0fa6cc31198b5a7618e49c208b985208011c [file] [log] [blame]
.macro bad args:vararg
.ifdef _bad_
\args
.endif
.endm
.macro ill args:vararg
# This is used to mark entries that aren't handled consistently,
# and thus shouldn't currently be checked for.
# \args
.endm
.text
_start:
movabs $xtrn, %rax
add $xtrn, %rax
mov $xtrn, %eax
mov $xtrn, %ax
mov $xtrn, %al
mov xtrn(%rbx), %eax
mov xtrn(%ebx), %eax
movabs $(xtrn - .), %rax
add $(xtrn - .), %rax
ill mov $(xtrn - .), %eax
mov $(xtrn - .), %ax
mov $(xtrn - .), %al
mov xtrn(%rip), %eax
mov xtrn(%eip), %eax
call xtrn
jrcxz xtrn
movabs $xtrn@got, %rax
add $xtrn@got, %rax
bad mov $xtrn@got, %eax
bad mov $xtrn@got, %ax
bad mov $xtrn@got, %al
mov xtrn@got(%rbx), %eax
bad mov xtrn@got(%ebx), %eax
bad call xtrn@got
movabs $xtrn@gotoff, %rax
bad add $xtrn@gotoff, %rax
bad mov $xtrn@gotoff, %eax
bad mov $xtrn@gotoff, %ax
bad mov $xtrn@gotoff, %al
bad mov xtrn@gotoff(%rbx), %eax
bad mov xtrn@gotoff(%ebx), %eax
bad call xtrn@gotoff
bad movabs $xtrn@gotpcrel, %rax
add $xtrn@gotpcrel, %rax
bad mov $xtrn@gotpcrel, %eax
bad mov $xtrn@gotpcrel, %ax
bad mov $xtrn@gotpcrel, %al
mov xtrn@gotpcrel(%rbx), %eax
bad mov xtrn@gotpcrel(%ebx), %eax
call xtrn@gotpcrel
ill movabs $_GLOBAL_OFFSET_TABLE_, %rax
add $_GLOBAL_OFFSET_TABLE_, %rax
ill add $_GLOBAL_OFFSET_TABLE_, %eax
ill add $_GLOBAL_OFFSET_TABLE_, %ax
ill add $_GLOBAL_OFFSET_TABLE_, %al
lea _GLOBAL_OFFSET_TABLE_(%rip), %rax
lea _GLOBAL_OFFSET_TABLE_(%eip), %rax
ill movabs $(_GLOBAL_OFFSET_TABLE_ - .), %rax
add $(_GLOBAL_OFFSET_TABLE_ - .), %rax
ill add $(_GLOBAL_OFFSET_TABLE_ - .), %eax
ill add $(_GLOBAL_OFFSET_TABLE_ - .), %ax
ill add $(_GLOBAL_OFFSET_TABLE_ - .), %al
bad movabs $xtrn@plt, %rax
add $xtrn@plt, %rax
bad mov $xtrn@plt, %eax
bad mov $xtrn@plt, %ax
bad mov $xtrn@plt, %al
mov xtrn@plt(%rbx), %eax
bad mov xtrn@plt(%ebx), %eax
call xtrn@plt
bad jrcxz xtrn@plt
bad movabs $xtrn@tlsgd, %rax
add $xtrn@tlsgd, %rax
bad mov $xtrn@tlsgd, %eax
bad mov $xtrn@tlsgd, %ax
bad mov $xtrn@tlsgd, %al
mov xtrn@tlsgd(%rbx), %eax
bad mov xtrn@tlsgd(%ebx), %eax
call xtrn@tlsgd
bad movabs $xtrn@gottpoff, %rax
add $xtrn@gottpoff, %rax
bad mov $xtrn@gottpoff, %eax
bad mov $xtrn@gottpoff, %ax
bad mov $xtrn@gottpoff, %al
mov xtrn@gottpoff(%rbx), %eax
bad mov xtrn@gottpoff(%ebx), %eax
call xtrn@gottpoff
bad movabs $xtrn@tlsld, %rax
add $xtrn@tlsld, %rax
bad mov $xtrn@tlsld, %eax
bad mov $xtrn@tlsld, %ax
bad mov $xtrn@tlsld, %al
mov xtrn@tlsld(%rbx), %eax
bad mov xtrn@tlsld(%ebx), %eax
call xtrn@tlsld
movabs $xtrn@dtpoff, %rax
add $xtrn@dtpoff, %rax
bad mov $xtrn@dtpoff, %eax
bad mov $xtrn@dtpoff, %ax
bad mov $xtrn@dtpoff, %al
mov xtrn@dtpoff(%rbx), %eax
bad mov xtrn@dtpoff(%ebx), %eax
bad call xtrn@dtpoff
movabs $xtrn@tpoff, %rax
add $xtrn@tpoff, %rax
bad mov $xtrn@tpoff, %eax
bad mov $xtrn@tpoff, %ax
bad mov $xtrn@tpoff, %al
mov xtrn@tpoff(%rbx), %eax
bad mov xtrn@tpoff(%ebx), %eax
bad call xtrn@tpoff
.data
.quad xtrn
.quad xtrn - .
.quad xtrn@got
.quad xtrn@gotoff
.quad xtrn@gotpcrel
ill .quad _GLOBAL_OFFSET_TABLE_
ill .quad _GLOBAL_OFFSET_TABLE_ - .
bad .quad xtrn@plt
bad .quad xtrn@tlsgd
bad .quad xtrn@gottpoff
bad .quad xtrn@tlsld
.quad xtrn@dtpoff
.quad xtrn@tpoff
.long xtrn
.long xtrn - .
.long xtrn@got
bad .long xtrn@gotoff
.long xtrn@gotpcrel
.long _GLOBAL_OFFSET_TABLE_
.long _GLOBAL_OFFSET_TABLE_ - .
.long xtrn@plt
.long xtrn@tlsgd
.long xtrn@gottpoff
.long xtrn@tlsld
.long xtrn@dtpoff
.long xtrn@tpoff
.slong xtrn
.slong xtrn - .
.slong xtrn@got
bad .slong xtrn@gotoff
.slong xtrn@gotpcrel
.slong _GLOBAL_OFFSET_TABLE_
.slong _GLOBAL_OFFSET_TABLE_ - .
.slong xtrn@plt
.slong xtrn@tlsgd
.slong xtrn@gottpoff
.slong xtrn@tlsld
.slong xtrn@dtpoff
.slong xtrn@tpoff
.word xtrn
.word xtrn - .
bad .word xtrn@got
bad .word xtrn@gotoff
bad .word xtrn@gotpcrel
ill .word _GLOBAL_OFFSET_TABLE_
ill .word _GLOBAL_OFFSET_TABLE_ - .
bad .word xtrn@plt
bad .word xtrn@tlsgd
bad .word xtrn@gottpoff
bad .word xtrn@tlsld
bad .word xtrn@dtpoff
bad .word xtrn@tpoff
.byte xtrn
.byte xtrn - .
bad .byte xtrn@got
bad .byte xtrn@gotoff
bad .byte xtrn@gotpcrel
ill .byte _GLOBAL_OFFSET_TABLE_
ill .byte _GLOBAL_OFFSET_TABLE_ - .
bad .byte xtrn@plt
bad .byte xtrn@tlsgd
bad .byte xtrn@gottpoff
bad .byte xtrn@tlsld
bad .byte xtrn@dtpoff
bad .byte xtrn@tpoff
.text
mov xtrn@tpoff (%rbx), %eax
.data
.long xtrn@got - 4
.long xtrn@got + 4
.text
movabs $xtrn@gotplt, %rax
bad add $xtrn@gotplt, %rax
bad mov $xtrn@gotplt, %eax
bad mov $xtrn@gotplt, %ax
bad mov $xtrn@gotplt, %al
bad mov xtrn@gotplt(%rbx), %eax
bad mov xtrn@gotplt(%ebx), %eax
bad call xtrn@gotplt
.data
.quad xtrn@gotplt
bad .long xtrn@gotplt
bad .word xtrn@gotplt
bad .byte xtrn@gotplt
.text
mov xtrn(,%rbx), %eax
mov xtrn(,%ebx), %eax
vgatherdps %xmm2, xtrn(,%xmm1), %xmm0
addr32 vgatherdps %xmm2, xtrn(,%xmm1), %xmm0
bad .long xtrn@plt - .