1/* Specialized code needed to support construction and destruction of 2 file-scope objects in C++ and Java code, and to support exception handling. 3 Copyright (C) 2005 Free Software Foundation, Inc. 4 Contributed by Analog Devices. 5 6This file is part of GCC. 7 8GCC is free software; you can redistribute it and/or modify 9it under the terms of the GNU General Public License as published by 10the Free Software Foundation; either version 2, or (at your option) 11any later version. 12 13GCC is distributed in the hope that it will be useful, 14but WITHOUT ANY WARRANTY; without even the implied warranty of 15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16GNU General Public License for more details. 17 18You should have received a copy of the GNU General Public License 19along with GCC; see the file COPYING. If not, write to 20the Free Software Foundation, 51 Franklin Street, Fifth Floor, 21Boston, MA 02110-1301, USA. */ 22 23/* As a special exception, if you link this library with files 24 compiled with GCC to produce an executable, this does not cause 25 the resulting executable to be covered by the GNU General Public License. 26 This exception does not however invalidate any other reasons why 27 the executable file might be covered by the GNU General Public License. */ 28 29/* 30 * This file just supplies function prologues for the .init and .fini 31 * sections. It is linked in before crtbegin.o. 32 */ 33 34 .file "crti.o" 35 .ident "GNU C crti.o" 36 37 .section .init 38 .globl __init 39 .type __init,@function 40__init: 41#if defined __ID_SHARED_LIB__ 42 [--SP] = P5; 43#endif 44 LINK 12; 45#if defined __ID_SHARED_LIB__ 46 P5 = [P5 + _current_shared_library_p5_offset_] 47#endif 48 .section .fini 49 .globl __fini 50 .type __fini,@function 51__fini: 52#if defined __ID_SHARED_LIB__ 53 [--SP] = P5; 54#endif 55 LINK 12; 56#if defined __ID_SHARED_LIB__ 57 P5 = [P5 + _current_shared_library_p5_offset_] 58#endif 59