3 # Copyright
(C
) 1996, 2008, 2009 Free Software Foundation
, Inc.
4 # Written By Michael Meissner
6 #
This file is free software
; you can redistribute it and/or modify it
7 # under the terms of the GNU General
Public License as published by the
8 # Free Software Foundation
; either version 3, or (at your option) any
11 #
This file is distributed
in the hope that it will be useful
, but
12 # WITHOUT ANY WARRANTY
; without even the implied warranty of
13 # MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # General
Public License for more details.
16 # Under
Section 7 of GPL version
3, you are granted additional
17 # permissions described
in the GCC Runtime Library Exception
, version
18 #
3.1, as published by the Free Software Foundation.
20 # You should have received a copy of the GNU General
Public License
and
21 # a copy of the GCC Runtime Library Exception along with
this program
;
22 # see the files COPYING3
and COPYING.RUNTIME respectively. If
not, see
23 #
<http://www.gnu.
org/licenses
/>.
25 #
This file just supplies labeled starting points for the .got
* and other
26 # special sections. It is linked
in first before other modules.
28 .ident
"GNU C scrti.s"
37 .
section ".exception_ranges","aw"
41 # List of C
++ constructors
42 .
section ".ctors","aw"
44 .
type __CTOR_LIST__
,@object
47 # List of C
++ destructors
48 .
section ".dtors","aw"
50 .
type __DTOR_LIST__
,@object
53 # Head of _init function used for static constructors
58 _init: stwu
%r1
,-16(%r1
)
63 bl _GLOBAL_OFFSET_TABLE_
-4 # get the GOT address
66 # lwz
%r3
,_ex_shared0
@got(%r31
)
67 # lwz
%r4
,-8(%r3
) # _ex_register
or 0
74 # Head of _fini function used for static destructors
79 _fini: stwu
%r1
,-16(%r1
)
84 bl _GLOBAL_OFFSET_TABLE_
-4 # get the GOT address
87 # _environ
and its evil twin environ
, pointing to the environment
88 .
section ".sdata","aw"