]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/ada/i-os2syn.ads
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / ada / i-os2syn.ads
diff --git a/gcc/ada/i-os2syn.ads b/gcc/ada/i-os2syn.ads
deleted file mode 100644 (file)
index ae5c016..0000000
+++ /dev/null
@@ -1,269 +0,0 @@
-------------------------------------------------------------------------------
---                                                                          --
---                         GNAT COMPILER COMPONENTS                         --
---                                                                          --
---    I N T E R F A C E S . O S 2 L I B . S Y N C H R O N I Z A T I O N     --
---                                                                          --
---                                  S p e c                                 --
---                                                                          --
---                             $Revision: 1.1.16.2 $
---                                                                          --
---          Copyright (C) 1993-1998 Free Software Foundation, Inc.          --
---                                                                          --
--- GNAT is free software;  you can  redistribute it  and/or modify it under --
--- terms of the  GNU General Public License as published  by the Free Soft- --
--- ware  Foundation;  either version 2,  or (at your option) any later ver- --
--- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
--- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
--- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
--- for  more details.  You should have  received  a copy of the GNU General --
--- Public License  distributed with GNAT;  see file COPYING.  If not, write --
--- to  the Free Software Foundation,  59 Temple Place - Suite 330,  Boston, --
--- MA 02111-1307, USA.                                                      --
---                                                                          --
--- As a special exception,  if other files  instantiate  generics from this --
--- unit, or you link  this unit with other files  to produce an executable, --
--- this  unit  does not  by itself cause  the resulting  executable  to  be --
--- covered  by the  GNU  General  Public  License.  This exception does not --
--- however invalidate  any other reasons why  the executable file  might be --
--- covered by the  GNU Public License.                                      --
---                                                                          --
--- GNAT was originally developed  by the GNAT team at  New York University. --
--- Extensive contributions were provided by Ada Core Technologies Inc.      --
---                                                                          --
-------------------------------------------------------------------------------
-
-with Interfaces.OS2Lib.Threads;
-
-package Interfaces.OS2Lib.Synchronization is
-pragma Preelaborate (Synchronization);
-
-   package IC  renames Interfaces.C;
-   package IOT renames Interfaces.OS2Lib.Threads;
-   package S   renames System;
-
-   --  Semaphore Attributes
-
-   DC_SEM_SHARED : constant := 16#01#;
-   --  DosCreateMutex, DosCreateEvent, and DosCreateMuxWait use it to indicate
-   --  whether the semaphore is shared or private when the PSZ is null
-
-   SEM_INDEFINITE_WAIT  : constant ULONG := -1;
-   SEM_IMMEDIATE_RETURN : constant ULONG :=  0;
-
-   type HSEM is new LHANDLE;
-   type PHSEM is access all HSEM;
-
-   type SEMRECORD is record
-      hsemCur : HSEM;
-      ulUser  : ULONG;
-   end record;
-
-   type PSEMRECORD is access all SEMRECORD;
-
-   --  Quad word structure
-
-   --  Originally QWORD is defined as a record containing two ULONGS,
-   --  the first containing low word and the second for the high word,
-   --  but it is cleaner to define it as follows:
-
-   type QWORD is delta 1.0 range -2.0**63 .. 2.0**63 - 1.0;
-   type PQWORD is access all QWORD;
-
-   type HEV is new HSEM;
-   type PHEV is access all HEV;
-
-   type HMTX  is new HSEM;
-   type PHMTX is access all HMTX;
-
-   type HMUX  is new HSEM;
-   type PHMUX is access all HMUX;
-
-   type HTIMER is new LHANDLE;
-   type PHTIMER is access all HTIMER;
-
-   -----------------------
-   -- Critical sections --
-   -----------------------
-
-   function DosEnterCritSec return APIRET;
-   pragma Import (C, DosEnterCritSec, "DosEnterCritSec");
-
-   function DosExitCritSec return APIRET;
-   pragma Import (C, DosExitCritSec, "DosExitCritSec");
-
-   --------------
-   -- EventSem --
-   --------------
-
-   function DosCreateEventSem
-     (pszName   : PSZ;
-      f_phev    : PHEV;
-      flAttr    : ULONG;
-      fState    : BOOL32)
-      return      APIRET;
-   pragma Import (C, DosCreateEventSem, "DosCreateEventSem");
-
-   function DosOpenEventSem
-     (pszName   : PSZ;
-      F_phev    : PHEV)
-      return      APIRET;
-   pragma Import (C, DosOpenEventSem, "DosOpenEventSem");
-
-   function DosCloseEventSem
-     (F_hev     : HEV)
-      return      APIRET;
-   pragma Import (C, DosCloseEventSem, "DosCloseEventSem");
-
-   function DosResetEventSem
-     (F_hev     : HEV;
-      pulPostCt : PULONG)
-      return      APIRET;
-   pragma Import (C, DosResetEventSem, "DosResetEventSem");
-
-   function DosPostEventSem
-     (F_hev     : HEV)
-      return      APIRET;
-   pragma Import (C, DosPostEventSem, "DosPostEventSem");
-
-   function DosWaitEventSem
-     (F_hev     : HEV;
-      ulTimeout : ULONG)
-      return      APIRET;
-   pragma Import (C, DosWaitEventSem, "DosWaitEventSem");
-
-   function DosQueryEventSem
-     (F_hev     : HEV;
-      pulPostCt : PULONG)
-      return      APIRET;
-   pragma Import (C, DosQueryEventSem, "DosQueryEventSem");
-
-   --------------
-   -- MutexSem --
-   --------------
-
-   function DosCreateMutexSem
-     (pszName   : PSZ;
-      F_phmtx   : PHMTX;
-      flAttr    : ULONG;
-      fState    : BOOL32)
-      return      APIRET;
-   pragma Import (C, DosCreateMutexSem, "DosCreateMutexSem");
-
-   function DosOpenMutexSem
-     (pszName   : PSZ;
-      F_phmtx   : PHMTX)
-      return      APIRET;
-   pragma Import (C, DosOpenMutexSem, "DosOpenMutexSem");
-
-   function DosCloseMutexSem
-     (F_hmtx    : HMTX)
-      return      APIRET;
-   pragma Import (C, DosCloseMutexSem, "DosCloseMutexSem");
-
-   function DosRequestMutexSem
-     (F_hmtx    : HMTX;
-      ulTimeout : ULONG)
-      return      APIRET;
-   pragma Import (C, DosRequestMutexSem, "DosRequestMutexSem");
-
-   function DosReleaseMutexSem
-     (F_hmtx    : HMTX)
-      return      APIRET;
-   pragma Import (C, DosReleaseMutexSem, "DosReleaseMutexSem");
-
-   function DosQueryMutexSem
-     (F_hmtx    : HMTX;
-      F_ppid    : IOT.PPID;
-      F_ptid    : IOT.PTID;
-      pulCount  : PULONG)
-      return      APIRET;
-   pragma Import (C, DosQueryMutexSem, "DosQueryMutexSem");
-
-   ----------------
-   -- MuxWaitSem --
-   ----------------
-
-   function DosCreateMuxWaitSem
-     (pszName   : PSZ;
-      F_phmux   : PHMUX;
-      cSemRec   : ULONG;
-      pSemRec   : PSEMRECORD;
-      flAttr    : ULONG)
-      return      APIRET;
-   pragma Import (C, DosCreateMuxWaitSem, "DosCreateMuxWaitSem");
-
-   DCMW_WAIT_ANY : constant := 16#02#;  -- wait on any event/mutex to occur
-   DCMW_WAIT_ALL : constant := 16#04#;  -- wait on all events/mutexes to occur
-   --  Values for "flAttr" parameter in DosCreateMuxWaitSem call
-
-   function DosOpenMuxWaitSem
-     (pszName   : PSZ;
-      F_phmux   : PHMUX)
-      return      APIRET;
-   pragma Import (C, DosOpenMuxWaitSem, "DosOpenMuxWaitSem");
-
-   function DosCloseMuxWaitSem
-     (F_hmux    : HMUX)
-      return      APIRET;
-   pragma Import (C, DosCloseMuxWaitSem, "DosCloseMuxWaitSem");
-
-   function DosWaitMuxWaitSem
-     (F_hmux    : HMUX;
-      ulTimeout : ULONG;
-      pulUser   : PULONG)
-      return      APIRET;
-   pragma Import (C, DosWaitMuxWaitSem, "DosWaitMuxWaitSem");
-
-   function DosAddMuxWaitSem
-     (F_hmux    : HMUX;
-      pSemRec   : PSEMRECORD)
-      return      APIRET;
-   pragma Import (C, DosAddMuxWaitSem, "DosAddMuxWaitSem");
-
-   function DosDeleteMuxWaitSem
-     (F_hmux    : HMUX;
-      F_hsem    : HSEM)
-      return      APIRET;
-   pragma Import (C, DosDeleteMuxWaitSem, "DosDeleteMuxWaitSem");
-
-   function DosQueryMuxWaitSem
-     (F_hmux    : HMUX;
-     pcSemRec   : PULONG;
-     pSemRec    : PSEMRECORD;
-     pflAttr    : PULONG)
-     return       APIRET;
-   pragma Import (C, DosQueryMuxWaitSem, "DosQueryMuxWaitSem");
-
-   -----------
-   -- Timer --
-   -----------
-
-   function DosAsyncTimer
-    (msec      : ULONG;
-     F_hsem    : HSEM;
-     F_phtimer : PHTIMER)
-     return      APIRET;
-   pragma Import (C, DosAsyncTimer, "DosAsyncTimer");
-
-   function DosStartTimer
-    (msec      : ULONG;
-     F_hsem    : HSEM;
-     F_phtimer : PHTIMER)
-     return      APIRET;
-   pragma Import (C, DosStartTimer, "DosStartTimer");
-
-   function DosStopTimer
-     (F_htimer : HTIMER)
-      return     APIRET;
-   pragma Import (C, DosStopTimer, "DosStopTimer");
-
-   --  DosTmrQueryTime provides a snapshot of the time
-   --  from the IRQ0 high resolution timer (Intel 8254)
-
-   function DosTmrQueryTime
-     (pqwTmrTime : access QWORD)   --  Time in 8254 ticks (1_192_755.2 Hz)
-      return       APIRET;
-   pragma Import (C, DosTmrQueryTime, "DosTmrQueryTime");
-
-end Interfaces.OS2Lib.Synchronization;