190075Sobrien/* crtn.s for eabi 290075Sobrien Copyright (C) 1996, 2000 Free Software Foundation, Inc. 390075Sobrien Written By Michael Meissner 490075Sobrien 590075SobrienThis file is free software; you can redistribute it and/or modify it 690075Sobrienunder the terms of the GNU General Public License as published by the 790075SobrienFree Software Foundation; either version 2, or (at your option) any 890075Sobrienlater version. 990075Sobrien 1090075SobrienIn addition to the permissions in the GNU General Public License, the 1190075SobrienFree Software Foundation gives you unlimited permission to link the 1290075Sobriencompiled version of this file with other programs, and to distribute 1390075Sobrienthose programs without any restriction coming from the use of this 1490075Sobrienfile. (The General Public License restrictions do apply in other 1590075Sobrienrespects; for example, they cover modification of the file, and 1690075Sobriendistribution when not linked into another program.) 1790075Sobrien 1890075SobrienThis file is distributed in the hope that it will be useful, but 1990075SobrienWITHOUT ANY WARRANTY; without even the implied warranty of 2090075SobrienMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 2190075SobrienGeneral Public License for more details. 2290075Sobrien 2390075SobrienYou should have received a copy of the GNU General Public License 2490075Sobrienalong with this program; see the file COPYING. If not, write to 25169689Skanthe Free Software Foundation, 51 Franklin Street, Fifth Floor, 26169689SkanBoston, MA 02110-1301, USA. 2790075Sobrien 2890075Sobrien As a special exception, if you link this library with files 2990075Sobrien compiled with GCC to produce an executable, this does not cause 3090075Sobrien the resulting executable to be covered by the GNU General Public License. 3190075Sobrien This exception does not however invalidate any other reasons why 3290075Sobrien the executable file might be covered by the GNU General Public License. 3390075Sobrien 3490075Sobrien */ 3590075Sobrien 3690075Sobrien/* This file just supplies labeled ending points for the .got* and other 3790075Sobrien special sections. It is linked in last after other modules. */ 3890075Sobrien 3990075Sobrien .file "crtn.s" 4090075Sobrien .ident "GNU C crtn.s" 4190075Sobrien 42132718Skan#ifndef __powerpc64__ 4390075Sobrien .section ".got","aw" 4490075Sobrien .globl __GOT_END__ 4590075Sobrien .type __GOT_END__,@object 4690075Sobrien__GOT_END__: 4790075Sobrien 4890075Sobrien .section ".got1","aw" 4990075Sobrien .globl __GOT1_END__ 5090075Sobrien .type __GOT1_END__,@object 5190075Sobrien__GOT1_END__: 5290075Sobrien 5390075Sobrien .section ".got2","aw" 5490075Sobrien .globl __GOT2_END__ 5590075Sobrien .type __GOT2_END__,@object 5690075Sobrien__GOT2_END__: 5790075Sobrien 5890075Sobrien .section ".fixup","aw" 5990075Sobrien .globl __FIXUP_END__ 6090075Sobrien .type __FIXUP_END__,@object 6190075Sobrien__FIXUP_END__: 6290075Sobrien 6390075Sobrien .section ".ctors","aw" 6490075Sobrien .globl __CTOR_END__ 6590075Sobrien .type __CTOR_END__,@object 6690075Sobrien__CTOR_END__: 6790075Sobrien 6890075Sobrien .section ".dtors","aw" 6990075Sobrien .globl __DTOR_END__ 7090075Sobrien .type __DTOR_END__,@object 7190075Sobrien__DTOR_END__: 7290075Sobrien 7390075Sobrien .section ".sdata","aw" 7490075Sobrien .globl __SDATA_END__ 7590075Sobrien .type __SDATA_END__,@object 7690075Sobrien__SDATA_END__: 7790075Sobrien 7890075Sobrien .section ".sbss","aw",@nobits 7990075Sobrien .globl __SBSS_END__ 8090075Sobrien .type __SBSS_END__,@object 8190075Sobrien__SBSS_END__: 8290075Sobrien 8390075Sobrien .section ".sdata2","a" 8490075Sobrien .globl __SDATA2_END__ 8590075Sobrien .type __SDATA2_END__,@object 8690075Sobrien__SDATA2_END__: 8790075Sobrien 8890075Sobrien .section ".sbss2","a" 8990075Sobrien .globl __SBSS2_END__ 9090075Sobrien .type __SBSS2_END__,@object 9190075Sobrien__SBSS2_END__: 9290075Sobrien 9390075Sobrien .section ".gcc_except_table","aw" 9490075Sobrien .globl __EXCEPT_END__ 9590075Sobrien .type __EXCEPT_END__,@object 9690075Sobrien__EXCEPT_END__: 9790075Sobrien 9890075Sobrien .section ".eh_frame","aw" 9990075Sobrien .globl __EH_FRAME_END__ 10090075Sobrien .type __EH_FRAME_END__,@object 10190075Sobrien__EH_FRAME_END__: 10290075Sobrien .long 0 10390075Sobrien 10490075Sobrien/* Tail of __init function used for static constructors. */ 10590075Sobrien .section ".init","ax" 10690075Sobrien lwz 0,20(1) 10790075Sobrien mtlr 0 10890075Sobrien addi 1,1,16 10990075Sobrien blr 11090075Sobrien 11190075Sobrien/* Tail of __fini function used for static destructors. */ 11290075Sobrien .section ".fini","ax" 11390075Sobrien lwz 0,20(1) 11490075Sobrien mtlr 0 11590075Sobrien addi 1,1,16 11690075Sobrien blr 117132718Skan#endif 118