mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-07 02:10:29 +02:00
netbsd: try to support syscalls which return 64bit values properly on 68k
git-svn-id: trunk@36802 -
This commit is contained in:
parent
071b588da2
commit
12697deda7
@ -19,8 +19,8 @@
|
||||
|
||||
function FpSysCall(sysnr:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL0'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
@ -31,9 +31,9 @@ end;
|
||||
|
||||
function FpSysCall(sysnr,param1:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL1'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
@ -44,10 +44,10 @@ end;
|
||||
|
||||
function FpSysCall(sysnr,param1,param2:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL2'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
@ -58,11 +58,11 @@ end;
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL3'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param3,-(sp)
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
@ -73,12 +73,12 @@ end;
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL4'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param4,-(sp)
|
||||
move.l param3,-(sp)
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
@ -89,24 +89,24 @@ end;
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL5'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param5,-(sp)
|
||||
move.l param4,-(sp)
|
||||
move.l param3,-(sp)
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
moveq.l #-1,d0
|
||||
moveq.l #-1,d1
|
||||
@noerror:
|
||||
end;
|
||||
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL6'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param6,-(sp)
|
||||
move.l param5,-(sp)
|
||||
move.l param4,-(sp)
|
||||
@ -114,17 +114,17 @@ asm
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
moveq.l #-1,d0
|
||||
moveq.l #-1,d1
|
||||
@noerror:
|
||||
end;
|
||||
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL7'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param7,-(sp)
|
||||
move.l param6,-(sp)
|
||||
move.l param5,-(sp)
|
||||
@ -133,17 +133,18 @@ asm
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
moveq.l #-1,d0
|
||||
moveq.l #-1,d1
|
||||
@noerror:
|
||||
end;
|
||||
|
||||
|
||||
function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6,param7,param8:TSysParam):TSysResult; assembler; stdcall; [public,alias:'FPC_SYSCALL8'];
|
||||
asm
|
||||
move.l sysnr,d0
|
||||
move.l param8,-(sp)
|
||||
move.l param7,-(sp)
|
||||
move.l param6,-(sp)
|
||||
@ -153,9 +154,11 @@ asm
|
||||
move.l param2,-(sp)
|
||||
move.l param1,-(sp)
|
||||
move.l #0,-(sp)
|
||||
move.l sysnr,d0
|
||||
trap #0
|
||||
bcc @noerror
|
||||
jsr seterrno
|
||||
moveq.l #-1,d0
|
||||
moveq.l #-1,d1
|
||||
@noerror:
|
||||
end;
|
||||
|
@ -14,9 +14,9 @@
|
||||
}
|
||||
|
||||
Type
|
||||
|
||||
TSysResult = longint;
|
||||
TSysParam = Longint;
|
||||
TSysResult64 = int64;
|
||||
TSysResult = longint;
|
||||
TSysParam = Longint;
|
||||
|
||||
function Do_SysCall(sysnr:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL0';
|
||||
function Do_SysCall(sysnr,param1:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL1';
|
||||
@ -24,6 +24,10 @@ function Do_SysCall(sysnr,param1,param2:TSysParam):TSysResult; stdcall; external
|
||||
function Do_SysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL3';
|
||||
function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL4';
|
||||
function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL5';
|
||||
function Do_SysCall64(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult64; stdcall; external name 'FPC_SYSCALL5';
|
||||
function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL6';
|
||||
function Do_SysCall64(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult64; stdcall; external name 'FPC_SYSCALL6';
|
||||
function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL7';
|
||||
function Do_SysCall64(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):TSysResult64; stdcall; external name 'FPC_SYSCALL7';
|
||||
function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6,param7,param8:TSysParam):TSysResult; stdcall; external name 'FPC_SYSCALL8';
|
||||
function Do_SysCall64(sysnr,param1,param2,param3,param4,param5,param6,param7,param8:TSysParam):TSysResult64; stdcall; external name 'FPC_SYSCALL8';
|
||||
|
Loading…
Reference in New Issue
Block a user