blob: 7a42759e75288bebd88919016f76be195b35a125 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
.text
.globl foo
.def foo; .scl 2; .type 32; .endef
foo:
pushq %rbp
movq %rsp, %rbp
subq $32, %rsp
movl %ecx, 16(%rbp)
movq .refptr.bar1(%rip), %rax
testq %rax, %rax
je .L2
call bar1
.L2:
movq .refptr.bar2(%rip), %rax
testq %rax, %rax
je .L3
call bar2
.L3:
movl 16(%rbp), %eax
imull %eax, %eax
addq $32, %rsp
popq %rbp
ret
.weak bar2
.weak bar1
.def bar1; .scl 2; .type 32; .endef
.def bar2; .scl 2; .type 32; .endef
.section .rdata$.refptr.bar2, "dr"
.globl .refptr.bar2
.linkonce discard
.refptr.bar2:
.quad bar2
.section .rdata$.refptr.bar1, "dr"
.globl .refptr.bar1
.linkonce discard
.refptr.bar1:
.quad bar1
|