Browse Source

* cprt0.as is not needed, since we link to libc always.

git-svn-id: branches/targetandroid@23286 -
yury 12 years ago
parent
commit
97dd19b04f
4 changed files with 0 additions and 259 deletions
  1. 0 2
      .gitattributes
  2. 0 3
      rtl/android/Makefile.fpc
  3. 0 151
      rtl/android/arm/cprt0.as
  4. 0 103
      rtl/android/i386/cprt0.as

+ 0 - 2
.gitattributes

@@ -7219,10 +7219,8 @@ rtl/amiga/tthread.inc svneol=native#text/plain
 rtl/amiga/varutils.pp svneol=native#text/plain
 rtl/android/Makefile svneol=native#text/plain
 rtl/android/Makefile.fpc svneol=native#text/plain
-rtl/android/arm/cprt0.as svneol=native#text/plain
 rtl/android/arm/dllprt0.as svneol=native#text/plain
 rtl/android/arm/prt0.as svneol=native#text/plain
-rtl/android/i386/cprt0.as svneol=native#text/plain
 rtl/android/i386/dllprt0.as svneol=native#text/plain
 rtl/android/i386/prt0.as svneol=native#text/plain
 rtl/android/jvm/Makefile svneol=native#text/plain

+ 0 - 3
rtl/android/Makefile.fpc

@@ -110,9 +110,6 @@ prt0$(OEXT) : $(ARCH)/prt0.as
 dllprt0$(OEXT) : $(ARCH)/dllprt0.as
         $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)dllprt0$(OEXT) $(ARCH)/dllprt0.as
 
-cprt0$(OEXT) : $(ARCH)/cprt0.as
-        $(AS) $(ASTARGET) -o $(UNITTARGETDIRPREFIX)cprt0$(OEXT) $(ARCH)/cprt0.as
-
 #
 # $(SYSTEMUNIT) Units ($(SYSTEMUNIT), Objpas, Strings)
 #

+ 0 - 151
rtl/android/arm/cprt0.as

