From bbb8bf360e021020c605468074f7f21fb72c59c3 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 4 Jan 2006 07:03:57 +0000 Subject: Bug 618, Thomas Chou: update crt to new 0.9.28 uClibc style --- libc/sysdeps/linux/nios/crt0.S | 57 ---------------------------------------- libc/sysdeps/linux/nios/crt1.S | 59 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 59 insertions(+), 57 deletions(-) delete mode 100644 libc/sysdeps/linux/nios/crt0.S create mode 100644 libc/sysdeps/linux/nios/crt1.S (limited to 'libc/sysdeps/linux/nios') diff --git a/libc/sysdeps/linux/nios/crt0.S b/libc/sysdeps/linux/nios/crt0.S deleted file mode 100644 index bbf4ede6a..000000000 --- a/libc/sysdeps/linux/nios/crt0.S +++ /dev/null @@ -1,57 +0,0 @@ -/* Copyright (C) 1991, 1992 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., 675 Mass Ave, -Cambridge, MA 02139, USA. */ - -#include -#include -#include "NM_Macros.S" -#define __ASSEMBLY__ -#include /* for REGWIN_SZ */ - - .global _start - .type __start,@function - .weak _init - .weak _fini - .type __uClibc_start_main,@function - .type __h_errno_location, @function - .type _stdio_init, @function - .type _stdio_term, @function - - .text - -_start: - nop - nop - - lds %o0,[%sp, (REGWIN_SZ / 4) + 0] // main's argc - lds %o1,[%sp, (REGWIN_SZ / 4) + 1] // main's argv - lds %o2,[%sp, (REGWIN_SZ / 4) + 2] // main's envp - - MOVIA %o3, _init@h - MOVIA %o4, _fini@h - MOVIA %o5, __uClibc_start_main@h - - call %o5 - nop - - - /* If that didn't kill us, ... */ -__exit: - MOVIP %g1, __NR_exit - trap 63 - \ No newline at end of file diff --git a/libc/sysdeps/linux/nios/crt1.S b/libc/sysdeps/linux/nios/crt1.S new file mode 100644 index 000000000..98777e831 --- /dev/null +++ b/libc/sysdeps/linux/nios/crt1.S @@ -0,0 +1,59 @@ +/* Copyright (C) 1991, 1992 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., 675 Mass Ave, +Cambridge, MA 02139, USA. */ + +#include +#include +#include "NM_Macros.S" +#define __ASSEMBLY__ +#include /* for REGWIN_SZ */ + + .global _start + .type __start,@function + .weak _init + .weak _fini + .type main,@function + .type __uClibc_main,@function + .type __h_errno_location, @function + .type _stdio_init, @function + .type _stdio_term, @function + + .text + +_start: + nop + nop + + MOVIA %o0, main@h + lds %o1,[%sp, (REGWIN_SZ / 4) + 0] // main's argc + lds %o2,[%sp, (REGWIN_SZ / 4) + 1] // main's argv + + MOVIA %o3, _init@h + MOVIA %o4, _fini@h + mov %o5, %i0 /* rtld_fini */ + mov %o6, %sp /* stack_end */ + MOVIA %o7, __uClibc_main@h + + call %o7 + nop + + + /* If that didn't kill us, ... */ +__exit: + MOVIP %g1, __NR_exit + trap 63 -- cgit v1.2.3