* several PC related fixes

This commit is contained in:
florian 2002-08-31 21:29:57 +00:00
parent f107ba3bbe
commit c8a3171dc9
3 changed files with 1976 additions and 1967 deletions

View File

@ -1,74 +1,77 @@
/* Startup code for programs linked with GNU libc. /* Startup code for programs linked with GNU libc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc. Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version. version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful, The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */ 02111-1307 USA. */
.section ".text" .section ".text"
.globl _start .globl _start
_start: _start:
/* Save the stack pointer, in case we're statically linked under Linux. */ /* Save the stack pointer, in case we're statically linked under Linux. */
mr 9,1 mr 9,1
/* Set up an initial stack frame, and clear the LR. */ /* Set up an initial stack frame, and clear the LR. */
clrrwi 1,1,4 clrrwi 1,1,4
li 0,0 li 0,0
stwu 1,-16(1) stwu 1,-16(1)
mtlr 0 mtlr 0
stw 0,0(1) stw 0,0(1)
bl PASCALMAIN bl PASCALMAIN
.globl _haltproc .globl _haltproc
.type _haltproc,@function .type _haltproc,@function
_haltproc: _haltproc:
li 0,1 /* exit call */ li 0,1 /* exit call */
lis 3,U_SYSTEM_EXITCODE@h lis 3,U_SYSTEM_EXITCODE@h
stw 3,U_SYSTEM_EXITCODE@l(3) stw 3,U_SYSTEM_EXITCODE@l(3)
sc sc
b _haltproc b _haltproc
/* Define a symbol for the first piece of initialized data. */ /* Define a symbol for the first piece of initialized data. */
.section ".data" .section ".data"
.globl __data_start .globl __data_start
__data_start: __data_start:
data_start: data_start:
.globl ___fpc_brk_addr /* heap management */ .globl ___fpc_brk_addr /* heap management */
.type ___fpc_brk_addr,@object .type ___fpc_brk_addr,@object
.size ___fpc_brk_addr,4 .size ___fpc_brk_addr,4
___fpc_brk_addr: ___fpc_brk_addr:
.long 0 .long 0
/* /*
$Log$ $Log$
Revision 1.7 2002-08-31 16:13:12 florian Revision 1.8 2002-08-31 21:29:57 florian
* made _start global * several PC related fixes
Revision 1.6 2002/08/31 14:02:23 florian Revision 1.7 2002/08/31 16:13:12 florian
* r3 renamed to 3 * made _start global
Revision 1.5 2002/08/31 14:01:28 florian Revision 1.6 2002/08/31 14:02:23 florian
* _haltproc to prt0.as added (Linux/PPC) * r3 renamed to 3
Revision 1.4 2002/08/31 13:11:11 florian Revision 1.5 2002/08/31 14:01:28 florian
* several fixes for Linux/PPC compilation * _haltproc to prt0.as added (Linux/PPC)
Revision 1.3 2002/08/19 21:19:15 florian Revision 1.4 2002/08/31 13:11:11 florian
* small fixes * several fixes for Linux/PPC compilation
Revision 1.2 2002/07/26 17:09:44 florian Revision 1.3 2002/08/19 21:19:15 florian
* log fixed * small fixes
Revision 1.1 2002/07/26 16:57:40 florian Revision 1.2 2002/07/26 17:09:44 florian
+ initial version, plain copy from glibc/sysdeps/powerpc/elf/start.S * log fixed
*/
Revision 1.1 2002/07/26 16:57:40 florian
+ initial version, plain copy from glibc/sysdeps/powerpc/elf/start.S
*/

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff