1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- |
- | $Id: dllprt0.as,v 1.1.2.4 2001/08/01 13:26:17 pierre Exp $
- | This file is part of the Free Pascal run time library.
- | Copyright (c) 2001 by Pierre Muller
- |
- | 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.
- |
- |**********************************************************************}
- |
- | Linux m68k ELF shared library startup code for Free Pascal
- |
- .file "dllprt0.as"
- .text
- .globl _startlib
- .type _startlib,@function
- _startlib:
- .globl FPC_SHARED_LIB_START
- .type FPC_SHARED_LIB_START,@function
- # This is a normal C function with args (argc,argv,envp)
- FPC_SHARED_LIB_START:
- link.w %a6,#0
- move.l 8(%fp),%d0
- move.l %d0,operatingsystem_parameter_argc
- move.l 12(%fp),%d0
- move.l %d0,operatingsystem_parameter_argv
- move.l 16(%fp),%d0
- move.l %d0,operatingsystem_parameter_envp
- jsr PASCALMAIN
- unlk %a6
- rts
- .size FPC_SHARED_LIB_START,.-FPC_SHARED_LIB_START
- .globl _haltproc
- .type _haltproc,@function
- _haltproc:
- moveq.l #1,%d0
- move.w operatingsystem_result,%d1
- trap #0
- bra _haltproc
- .size _haltproc,.-_haltproc
- .data
- .align 4
- .globl ___fpc_brk_addr
- ___fpc_brk_addr:
- .long 0
- .bss
- .type __stkptr,@object
- .size __stkptr,4
- .global __stkptr
- __stkptr:
- .skip 4
- .type operatingsystem_parameters,@object
- .size operatingsystem_parameters,12
- operatingsystem_parameters:
- .skip 3*4
- .global operatingsystem_parameter_envp
- .global operatingsystem_parameter_argc
- .global operatingsystem_parameter_argv
- .set operatingsystem_parameter_envp,operatingsystem_parameters+0
- .set operatingsystem_parameter_argc,operatingsystem_parameters+4
- .set operatingsystem_parameter_argv,operatingsystem_parameters+8
|