~ubuntu-branches/ubuntu/utopic/eglibc/utopic

« back to all changes in this revision

Viewing changes to sysdeps/s390/s390-32/initfini.c

  • Committer: Package Import Robot
  • Author(s): Adam Conrad
  • Date: 2012-10-26 05:14:58 UTC
  • mfrom: (1.5.1) (4.4.22 experimental)
  • Revision ID: package-import@ubuntu.com-20121026051458-oryotr4i03ob5pab
Tags: 2.16-0ubuntu1
* Merge with unreleased 2.16 in Debian experimental, remaining changes:
  - Drop the Breaks line from libc6, which refers to a Debian transition
  - Remove the libc6 recommends on libc6-i686, which we don't build
  - Enable libc6{,-dev}-armel on armhf and libc6{-dev}-armhf on armel
  - Ship update-locale and validlocale in /usr/sbin in libc-bin
  - Don't build locales or locales-all in Ubuntu, we rely on langpacks
  - Heavily mangle the way we do service restarting on major upgrades
  - Use different MIN_KERNEL_SUPPORTED versions than Debian, due to
    buildd needs.  This should be universally bumped to 3.2.0 once all
    our buildds (including the PPA guests) are running precise kernels
  - Build i386 variants as -march=i686, build amd64 with -O3, and build
    ppc64 variants (both 64-bit and 32-bit) with -O3 -fno-tree-vectorize
  - Re-enable unsubmitted-ldconfig-cache-abi.diff and rebuild the cache
    on upgrades from previous versions that used a different constant
  - debian/patches/any/local-CVE-2012-3406.diff: switch to malloc when
    array grows too large to handle via alloca extension (CVE-2012-3406)
  - Build generic i386/i686 flavour with -mno-tls-direct-seg-refs
* Changes added/dropped with this merge while reducing our delta:
  - Stop building glibc docs from the eglibc source, and instead make
    the glibc-docs stub have a hard dependency on glibc-doc-reference
  - Remove outdated conflicts against ancient versions of ia32-libs
  - Drop the tzdata dependency from libc6, it's in required and minimal
  - Use gcc-4.7/g++-4.7 by default on all our supported architectures
  - Save our historical changelog as changelog.ubuntu in the source
  - Drop nscd's libaudit build-dep for now, as libaudit is in universe
  - Drop the unnecessary Breaks from libc6 to locales and locales-all
  - Ship xen's ld.so.conf.d snippet as /etc/ld.so.conf.d/libc6-xen.conf
* Disable hard failures on the test suite for the first upload to raring

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Special .init and .fini section support for S/390.
2
 
   Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
3
 
   This file is part of the GNU C Library.
4
 
 
5
 
   The GNU C Library is free software; you can redistribute it and/or
6
 
   modify it under the terms of the GNU Lesser General Public
7
 
   License as published by the Free Software Foundation; either
8
 
   version 2.1 of the License, or (at your option) any later version.
9
 
 
10
 
   In addition to the permissions in the GNU Lesser General Public
11
 
   License, the Free Software Foundation gives you unlimited
12
 
   permission to link the compiled version of this file with other
13
 
   programs, and to distribute those programs without any restriction
14
 
   coming from the use of this file. (The GNU Lesser General Public
15
 
   License restrictions do apply in other respects; for example, they
16
 
   cover modification of the file, and distribution when not linked
17
 
   into another program.)
18
 
 
19
 
   Note that people who make modified versions of this file are not
20
 
   obligated to grant this special exception for their modified
21
 
   versions; it is their choice whether to do so. The GNU Lesser
22
 
   General Public License gives permission to release a modified
23
 
   version without this exception; this exception also makes it
24
 
   possible to release a modified version which carries forward this
25
 
   exception.
26
 
 
27
 
   The GNU C Library is distributed in the hope that it will be useful,
28
 
   but WITHOUT ANY WARRANTY; without even the implied warranty of
29
 
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
30
 
   Lesser General Public License for more details.
31
 
 
32
 
   You should have received a copy of the GNU Lesser General Public
33
 
   License along with the GNU C Library; if not, write to the Free
34
 
   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
35
 
   02111-1307 USA.  */
36
 
 
37
 
/* This file is compiled into assembly code which is then munged by a sed
38
 
   script into two files: crti.s and crtn.s.
39
 
 
40
 
   * crti.s puts a function prologue at the beginning of the
41
 
   .init and .fini sections and defines global symbols for
42
 
   those addresses, so they can be called as functions.
43
 
 
44
 
   * crtn.s puts the corresponding function epilogues
45
 
   in the .init and .fini sections. */
