|
@@ -58,43 +58,6 @@ asm
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|
|
-{$define FPC_SYSTEM_HAS_FPPIPE}
|
|
|
|
-Function fppipe(var fildes : tfildes):cint;assembler;
|
|
|
|
-{
|
|
|
|
- This function puts the registers in place, does the call, and then
|
|
|
|
- copies back the registers as they are after the SysCall.
|
|
|
|
-}
|
|
|
|
-asm
|
|
|
|
- mov 42,%g1
|
|
|
|
- mov %i0,%o0
|
|
|
|
- ta 0x10
|
|
|
|
- bcc .LSyscOK
|
|
|
|
- nop
|
|
|
|
- mov %o0,%l0
|
|
|
|
- sethi %hi(fpc_threadvar_relocate_proc),%o2
|
|
|
|
- or %o2,%lo(fpc_threadvar_relocate_proc),%o2
|
|
|
|
- ld [%o2],%o3
|
|
|
|
- subcc %o3,%g0,%g0
|
|
|
|
- bne .LThread
|
|
|
|
- nop
|
|
|
|
- sethi %hi(Errno+4),%o0
|
|
|
|
- ba .LNoThread
|
|
|
|
- or %o0,%lo(Errno+4),%o0
|
|
|
|
-.LThread:
|
|
|
|
- sethi %hi(Errno),%o0
|
|
|
|
- or %o0,%lo(Errno),%o0
|
|
|
|
- call %o3
|
|
|
|
- ld [%o0],%o0
|
|
|
|
-.LNoThread:
|
|
|
|
- st %l0,[%o0]
|
|
|
|
- mov -1,%o0
|
|
|
|
-.LSyscOK:
|
|
|
|
- st [%i0],%o0
|
|
|
|
- st [%i0+4],%o1
|
|
|
|
-end;
|
|
|
|
-
|
|
|
|
-
|
|
|
|
-
|
|
|
|
{*****************************************************************************
|
|
{*****************************************************************************
|
|
--- Main:The System Call Self ---
|
|
--- Main:The System Call Self ---
|
|
*****************************************************************************}
|
|
*****************************************************************************}
|
|
@@ -354,7 +317,10 @@ end;
|
|
|
|
|
|
{
|
|
{
|
|
$Log$
|
|
$Log$
|
|
- Revision 1.18 2005-03-03 20:13:44 florian
|
|
|
|
|
|
+ Revision 1.19 2005-03-03 20:58:38 florian
|
|
|
|
+ + routines in baseunix can be overriden by processor specifics in bsyscall.inc
|
|
|
|
+
|
|
|
|
+ Revision 1.18 2005/03/03 20:13:44 florian
|
|
+ sparc specific pipe implementation
|
|
+ sparc specific pipe implementation
|
|
|
|
|
|
Revision 1.17 2005/02/14 17:13:30 peter
|
|
Revision 1.17 2005/02/14 17:13:30 peter
|