From 26ecc33a0290293ff779f76ac0324381b6dfafda Mon Sep 17 00:00:00 2001 From: Andreas Schwab Date: Sun, 8 Jan 2012 11:14:07 +0100 Subject: Remove have-initfini and need-nopic-initfini --- csu/Makefile | 6 ------ csu/gmon-start.c | 16 +++------------- 2 files changed, 3 insertions(+), 19 deletions(-) (limited to 'csu') diff --git a/csu/Makefile b/csu/Makefile index 05bc0e47e5..a67919ef84 100644 --- a/csu/Makefile +++ b/csu/Makefile @@ -73,10 +73,6 @@ endif before-compile += $(objpfx)abi-tag.h generated += abi-tag.h -ifeq ($(have-initfini),yes) - -CPPFLAGS += -DHAVE_INITFINI - # These are the special initializer/finalizer files. They are always the # first and last file in the link. crti.o ... crtn.o define the global # "functions" _init and _fini to run the .init and .fini sections. @@ -129,8 +125,6 @@ $(objpfx)defs.h: $(objpfx)initfini.s endif -endif - extra-objs += abi-note.o init.o asm-CPPFLAGS += -I$(objpfx). diff --git a/csu/gmon-start.c b/csu/gmon-start.c index 7d585e135f..107153ff4e 100644 --- a/csu/gmon-start.c +++ b/csu/gmon-start.c @@ -1,5 +1,5 @@ /* Code to enable profiling at program startup. - Copyright (C) 1995,1996,1997,2000,2001,2002 Free Software Foundation, Inc. + Copyright (C) 1995,1996,1997,2000,2001,2002,2012 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -43,23 +43,14 @@ extern char etext[]; # endif #endif -#ifndef HAVE_INITFINI -/* This function gets called at startup by the normal constructor - mechanism. We link this file together with start.o to produce gcrt1.o, - so this constructor will be first in the list. */ - -extern void __gmon_start__ (void) __attribute__ ((constructor)); -#else -/* In ELF and COFF, we cannot use the normal constructor mechanism to call +/* We cannot use the normal constructor mechanism to call __gmon_start__ because gcrt1.o appears before crtbegin.o in the link. - Instead crti.o calls it specially (see initfini.c). */ + Instead crti.o calls it specially. */ extern void __gmon_start__ (void); -#endif void __gmon_start__ (void) { -#ifdef HAVE_INITFINI /* Protect from being called more than once. Since crti.o is linked into every shared library, each of their init functions will call us. */ static int called; @@ -68,7 +59,6 @@ __gmon_start__ (void) return; called = 1; -#endif /* Start keeping profiling records. */ __monstartup ((u_long) TEXT_START, (u_long) &etext); -- cgit 1.4.1