46
 
 
47
 
__asm__ ("\
48
 
\n\
49
 
#include \"defs.h\"\n\
50
 
\n\
51
 
/*@HEADER_ENDS*/\n\
52
 
\n\
53
 
/*@TESTS_BEGIN*/\n\
54
 
\n\
55
 
/*@TESTS_END*/\n\
56
 
\n\
57
 
/*@_init_PROLOG_BEGINS*/\n\
58
 
\n\
59
 
        .section .init\n\
60
 
#NO_APP\n\
61
 
        .align 4\n\
62
 
.globl _init\n\
63
 
        .type    _init,@function\n\
64
 
_init:\n\
65
 
#       leaf function           0\n\
66
 
#       automatics              0\n\
67
 
#       outgoing args           0\n\
68
 
#       need frame pointer      0\n\
69
 
#       call alloca             0\n\
70
 
#       has varargs             0\n\
71
 
#       incoming args (stack)   0\n\
72
 
#       function length         36\n\
73
 
        STM     6,15,24(15)\n\
74
 
        BRAS    13,.LTN1_0\n\
75
 
.LT1_0:\n\
76
 
.LC14:\n\
77
 
        .long   __gmon_start__@GOT\n\
78
 
.LC15:\n\
79
 
        .long   _GLOBAL_OFFSET_TABLE_-.LT1_0\n\
80
 
.LTN1_0:\n\
81
 
        LR      1,15\n\
82
 
        AHI     15,-96\n\
83
 
        ST      1,0(15)\n\
84
 
        L       12,.LC15-.LT1_0(13)\n\
85
 
        AR      12,13\n\
86
 
        L     1,.LC14-.LT1_0(13)\n\
87
 
        L     1,0(1,12)\n\
88
 
        LTR   1,1\n\
89
 
        JE    .L22\n\
90
 
        BASR  14,1\n\
91
 
.L22:\n\
92
 
#APP\n\
93
 
        .align 4,0x07\n\
94
 
        END_INIT\n\
95
 
\n\
96
 
/*@_init_PROLOG_ENDS*/\n\
97
 
\n\
98
 
/*@_init_EPILOG_BEGINS*/\n\
99
 
        .align 4\n\
100
 
        .section .init\n\
101
 
#NO_APP\n\
102
 
        .align 4\n\
103
 
        L       4,152(15)\n\
104
 
        LM      6,15,120(15)\n\
105
 
        BR      4\n\
106
 
#APP\n\
107
 
        END_INIT\n\
108
 
\n\
109
 
/*@_init_EPILOG_ENDS*/\n\
110
 
\n\
111
 
/*@_fini_PROLOG_BEGINS*/\n\
112
 
        .section .fini\n\
113
 
#NO_APP\n\
114
 
        .align 4\n\
115
 
.globl _fini\n\
116
 
        .type    _fini,@function\n\
117
 
_fini:\n\
118
 
#       leaf function           0\n\
119
 
#       automatics              0\n\
120
 
#       outgoing args           0\n\
121
 
#       need frame pointer      0\n\
122
 
#       call alloca             0\n\
123
 
#       has varargs             0\n\
124
 
#       incoming args (stack)   0\n\
125
 
#       function length         30\n\
126
 
        STM     6,15,24(15)\n\
127
 
        BRAS    13,.LTN2_0\n\
128
 
.LT2_0:\n\
129
 
.LC17:\n\
130
 
        .long   _GLOBAL_OFFSET_TABLE_-.LT2_0\n\
131
 
.LTN2_0:\n\
132
 
        LR      1,15\n\
133
 
        AHI     15,-96\n\
134
 
        ST      1,0(15)\n\
135
 
        L       12,.LC17-.LT2_0(13)\n\
136
 
        AR      12,13\n\
137
 
#APP\n\
138
 
        .align 4,0x07\n\
139
 
        END_FINI\n\
140
 
\n\
141
 
/*@_fini_PROLOG_ENDS*/\n\
142
 
\n\
143
 
/*@_fini_EPILOG_BEGINS*/\n\
144
 
        .align 4\n\
145
 
        .section .fini\n\
146
 
#NO_APP\n\
147
 
        .align 4\n\
148
 
        L       4,152(15)\n\
149
 
        LM      6,15,120(15)\n\
150
 
        BR      4\n\
151
 
#APP\n\
152
 
        END_FINI\n\
153
 
\n\
154
 
/*@_fini_EPILOG_ENDS*/\n\
155
 
\n\
156
 
/*@TRAILER_BEGINS*/\
157
 
");