From 7e3f69ad02b8274d56d769f61ad24b0f6f290f28 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 6 Apr 2000 04:56:46 +0000 Subject: [PATCH] Not needed anymore. --- sysdeps/unix/sysv/linux/alpha/init-first.h | 27 --------------- sysdeps/unix/sysv/linux/arm/init-first.h | 55 ------------------------------ sysdeps/unix/sysv/linux/mips/init-first.h | 51 --------------------------- 3 files changed, 133 deletions(-) delete mode 100644 sysdeps/unix/sysv/linux/alpha/init-first.h delete mode 100644 sysdeps/unix/sysv/linux/arm/init-first.h delete mode 100644 sysdeps/unix/sysv/linux/mips/init-first.h diff --git a/sysdeps/unix/sysv/linux/alpha/init-first.h b/sysdeps/unix/sysv/linux/alpha/init-first.h deleted file mode 100644 index a3f5d8f..0000000 --- a/sysdeps/unix/sysv/linux/alpha/init-first.h +++ /dev/null @@ -1,27 +0,0 @@ -/* The job of this fragment it to find argc and friends for INIT. - This is done in one of two ways: either in the stack context - of program start, or having dlopen pass them in. */ - -#define SYSDEP_CALL_INIT(NAME, INIT) asm("\ - .weak _dl_starting_up - .globl " #NAME " - .ent " #NAME " -" #NAME ": - ldgp $29, 0($27) - .prologue 1 - .set at - /* Are we a dynamic libc being loaded into a static program? */ - lda $0, _dl_starting_up - beq $0, 1f - ldl $0, 0($0) - cmpeq $31, $0, $0 -1: stl $0, __libc_multiple_libcs - /* If so, argc et al are in a0-a2 already. Otherwise, load them. */ - bne $0, 2f - ldl $16, 0($30) - lda $17, 8($30) - s8addq $16, $17, $18 - addq $18, 8, $18 -2: br $31, " ASM_ALPHA_NG_SYMBOL_PREFIX #INIT "..ng - .set noat - .end " #NAME); diff --git a/sysdeps/unix/sysv/linux/arm/init-first.h b/sysdeps/unix/sysv/linux/arm/init-first.h deleted file mode 100644 index d68c368..0000000 --- a/sysdeps/unix/sysv/linux/arm/init-first.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Prepare arguments for library initialization function. - Copyright (C) 1997 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 - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. - - The GNU C Library 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* The job of this fragment it to find argc and friends for INIT. - This is done in one of two ways: either in the stack context - of program start, or having dlopen pass them in. - - */ - -#define SYSDEP_CALL_INIT(NAME, INIT) \ -void NAME (void* arg, ...) \ -{ \ - int argc; \ - char** argv; \ - char** envp; \ - /* The next variable is only here to work around a bug in gcc <= 2.7.2.2. \ - If the address would be taken inside the expression the optimizer \ - would try to be too smart and throws it away. Grrr. */ \ - int *dummy_addr = &_dl_starting_up; \ - \ - __libc_multiple_libcs = dummy_addr && !_dl_starting_up; \ - \ - if (!__libc_multiple_libcs) \ - { \ - /* The ... in the arg list above forces the gnu ARM compiler to \ - push r0, r1, r2, r3 onto the stack. This way we can get the address */ \ - argc = *(int*) (&arg+4); \ - argv = (char **) &arg + 5; \ - envp = &argv[argc+1]; \ - } \ - else /* the three were passed as arguments */ \ - { \ - argc = (int)arg; \ - argv = (char**)*(&arg + 1); \ - envp = (char**)*(&arg + 2); \ - } \ - \ - INIT (argc, argv, envp); \ -} diff --git a/sysdeps/unix/sysv/linux/mips/init-first.h b/sysdeps/unix/sysv/linux/mips/init-first.h deleted file mode 100644 index d8c2f38..0000000 --- a/sysdeps/unix/sysv/linux/mips/init-first.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Prepare arguments for library initialization function. - Copyright (C) 2000 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 - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. - - The GNU C Library 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -/* The job of this fragment it to find argc and friends for INIT. - This is done in one of two ways: either in the stack context - of program start, or having dlopen pass them in. */ - -#define SYSDEP_CALL_INIT(NAME, INIT) \ - asm(".weak _dl_starting_up\n\t" \ - ".globl " #NAME "\n\t" \ - ".ent " #NAME "\n" \ - #NAME ":\n\t" \ - ".set noreorder\n\t" \ - ".cpload $25\n\t" \ - ".set reorder\n\t" \ - /* Are we a dynamic libc being loaded into a static program? */ \ - "la $8, _dl_starting_up\n\t" \ - "beqz $8, 1f\n\t" \ - "lw $8, 0($8)\n\t" \ - "seq $8, $8, 0\n" \ - "1:\t" \ - "sw $8, __libc_multiple_libcs\n\t" \ - /* If so, argc et al are in a0-a2 already. Otherwise, load them. */ \ - "bnez $8, 2f\n\t" \ - "lw $4, 16($29)\n\t" \ - "addiu $5, $29, 20\n\t" \ - "sll $6, $4, 2\n\t" \ - "addiu $6, $6, 4\n\t" \ - "addu $6, $5, $6\n" \ - "2:\t" \ - "la $25, " #INIT "\n\t" \ - "jr $25\n\t" \ - ".end " #NAME "\n\t" \ - "3:\t" \ - ".size " #NAME ", 3b-" #NAME); -- 2.7.4