2
0
Эх сурвалжийг харах

- RTL, Linux/FreeBSD shared library startup: removed FPC_SHARED_LIB_EXIT label, it is a leftover from times when library startup code was erroneously halting owning process on exit.

git-svn-id: trunk@25737 -
sergei 11 жил өмнө
parent
commit
a3364a4b80

+ 0 - 3
rtl/freebsd/i386/dllprt0.as

@@ -75,9 +75,6 @@ FPC_SHARED_LIB_START:
 .type _haltproc,@function
 
 _haltproc:
-	.globl FPC_SHARED_LIB_EXIT
-	.type FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
         call    FPC_LIB_EXIT@PLT
            mov $1,%eax  
            movzwl operatingsystem_result,%ebx

+ 0 - 3
rtl/freebsd/x86_64/dllprt0.as

@@ -62,9 +62,6 @@ FPC_SHARED_LIB_START:
 /* this routine is only called when the halt() routine of the RTL embedded in
   the shared library is called */
 _haltproc:
-	.globl FPC_SHARED_LIB_EXIT
-	.type FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
         call    FPC_LIB_EXIT@PLT
 	movl    $1,%eax                 /* exit syscall */
         movq    operatingsystem_result(%rip),%rbx

+ 0 - 3
rtl/linux/i386/dllprt0.as

@@ -48,9 +48,6 @@ FPC_SHARED_LIB_START:
         .type   _haltproc,@function
 _haltproc:
 _haltproc2:             # GAS <= 2.15 bug: generates larger jump if a label is exported
-        .globl  FPC_SHARED_LIB_EXIT
-        .type   FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
         subl    $12, %esp               /* align back to 16 bytes if it was before the call */
 	call	lib_exit
         xorl    %eax,%eax

+ 0 - 3
rtl/linux/m68k/dllprt0.as

@@ -36,9 +36,6 @@ FPC_SHARED_LIB_START:
         .globl  _haltproc
         .type   _haltproc,@function
 haltproc:
-        .globl  FPC_SHARED_LIB_EXIT
-        .type   FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
         moveq.l   #1,%d0
         move.w    U_SYSLINUX_EXITCODE,%d1
         trap      #0

+ 1 - 3
rtl/linux/mips/dllprt0.as

@@ -133,11 +133,8 @@ _start:
 	.size 	_start, .-_start
 
 	.globl  _haltproc
-    .globl  FPC_SHARED_LIB_EXIT
 	.ent	_haltproc
 	.type   _haltproc,@function
-    .type  FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
 _haltproc:
         /* TODO: need to check whether __dl_fini is non-zero and call the function pointer in case */
 
@@ -156,3 +153,4 @@ _haltproc:
         .comm operatingsystem_parameter_argc,4
         .comm operatingsystem_parameter_argv,4
 
+.section .note.GNU-stack,"",@progbits

+ 0 - 3
rtl/linux/powerpc/dllprt0.as

@@ -48,10 +48,7 @@ FPC_SHARED_LIB_START:
     blr
 
     .globl  _haltproc
-    .globl  FPC_SHARED_LIB_EXIT
-     .type  FPC_SHARED_LIB_EXIT,@function
      .type   _haltproc,@function
-FPC_SHARED_LIB_EXIT:
 _haltproc:
     lis     11,operatingsystem_result@ha
     lwz      3,operatingsystem_result@l(3)

+ 0 - 1
rtl/linux/powerpc64/dllprt0.as

@@ -359,7 +359,6 @@ FUNCTION_PROLOG FPC_SHARED_LIB_START
 /* this routine is only called when the halt() routine of the RTL embedded in
    the shared library is called */
 FUNCTION_PROLOG _haltproc
-FUNCTION_PROLOG FPC_SHARED_LIB_EXIT
     /* exit_group call */
     LOAD_64BIT_VAL 3, operatingsystem_result
     lwz     3, 0(3)

+ 0 - 3
rtl/linux/x86_64/dllprt0.as

@@ -68,9 +68,6 @@ _startlib:
         .globl  _haltproc
         .type   _haltproc,@function
 _haltproc:
-	.globl FPC_SHARED_LIB_EXIT
-	.type FPC_SHARED_LIB_EXIT,@function
-FPC_SHARED_LIB_EXIT:
         movl    $231,%eax                 /* exit_group call */
         movq    operatingsystem_result@GOTPCREL(%rip),%rbx
         movzwl  (%rbx),%edi