Browse Source

* fixed compile after exitcode size change

git-svn-id: trunk@6559 -
peter 18 years ago
parent
commit
d1d7c59244

+ 4 - 0
rtl/linux/i386/si_c.inc

@@ -92,7 +92,11 @@ end;
 procedure _FPC_libc_haltproc; assembler; nostackframe; public name '_haltproc';
 procedure _FPC_libc_haltproc; assembler; nostackframe; public name '_haltproc';
 asm
 asm
 .Lhaltproc:
 .Lhaltproc:
+{$if sizeof(ExitCode)=2}
   movzwl  ExitCode,%ebx
   movzwl  ExitCode,%ebx
+{$else}
+  mov     ExitCode,%ebx
+{$endif}
   pushl   %ebx
   pushl   %ebx
   call    libc_exit
   call    libc_exit
   xorl    %eax,%eax
   xorl    %eax,%eax

+ 4 - 0
rtl/linux/i386/si_c21.inc

@@ -100,7 +100,11 @@ end;
 
 
 procedure _FPC_libc21_haltproc; assembler; nostackframe; public name '_haltproc';
 procedure _FPC_libc21_haltproc; assembler; nostackframe; public name '_haltproc';
 asm
 asm
+{$if sizeof(ExitCode)=2}
   movzwl  ExitCode,%eax
   movzwl  ExitCode,%eax
+{$else}
+  mov     ExitCode,%eax
+{$endif}
 
 
   movl    libc21_fpc_ret,%edx         { return to libc }
   movl    libc21_fpc_ret,%edx         { return to libc }
   movl    libc21_fpc_ret_ebp,%ebp
   movl    libc21_fpc_ret_ebp,%ebp

+ 4 - 0
rtl/linux/i386/si_c21g.inc

@@ -131,7 +131,11 @@ end;
 
 
 procedure _FPC_libc21_gprof_haltproc; assembler; nostackframe; public name '_haltproc';
 procedure _FPC_libc21_gprof_haltproc; assembler; nostackframe; public name '_haltproc';
 asm
 asm
+{$if sizeof(ExitCode)=2}
   movzwl  ExitCode,%eax
   movzwl  ExitCode,%eax
+{$else}
+  mov     ExitCode,%eax
+{$endif}
 
 
   movl    libc21_fpc_ret,%edx         { return to libc }
   movl    libc21_fpc_ret,%edx         { return to libc }
   movl    libc21_fpc_ret_ebx,%ebx
   movl    libc21_fpc_ret_ebx,%ebx

+ 4 - 0
rtl/linux/i386/si_dll.inc

@@ -87,7 +87,11 @@ asm
 {$ifdef FPC_PIC}
 {$ifdef FPC_PIC}
   pushl   %ebx
   pushl   %ebx
   movl    ExitCode@GOT(%ebx),%ebx
   movl    ExitCode@GOT(%ebx),%ebx
+{$if sizeof(ExitCode)=2}
   movzwl  (%ebx),%ebx
   movzwl  (%ebx),%ebx
+{$else}
+  mov     (%ebx),%ebx
+{$endif}
 {$endif}
 {$endif}
   int     $0x80
   int     $0x80
   jmp     .Lhaltproc
   jmp     .Lhaltproc

+ 4 - 0
rtl/linux/i386/si_g.inc

@@ -89,7 +89,11 @@ end;
 procedure _FPC_proc_gprof_haltproc; assembler; nostackframe; public name '_haltproc';
 procedure _FPC_proc_gprof_haltproc; assembler; nostackframe; public name '_haltproc';
 asm
 asm
 .Lhaltproc:
 .Lhaltproc:
+{$if sizeof(ExitCode)=2}
   movzwl  ExitCode,%ebx
   movzwl  ExitCode,%ebx
+{$else}
+  mov     ExitCode,%ebx
+{$endif}
   pushl   %ebx
   pushl   %ebx
   call    libc_exit     { call libc exit, this will  write the gmon.out }
   call    libc_exit     { call libc exit, this will  write the gmon.out }
   movl    syscall_nr_exit_group,%eax
   movl    syscall_nr_exit_group,%eax

+ 8 - 0
rtl/linux/i386/si_prc.inc

@@ -70,10 +70,18 @@ procedure _FPC_proc_haltproc; assembler; nostackframe; public name '_haltproc';
 asm
 asm
 .Lhaltproc:
 .Lhaltproc:
   movl    syscall_nr_exit_group,%eax
   movl    syscall_nr_exit_group,%eax
+{$if sizeof(ExitCode)=2}  
   movzwl  ExitCode,%ebx
   movzwl  ExitCode,%ebx
+{$else}
+  mov     ExitCode,%ebx
+{$endif}
   int     $0x80
   int     $0x80
   movl    syscall_nr_exit,%eax
   movl    syscall_nr_exit,%eax
+{$if sizeof(ExitCode)=2}  
   movzwl  ExitCode,%ebx
   movzwl  ExitCode,%ebx
+{$else}
+  mov     ExitCode,%ebx
+{$endif}
   int     $0x80
   int     $0x80
   jmp     .Lhaltproc
   jmp     .Lhaltproc
 end;
 end;