mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-02 22:50:21 +02:00
* fix x86 -> cpu86 define
* add tee() function git-svn-id: trunk@8365 -
This commit is contained in:
parent
6fd901181a
commit
b8c3dc960d
@ -307,13 +307,16 @@ const
|
||||
SPLICE_F_MORE = 4; {* Expect more data. *}
|
||||
SPLICE_F_GIFT = 8; {* Pages passed in are a gift. *}
|
||||
|
||||
{$ifdef x86}
|
||||
{$ifdef cpu86}
|
||||
{* Splice address range into a pipe. *}
|
||||
function vmsplice (fdout: cInt; iov: PIOVec; count: size_t; flags: cuInt): cInt; {$ifdef FPC_USE_LIBC} cdecl; external name 'vmsplice'; {$ENDIF}
|
||||
|
||||
{* Splice two files together. *}
|
||||
// NOTE: offin and offout should be "off64_t" but we don't have that type. It's an "always 64 bit offset" so I use cint64
|
||||
function splice (fdin: cInt; offin: cInt64; fdout: cInt; offout: cInt64; len: size_t; flags: cuInt): cInt; {$ifdef FPC_USE_LIBC} cdecl; external name 'splice'; {$ENDIF}
|
||||
function splice (fdin: cInt; offin: cInt64; fdout: cInt;
|
||||
offout: cInt64; len: size_t; flags: cuInt): cInt; {$ifdef FPC_USE_LIBC} cdecl; external name 'splice'; {$ENDIF}
|
||||
|
||||
function tee(fd_in: cInt; fd_out: cInt; len: size_t; flags: cuInt): cInt; {$ifdef FPC_USE_LIBC} cdecl; external name 'tee'; {$ENDIF}
|
||||
|
||||
{$endif} // x86
|
||||
|
||||
@ -439,7 +442,7 @@ begin
|
||||
end;
|
||||
|
||||
// TODO: update also on non x86!
|
||||
{$ifdef x86} // didn't update syscall_nr on others yet
|
||||
{$ifdef cpu86} // didn't update syscall_nr on others yet
|
||||
|
||||
function vmsplice (fdout: cInt; iov: PIOVec; count: size_t; flags: cuInt): cInt;
|
||||
begin
|
||||
@ -451,9 +454,16 @@ begin
|
||||
splice := do_syscall(syscall_nr_splice, TSysParam(fdin), TSysParam(offin), TSysParam(fdout), TSysParam(offout),
|
||||
TSysParam(len), TSysParam(flags));
|
||||
end;
|
||||
|
||||
function tee(fd_in: cInt; fd_out: cInt; len: size_t; flags: cuInt): cInt;
|
||||
begin
|
||||
tee := do_syscall(syscall_nr_tee, TSysParam(fd_in), TSysParam(fd_out),
|
||||
TSysParam(len), TSysParam(flags));
|
||||
end;
|
||||
|
||||
{$endif} // x86
|
||||
|
||||
{$endif}
|
||||
{$endif} // non-libc
|
||||
|
||||
{ FUTEX_OP is a macro, doesn't exist in libC as function}
|
||||
function FUTEX_OP(op, oparg, cmp, cmparg: cint): cint; {$ifdef SYSTEMINLINE}inline;{$endif}
|
||||
|
Loading…
Reference in New Issue
Block a user