1# crtn.s for sysv4 2 3# Copyright (C) 1996-2019 Free Software Foundation, Inc. 4# Written By Michael Meissner 5# 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 9# later version. 10# 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. 15# 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. 19# 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/>. 24 25# This file just supplies labeled ending points for the .got* and other 26# special sections. It is linked in last after other modules. 27 28 .ident "GNU C scrtn.s" 29 30#ifndef __powerpc64__ 31# Default versions of exception handling register/deregister 32 .weak _ex_register 33 .weak _ex_deregister 34 .set _ex_register,0 35 .set _ex_deregister,0 36 37# End list of C++ constructors 38 .section ".ctors","aw" 39 .globl __CTOR_END__ 40 .type __CTOR_END__,@object 41__CTOR_END__: 42 43# End list of C++ destructors 44 .section ".dtors","aw" 45 .weak __DTOR_END__ 46 .type __DTOR_END__,@object 47__DTOR_END__: 48 49 .section ".text" 50 .globl _ex_text1 51_ex_text1: 52 53 .section ".exception_ranges","aw" 54 .globl _ex_range1 55_ex_range1: 56 57# Tail of _init used for static constructors 58 .section ".init","ax" 59 lwz %r0,16(%r1) 60 lwz %r31,12(%r1) 61 mtlr %r0 62 addi %r1,%r1,16 63 blr 64 65# Tail of _fini used for static destructors 66 .section ".fini","ax" 67 lwz %r0,16(%r1) 68 lwz %r31,12(%r1) 69 mtlr %r0 70 addi %r1,%r1,16 71 blr 72#endif 73