dllprt0.as 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. |
  2. | $Id: dllprt0.as,v 1.1.2.4 2001/08/01 13:26:17 pierre Exp $
  3. | This file is part of the Free Pascal run time library.
  4. | Copyright (c) 2001 by Pierre Muller
  5. |
  6. | See the file COPYING.FPC, included in this distribution,
  7. | for details about the copyright.
  8. |
  9. | This program is distributed in the hope that it will be useful,
  10. | but WITHOUT ANY WARRANTY;without even the implied warranty of
  11. | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  12. |
  13. |**********************************************************************}
  14. |
  15. | Linux m68k ELF shared library startup code for Free Pascal
  16. |
  17. .file "dllprt0.as"
  18. .text
  19. .globl _startlib
  20. .type _startlib,@function
  21. _startlib:
  22. .globl FPC_LIB_START
  23. .type FPC_LIB_START,@function
  24. FPC_LIB_START:
  25. |
  26. | The args and envs are not tested yet
  27. |
  28. move.l (%sp)+, %d0
  29. lea 4(%sp,%d0*4),%a0
  30. move.l %a0, U_SYSLINUX_ENVP
  31. move.l %sp,U_SYSLINUX_ARGV
  32. move.l %d0,U_SYSLINUX_ARGC
  33. jsr PASCALMAIN
  34. rts
  35. .globl _haltproc
  36. .type _haltproc,@function
  37. haltproc:
  38. moveq.l #1,%d0
  39. move.w U_SYSLINUX_EXITCODE,%d1
  40. trap #0
  41. bra _haltproc
  42. .data
  43. .align 4
  44. .globl ___fpc_brk_addr
  45. ___fpc_brk_addr:
  46. .long 0
  47. |
  48. | $Log: dllprt0.as,v $
  49. | Revision 1.1.2.4 2001/08/01 13:26:17 pierre
  50. | * syntax adapted to GNU as
  51. |
  52. | Revision 1.1.2.3 2001/07/13 15:13:47 pierre
  53. | + add and fix some comments
  54. |
  55. | Revision 1.1.2.2 2001/07/13 15:04:35 pierre
  56. | * correct assembler error
  57. |
  58. | Revision 1.1.2.1 2001/07/13 15:03:02 pierre
  59. | + New file converted from i386 version
  60. |
  61. |