@@ -1,151 +0,0 @@
-/* Startup code for ARM & ELF
-   Copyright (C) 1995, 1996, 1997, 1998, 2001, 2002 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 Lesser General Public
-   License as published by the Free Software Foundation; either
-   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,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Lesser General Public License for more details.
-
-   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
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
-
-/* This is the canonical entry point, usually the first thing in the text
-   segment.
-
-        Note that the code in the .init section has already been run.
-        This includes _init and _libc_init
-
-
-        At this entry point, most registers' values are unspecified, except:
-
-   a1           Contains a function pointer to be registered with `atexit'.
-                This is how the dynamic linker arranges to have DT_FINI
-                functions called for shared libraries that have been loaded
-                before this code runs.
-
-   sp           The stack contains the arguments and environment:
-                0(sp)                   argc
-                4(sp)                   argv[0]
-                ...
-                (4*argc)(sp)            NULL
-                (4*(argc+1))(sp)        envp[0]
-                ...
-                                        NULL
-*/
-
-        .text
-        .globl _start
-        .type _start,#function
-_start:
-        /* Clear the frame pointer since this is the outermost frame.  */
-        mov fp, #0
-        ldmia   sp!, {a2}
-
-        /* Pop argc off the stack and save a pointer to argv */
-        ldr ip,=operatingsystem_parameter_argc
-        ldr a3,=operatingsystem_parameter_argv
-        str a2,[ip]
-
-        /* calc envp */
-        add a4,a2,#1
-        add a4,sp,a4,LSL #2
-        ldr ip,=operatingsystem_parameter_envp
-
-        str sp,[a3]
-        str a4,[ip]
-
-        /* Save initial stackpointer */
-        ldr ip,=__stkptr
-        str sp,[ip]
-
-        /* Fetch address of fini */
-        /*fixme: ldr ip, =_fini */
-        mov ip, #0
-
-        /* argc already loaded to a2*/
-
-        /* load argv */
-        mov a3, sp
-
-        /* Push stack limit */
-        str a3, [sp, #-4]!
-
-        /* Push rtld_fini */
-        str a1, [sp, #-4]!
-
-        /* Set up the other arguments in registers */
-        ldr a1, =PASCALMAIN
-        /* fixme: init ldr a4, =_init */
-        mov a4, #0
-
-        /* Push fini */
-        str ip, [sp, #-4]!
-
-        /* check that this is the correct function! */
-        /* __libc_init (main, argc, argv, init, fini, rtld_fini, stack_end) */
-
-        /* Let the libc call main and exit with its return code.  */
-        bl __libc_init
-
-        /* should never get here....*/
-        bl abort
-
-        .globl  _haltproc
-    .type   _haltproc,#function
-_haltproc:
-        ldr r0,=operatingsystem_result
-        ldrb r0,[r0]
-        swi 0x900001
-        b _haltproc
-
-        .globl  _haltproc_eabi
-        .type   _haltproc_eabi,#function
-_haltproc_eabi:
-        ldr r0,=operatingsystem_result
-        ldrb r0,[r0]
-        mov r7,#248
-        swi 0x0
-        b _haltproc_eabi
-
-        /* Define a symbol for the first piece of initialized data.  */
-        .data
-        .globl __data_start
-__data_start:
-        .long 0
-        .weak data_start
-        data_start = __data_start
-
-.bss
-        .comm __stkptr,4
-
-        .comm operatingsystem_parameter_envp,4
-        .comm operatingsystem_parameter_argc,4
-        .comm operatingsystem_parameter_argv,4
-
-        .section ".comment"
-        .byte 0
-        .ascii "generated by FPC http://www.freepascal.org\0"
-
-/* We need this stuff to make gdb behave itself, otherwise
-   gdb will chokes with SIGILL when trying to debug apps.
-*/
-        .section ".note.ABI-tag", "a"
-        .align 4
-        .long 1f - 0f
-        .long 3f - 2f
-        .long  1
-0:      .asciz "GNU"
-1:      .align 4
-2:      .long 0
-        .long 2,0,0
-3:      .align 4
-
-.section .note.GNU-stack,"",%progbits

+ 0 - 103
rtl/android/i386/cprt0.as

@@ -1,103 +0,0 @@
-#
-#   This file is part of the Free Pascal run time library.
-#   Copyright (c) 1999-2000 by Michael Van Canneyt and Peter Vreman
-#   members of the Free Pascal development team.
-#
-#   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 ELF startup code for Free Pascal
-#
-#
-# Stack layout at program start:
-#
-#         nil
-#         envn
-#         ....
-#         ....           ENVIRONMENT VARIABLES
-#         env1
-#         env0
-#         nil
-#         argn
-#         ....
-#         ....           COMMAND LINE OPTIONS
-#         arg1
-#         arg0
-#         argc <--- esp
-#
-
-        .file   "cprt0.as"
-        .text
-        .globl  _start
-        .type   _start,@function
-_start:
-        /* First locate the start of the environment variables */
-        popl    %ecx                    /* Get argc in ecx */
-        movl    %esp,%ebx               /* Esp now points to the arguments */
-        leal    4(%esp,%ecx,4),%eax     /* The start of the environment is: esp+4*eax+8 */
-        andl    $0xfffffff8,%esp        /* Align stack */
-
-        movl    %eax,operatingsystem_parameter_envp    /* Move the environment pointer */
-        movl    %ecx,operatingsystem_parameter_argc    /* Move the argument counter    */
-        movl    %ebx,operatingsystem_parameter_argv    /* Move the argument pointer    */
-
-        /* no libc __environ */
-
-        pushl   %eax
-        pushl   %ebx
-        pushl   %ecx
-
-        call    __libc_init             /* init libc */
-        pushl   $0                      /* the onexit() function is always nil with bionic */
-        call    __cxa_finalize
-
-        popl    %eax
-        popl    %eax
-
-        /* Save initial stackpointer */
-        movl    %esp,__stkptr
-
-        xorl    %ebp,%ebp
-        call    PASCALMAIN              /* start the program */
-
-        .globl _haltproc
-        .type _haltproc,@function
-_haltproc:
-_haltproc2:             # GAS <= 2.15 bug: generates larger jump if a label is exported
-        movzwl  operatingsystem_result,%ebx
-        pushl   %ebx
-        call    exit
-        xorl    %eax,%eax
-        incl    %eax                    /* eax=1, exit call */
-        popl    %ebx
-        int     $0x80
-        jmp     _haltproc2
-
-.data
-
-.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
-
-.section .note.GNU-stack,"",%progbits