X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=gcc%2Fconfig%2Farc%2Finitfini.c;h=d7514133a36d3253137754df0f156dfc58e3dddc;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=dd52be98ffda35dbb3b47fd9498f783601722f99;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/gcc/config/arc/initfini.c b/gcc/config/arc/initfini.c index dd52be98..d7514133 100644 --- a/gcc/config/arc/initfini.c +++ b/gcc/config/arc/initfini.c @@ -1,33 +1,28 @@ /* .init/.fini section handling + C++ global constructor/destructor handling. This file is based on crtstuff.c, sol2-crti.asm, sol2-crtn.asm. -Copyright (C) 1995, 1997, 1998 Free Software Foundation, Inc. +Copyright (C) 1995, 1997, 1998, 2009 Free Software Foundation, Inc. -This file is part of GNU CC. +This file is part of GCC. -GNU CC is free software; you can redistribute it and/or modify +GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) +the Free Software Foundation; either version 3, or (at your option) any later version. -In addition to the permissions in the GNU General Public License, the -Free Software Foundation gives you unlimited permission to link the -compiled version of this file into combinations with other programs, -and to distribute those combinations without any restriction coming -from the use of this file. (The General Public License restrictions -do apply in other respects; for example, they cover modification of -the file, and distribution when not linked into a combine -executable.) - -GNU CC is distributed in the hope that it will be useful, +GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ +Under Section 7 of GPL version 3, you are granted additional +permissions described in the GCC Runtime Library Exception, version +3.1, as published by the Free Software Foundation. + +You should have received a copy of the GNU General Public License and +a copy of the GCC Runtime Library Exception along with this program; +see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +. */ /* Declare a pointer to void function type. */ typedef void (*func_ptr) (void); @@ -66,11 +61,11 @@ static func_ptr __DTOR_LIST__[1] __attribute__ ((section (".dtors"))) refers to one particular associated `__DTOR_LIST__' which belongs to the same particular root executable or shared library file. */ -static void __do_global_dtors () +static void __do_global_dtors (void) asm ("__do_global_dtors") __attribute__ ((section (".text"))); static void -__do_global_dtors () +__do_global_dtors (void) { func_ptr *p; for (p = __DTOR_LIST__ + 1; *p; p++) @@ -125,11 +120,11 @@ static func_ptr __DTOR_END__[1] __attribute__ ((section (".dtors"))) /* Run all global constructors for the program. Note that they are run in reverse order. */ -static void __do_global_ctors () +static void __do_global_ctors (void) asm ("__do_global_ctors") __attribute__ ((section (".text"))); static void -__do_global_ctors () +__do_global_ctors (void) { func_ptr *p; for (p = __CTOR_END__ - 1; *p != (func_ptr) -1; p--)