crtbegin_so.S revision dc3bc87b43d0d73d89cca59692b80de878e11a5d
1.section .init_array, "aw"
2.align 4
3.type __INIT_ARRAY__, @object
4.globl __INIT_ARRAY__
5__INIT_ARRAY__:
6    .long -1
7    .long frame_dummy
8
9.section .fini_array, "aw"
10.align 4
11.type __FINI_ARRAY__, @object
12.globl __FINI_ARRAY__
13__FINI_ARRAY__:
14    .long -1
15    .long __do_global_dtors_aux
16
17	.section	.eh_frame,"a",@progbits
18	.align 4
19	.type	__EH_FRAME_BEGIN__, @object
20__EH_FRAME_BEGIN__:
21	.text
22	.p2align 4,,15
23	.type	__do_global_dtors_aux, @function
24__do_global_dtors_aux:
25	pushl	%ebp
26	movl	%esp, %ebp
27	pushl	%ebx
28	call	__x86.get_pc_thunk.bx
29	addl	$_GLOBAL_OFFSET_TABLE_, %ebx
30	subl	$20, %esp
31	cmpb	$0, completed.4454@GOTOFF(%ebx)
32	jne	.L5
33	movl	__dso_handle@GOTOFF(%ebx), %eax
34	movl	%eax, (%esp)
35	call	__cxa_finalize@PLT
36	movl	__deregister_frame_info_bases@GOT(%ebx), %eax
37	testl	%eax, %eax
38	je	.L4
39	leal	__EH_FRAME_BEGIN__@GOTOFF(%ebx), %eax
40	movl	%eax, (%esp)
41	call	__deregister_frame_info_bases@PLT
42.L4:
43	movb	$1, completed.4454@GOTOFF(%ebx)
44.L5:
45	addl	$20, %esp
46	popl	%ebx
47	popl	%ebp
48	ret
49	.text
50	.p2align 4,,15
51	.type	frame_dummy, @function
52frame_dummy:
53	pushl	%ebp
54	movl	%esp, %ebp
55	pushl	%ebx
56	call	__x86.get_pc_thunk.bx
57	addl	$_GLOBAL_OFFSET_TABLE_, %ebx
58	subl	$20, %esp
59	movl	__register_frame_info_bases@GOT(%ebx), %eax
60	testl	%eax, %eax
61	je	.L8
62	leal	object.4469@GOTOFF(%ebx), %eax
63	movl	%eax, 4(%esp)
64	leal	__EH_FRAME_BEGIN__@GOTOFF(%ebx), %eax
65	movl	%ebx, 12(%esp)
66	movl	$0, 8(%esp)
67	movl	%eax, (%esp)
68	call	__register_frame_info_bases@PLT
69.L8:
70	addl	$20, %esp
71	popl	%ebx
72	popl	%ebp
73	ret
74	.local	completed.4454
75	.comm	completed.4454,1,1
76	.local	object.4469
77	.comm	object.4469,24,4
78	.weak	__register_frame_info_bases
79	.weak	__deregister_frame_info_bases
80
81	.section	.text.__x86.get_pc_thunk.bx,"axG",@progbits,__x86.get_pc_thunk.bx,comdat
82	.globl	__x86.get_pc_thunk.bx
83	.hidden	__x86.get_pc_thunk.bx
84	.type	__x86.get_pc_thunk.bx, @function
85__x86.get_pc_thunk.bx:
86	nop
87	nop
88	nop
89	nop
90	nop
91	nop
92	nop
93	nop
94	movl	(%esp), %ebx
95	ret
96
97#include "__dso_handle.S"
98