1 ------------------------------------------------------------------------------
3 -- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS --
5 -- SYSTEM.INTERRUPT_MANAGEMENT.OPERATIONS --
9 -- Copyright (C) 1992-2009, Free Software Foundation, Inc. --
11 -- GNARL is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. --
18 -- As a special exception under Section 7 of GPL version 3, you are granted --
19 -- additional permissions described in the GCC Runtime Library Exception, --
20 -- version 3.1, as published by the Free Software Foundation. --
22 -- You should have received a copy of the GNU General Public License and --
23 -- a copy of the GCC Runtime Library Exception along with this program; --
24 -- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
25 -- <http://www.gnu.org/licenses/>. --
27 -- GNARL was developed by the GNARL team at Florida State University. --
28 -- Extensive contributions were provided by Ada Core Technologies, Inc. --
30 ------------------------------------------------------------------------------
32 -- This is a NO tasking version of this package
34 package body System
.Interrupt_Management
.Operations
is
36 -- Turn off warnings since many unused formals
38 pragma Warnings
(Off
);
40 ----------------------------
41 -- Thread_Block_Interrupt --
42 ----------------------------
44 procedure Thread_Block_Interrupt
45 (Interrupt
: Interrupt_ID
)
49 end Thread_Block_Interrupt
;
51 ------------------------------
52 -- Thread_Unblock_Interrupt --
53 ------------------------------
55 procedure Thread_Unblock_Interrupt
56 (Interrupt
: Interrupt_ID
)
60 end Thread_Unblock_Interrupt
;
62 ------------------------
63 -- Set_Interrupt_Mask --
64 ------------------------
66 procedure Set_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
69 end Set_Interrupt_Mask
;
71 procedure Set_Interrupt_Mask
72 (Mask
: access Interrupt_Mask
;
73 OMask
: access Interrupt_Mask
) is
76 end Set_Interrupt_Mask
;
78 ------------------------
79 -- Get_Interrupt_Mask --
80 ------------------------
82 procedure Get_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
85 end Get_Interrupt_Mask
;
91 function Interrupt_Wait
92 (Mask
: access Interrupt_Mask
)
99 ----------------------------
100 -- Install_Default_Action --
101 ----------------------------
103 procedure Install_Default_Action
(Interrupt
: Interrupt_ID
) is
106 end Install_Default_Action
;
108 ---------------------------
109 -- Install_Ignore_Action --
110 ---------------------------
112 procedure Install_Ignore_Action
(Interrupt
: Interrupt_ID
) is
115 end Install_Ignore_Action
;
117 -------------------------
118 -- Fill_Interrupt_Mask --
119 -------------------------
121 procedure Fill_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
124 end Fill_Interrupt_Mask
;
126 --------------------------
127 -- Empty_Interrupt_Mask --
128 --------------------------
130 procedure Empty_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
133 end Empty_Interrupt_Mask
;
135 ---------------------------
136 -- Add_To_Interrupt_Mask --
137 ---------------------------
139 procedure Add_To_Interrupt_Mask
140 (Mask
: access Interrupt_Mask
;
141 Interrupt
: Interrupt_ID
)
145 end Add_To_Interrupt_Mask
;
147 --------------------------------
148 -- Delete_From_Interrupt_Mask --
149 --------------------------------
151 procedure Delete_From_Interrupt_Mask
152 (Mask
: access Interrupt_Mask
;
153 Interrupt
: Interrupt_ID
)
157 end Delete_From_Interrupt_Mask
;
164 (Mask
: access Interrupt_Mask
;
165 Interrupt
: Interrupt_ID
) return Boolean
171 -------------------------
172 -- Copy_Interrupt_Mask --
173 -------------------------
175 procedure Copy_Interrupt_Mask
176 (X
: out Interrupt_Mask
;
181 end Copy_Interrupt_Mask
;
183 -------------------------
184 -- Interrupt_Self_Process --
185 -------------------------
187 procedure Interrupt_Self_Process
(Interrupt
: Interrupt_ID
) is
190 end Interrupt_Self_Process
;
192 --------------------------
193 -- Setup_Interrupt_Mask --
194 --------------------------
196 procedure Setup_Interrupt_Mask
is
199 end Setup_Interrupt_Mask
;
201 end System
.Interrupt_Management
.Operations
;