1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- /*
- This file is part of the Free Pascal run time library.
- Copyright (c) 2013 by Free Pascal development team
- Startup code for elf32-sparc
- See the file COPYING.FPC, included in this distribution,
- for details about the copyright.
- This program 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.
- */
- .globl FPC_SHARED_LIB_START
- .type FPC_SHARED_LIB_START,#function
- FPC_SHARED_LIB_START:
- save %o6,-96,%o6
- call 1f
- sethi %hi(_GLOBAL_OFFSET_TABLE_+4),%l7
- 1: or %l7,%lo(_GLOBAL_OFFSET_TABLE_+8),%l7
- add %l7,%o7,%l7
- sethi %hi(operatingsystem_parameter_argc),%o0
- or %o0,%lo(operatingsystem_parameter_argc),%o0
- ld [%o0+%l7],%o1
- st %i0,[%o1]
- sethi %hi(operatingsystem_parameter_argv),%o0
- or %o0,%lo(operatingsystem_parameter_argv),%o0
- ld [%o0+%l7],%o1
- st %i1,[%o1]
- sethi %hi(operatingsystem_parameter_envp),%o0
- or %o0,%lo(operatingsystem_parameter_envp),%o0
- ld [%o0+%l7],%o1
- st %i2,[%o1]
- sethi %hi(__stkptr),%o0
- or %o0,%lo(__stkptr),%o0
- ld [%o0+%l7],%o1
- st %sp,[%o1]
- call PASCALMAIN
- nop
- ret
- restore
- .size FPC_SHARED_LIB_START,.-FPC_SHARED_LIB_START
- .globl _haltproc
- .type _haltproc,#function
- _haltproc:
- mov 188,%g1
- ta 16
- unimp
- .size _haltproc,.-_haltproc
- .comm __stkptr,4
- .comm __dl_fini,4
- .comm operatingsystem_parameter_envp,4
- .comm operatingsystem_parameter_argc,4
- .comm operatingsystem_parameter_argv,4
- .section .note.GNU-stack,"",@progbits
|