Curtis Hamilton 1 месяц назад
Родитель
Сommit
5f81c871a3
1 измененных файлов с 0 добавлено и 291 удалено
  1. 0 291
      rtl/freebsd/powerpc64/syscall.inc

+ 0 - 291
rtl/freebsd/powerpc64/syscall.inc

@@ -1,291 +0,0 @@
-{
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 2005 by Thomas Schatzl,
-    member of the Free Pascal development team.
-
-    Linux powerpc syscall wrapper implementation 
-
-    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.
-
- **********************************************************************}
-
-{ This variable is needed in syscall.inc assembler code }
-var
-  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
-{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
-
-{*****************************************************************************
-                     --- Main:The System Call Self ---
-*****************************************************************************}
-
-function FpSysCall(sysnr:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL0'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-function FpSysCall(sysnr,param1:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL1'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-function FpSysCall(sysnr,param1,param2:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL2'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  mr r4, r5
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-
-function FpSysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL3'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  mr r4, r5
-  mr r5, r6
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-
-function FpSysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL4'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  mr r4, r5
-  mr r5, r6
-  mr r6, r7
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-
-function FpSysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL5'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  mr r4, r5
-  mr r5, r6
-  mr r6, r7
-  mr r7, r8
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-
-function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL6'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-var
-  { workaround for incomplete linkage area reservation by FPC 3.0.0 and earlier,
-    remove after 3.0.2 is the minimum bootstrap version }
-  dummy: array[1..4] of ptruint;
-  retaddress: ptruint;
-asm
-  mr r0, r3
-  mr r3, r4
-  mr r4, r5
-  mr r5, r6
-  mr r6, r7
-  mr r7, r8
-  mr r8, r9
-  sc
-  bns .LDone
-  mflr r4
-  std r4, retaddress
-  bl seterrno
-  nop
-  ld r4, retaddress
-  li r3, -1
-  mtlr r4
-.LDone:
-end;
-
-function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL7'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-asm
-  mr  r0,r3
-  mr  r3,r4
-  mr  r4,r5
-  mr  r5,r6
-  mr  r6,r7
-  mr  r7,r8
-  mr  r8,r9
-  mr  r9,r10
-  sc
-  bnslr
-  lis   r4,Errno@ha
-  stw   r3,Errno@l(r4)
-  li    r3,-1
-  li    r4,-1
-end;
-
-function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6,param7,param8:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL8'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-asm
-  mr  r0,r3
-  mr  r3,r4
-  mr  r4,r5
-  mr  r5,r6
-  mr  r6,r7
-  mr  r7,r8
-  mr  r8,r9
-  mr  r9,r10
-  mr  r10,r11
-  sc
-  bnslr
-  lis   r4,Errno@ha
-  stw   r3,Errno@l(r4)
-  li    r3,-1
-  li    r4,-1
-  li    r5,-1
-end;
-
-function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6,param7,param8,param9:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL9'];
-{
-  This function puts the registers in place, does the call, and then
-  copies back the registers as they are after the SysCall.
-}
-asm
-  mr  r0,r3
-  mr  r3,r4
-  mr  r4,r5
-  mr  r5,r6
-  mr  r6,r7
-  mr  r7,r8
-  mr  r8,r9
-  mr  r9,r10
-  mr  r10,r11
-  mr  r11,r12
-  sc
-  bnslr
-  lis   r4,Errno@ha
-  stw   r3,Errno@l(r4)
-  li    r3,-1
-  li    r4,-1
-  li    r5,-1
-  li    r6,-1
-end;
-
-