Pārlūkot izejas kodu

* declared external fpc_geteipasebx , with local suffix to avoid clashes.
Still not the whole potatoe though.


git-svn-id: trunk@17682 -

marco 14 gadi atpakaļ
vecāks
revīzija
f411f08629
1 mainītis faili ar 9 papildinājumiem un 5 dzēšanām
  1. 9 5
      rtl/linux/i386/si_prc.inc

+ 9 - 5
rtl/linux/i386/si_prc.inc

@@ -43,6 +43,10 @@ procedure PASCALMAIN; external name 'PASCALMAIN';
 var
 var
   dlexitproc: pointer;
   dlexitproc: pointer;
 
 
+{$ifdef FPC_PIC}
+function fpc_geteipasebxlocal : pointer; [external name 'fpc_geteipasebx'];
+{$endif}
+
 procedure _FPC_proc_start; assembler; nostackframe; public name '_start';
 procedure _FPC_proc_start; assembler; nostackframe; public name '_start';
 asm
 asm
   { First locate the start of the environment variables }
   { First locate the start of the environment variables }
@@ -57,7 +61,7 @@ asm
         pushl %ebx
         pushl %ebx
         pushl %ecx
         pushl %ecx
 	
 	
-	call fpc_geteipasebx
+	call fpc_geteipasebxlocal
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
 
 
 	movl  dlexitproc@GOT(%ebx),%ecx
 	movl  dlexitproc@GOT(%ebx),%ecx
@@ -86,7 +90,7 @@ asm
   { Save initial stackpointer }
   { Save initial stackpointer }
   {$ifdef FPC_PIC}
   {$ifdef FPC_PIC}
         pushl %ebx
         pushl %ebx
-        call  fpc_geteipasebx
+        call  fpc_geteipasebxlocal
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
 	movl  initialstkptr@GOT(%ebx),%ebx
 	movl  initialstkptr@GOT(%ebx),%ebx
   	movl  %esp,(%ebx)
   	movl  %esp,(%ebx)
@@ -104,7 +108,7 @@ asm
 
 
 .Lhaltproc:
 .Lhaltproc:
   {$ifdef FPC_PIC}
   {$ifdef FPC_PIC}
-        call  fpc_geteipasebx
+        call  fpc_geteipasebxlocal
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
         addl  $_GLOBAL_OFFSET_TABLE_,%ebx
 	movl  dlexitproc@GOT(%ebx),%eax
 	movl  dlexitproc@GOT(%ebx),%eax
 	movl  (%eax),%eax
 	movl  (%eax),%eax
@@ -118,7 +122,7 @@ asm
   movl    syscall_nr_exit_group,%eax
   movl    syscall_nr_exit_group,%eax
 
 
 {$ifdef FPC_PIC}
 {$ifdef FPC_PIC}
-  call    fpc_geteipasebx
+  call    fpc_geteipasebxlocal
   addl    $_GLOBAL_OFFSET_TABLE_,%ebx
   addl    $_GLOBAL_OFFSET_TABLE_,%ebx
   movl    ExitCode@GOT(%ebx),%ebx
   movl    ExitCode@GOT(%ebx),%ebx
  {$if sizeof(ExitCode)=2}
  {$if sizeof(ExitCode)=2}
@@ -138,7 +142,7 @@ asm
   movl    syscall_nr_exit,%eax
   movl    syscall_nr_exit,%eax
 
 
 {$ifdef FPC_PIC}
 {$ifdef FPC_PIC}
-  call    fpc_geteipasebx
+  call    fpc_geteipasebxlocal
   addl    $_GLOBAL_OFFSET_TABLE_,%ebx
   addl    $_GLOBAL_OFFSET_TABLE_,%ebx
   movl    ExitCode@GOT(%ebx),%ebx
   movl    ExitCode@GOT(%ebx),%ebx
  {$if sizeof(ExitCode)=2}
  {$if sizeof(ExitCode)=2}