123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- .section .rodata.foo,"aMS",@progbits,1,unique,1
- .LC0:
- .string "PASS"
- .text
- .globl check
- .type check, @function
- check:
- subq $8, %rsp
- call *get_func1@GOTPCREL(%rip)
- cmpl $func1, %eax
- jne .L3
- movq func1_p@GOTPCREL(%rip), %rdx
- #ifdef __LP64__
- cmpq %rax, (%rdx)
- #else
- cmpl %eax, (%rdx)
- #endif
- jne .L3
- call *func1@GOTPCREL(%rip)
- cmpl $1, %eax
- jne .L3
- call *call_func1@GOTPCREL(%rip)
- cmpl $1, %eax
- jne .L3
- leaq .LC0(%rip), %rdi
- addq $8, %rsp
- jmp *puts@GOTPCREL(%rip)
- .L3:
- call *abort@GOTPCREL(%rip)
- .size check, .-check
- .globl get_func1
- .type get_func1, @function
- get_func1:
- movq func1@GOTPCREL(%rip), %rax
- ret
- .size get_func1, .-get_func1
- .globl call_func1
- .type call_func1, @function
- call_func1:
- jmp *func1@GOTPCREL(%rip)
- .size call_func1, .-call_func1
- .globl func1_p
- .section .rodata.foo,"a",@progbits,unique,2
- .align 8
- .size func1_p, 8
- .type func1_p, @object
- func1_p:
- .dc.a func1
- .text
- implementation1:
- movl $1, %eax
- ret
- .size implementation1, .-implementation1
- .globl func1
- .type func1, @gnu_indirect_function
- func1:
- leaq implementation1(%rip), %rax
- ret
- .size func1, .-func1
- .section .note.GNU-stack,"",@progbits
|