xref: /titanic_41/usr/src/lib/common/i386/crti.s (revision 6f45ec7b0b964c3be967c4880e8867ac1e7763a5)
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License").  You may not use this file except in compliance
7 * with the License.
8 *
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
13 *
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
19 *
20 * CDDL HEADER END
21 */
22/*
23 * Copyright (c) 2001 by Sun Microsystems, Inc.
24 * All rights reserved.
25 */
26
27/*
28 * These crt*.o modules are provided as the bare minimum required
29 * from a crt*.o for inclusion in building low level system
30 * libraries.  The are only be to included in libraries which
31 * contain *no* C++ code and want to avoid the startup code
32 * that the C++ runtime has introduced into the crt*.o modules.
33 *
34 * For further details - see bug#4433015
35 */
36
37	.ident	"%Z%%M%	%I%	%E% SMI"
38	.file	"crti.s"
39
40/*
41 * _init function prologue
42 */
43	.section	.init,"ax"
44	.globl	_init
45	.type	_init,@function
46	.align	16
47_init:
48	pushl	%ebp
49	movl	%esp, %ebp
50	pushl	%ebx
51	call	.L1
52.L1:	popl	%ebx
53	addl	$_GLOBAL_OFFSET_TABLE_+[.-.L1], %ebx
54
55/*
56 * _fini function prologue
57 */
58	.section	.fini,"ax"
59	.globl	_fini
60	.type	_fini,@function
61	.align	16
62_fini:
63	pushl	%ebp
64	movl	%esp, %ebp
65	pushl	%ebx
66	call	.L2
67.L2:	popl	%ebx
68	addl	$_GLOBAL_OFFSET_TABLE_+[.-.L2], %ebx
69