12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- {
- $Id$
- This file is part of the Free Pascal run time library.
- Copyright (c) 2001 by Free Pascal development team
- This file implements all the base types and limits required
- for a minimal POSIX compliant subset required to port the compiler
- to a new OS.
- 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.
- **********************************************************************}
- {*****************************************************************************
- Heap Management
- *****************************************************************************}
- function __sbrk(size:longint):longint;cdecl;external;
- function SysOSAlloc (size: PtrInt): pointer; assembler;
- asm
- {$ifdef SYSTEMDEBUG}
- cmpb $1,accept_sbrk
- je .Lsbrk
- movl $0,%eax
- jmp .Lsbrk_fail
- .Lsbrk:
- {$endif}
- movl size,%eax
- pushl %eax
- call __sbrk
- addl $4,%esp
- {$ifdef SYSTEMDEBUG}
- .Lsbrk_fail:
- {$endif}
- end;
- {*****************************************************************************
- OS Memory allocation / deallocation
- ****************************************************************************}
- {function SysOSAlloc(size: ptrint): pointer;
- begin
- result := sbrk(size);
- end;
- }
- {.$define HAS_SYSOSFREE}
- procedure SysOSFree(p: pointer; size: ptrint);
- begin
- end;
- {
- $Log$
- Revision 1.1 2005-02-06 16:57:18 peter
- * threads for go32v2,os,emx,netware
- Revision 1.1 2005/02/06 13:06:20 peter
- * moved file and dir functions to sysfile/sysdir
- * win32 thread in systemunit
- }
|