28 lines
398 B
ArmAsm
28 lines
398 B
ArmAsm
.text
|
|
.type selector, %function
|
|
foo:
|
|
movl $0, %eax
|
|
ret
|
|
selector:
|
|
.ifdef __x86_64__
|
|
leaq foo(%rip), %rax
|
|
.else
|
|
leal foo@GOTOFF(%eax), %eax
|
|
.endif
|
|
ret
|
|
.type selector, %gnu_indirect_function
|
|
.globl _start
|
|
_start:
|
|
.ifdef __x86_64__
|
|
movabs ptr, %rax
|
|
call *%rax
|
|
.else
|
|
mov ptr, %eax
|
|
call *%eax
|
|
.endif
|
|
ret
|
|
.data
|
|
.type ptr, @object
|
|
ptr:
|
|
.dc.a foo
|
|
.section .note.GNU-stack,"",@progbits
|