L4Re - L4 Runtime Environment
irq.h
Go to the documentation of this file.
1 
7 /*
8  * (c) 2008-2009 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
9  * Alexander Warg <warg@os.inf.tu-dresden.de>,
10  * Frank Mehnert <fm3@os.inf.tu-dresden.de>
11  * economic rights: Technische Universit├Ąt Dresden (Germany)
12  * This file is part of TUD:OS and distributed under the terms of the
13  * GNU Lesser General Public License 2.1.
14  * Please see the COPYING-LGPL-2.1 file for details.
15  */
16 #ifndef __L4UTIL__ARCH_ARCH__IRQ_H__
17 #define __L4UTIL__ARCH_ARCH__IRQ_H__
18 
19 #ifdef __GNUC__
20 
21 #include <l4/sys/compiler.h>
22 
24 
25 L4_INLINE void l4util_cli (void);
26 L4_INLINE void l4util_sti (void);
27 L4_INLINE void l4util_flags_save(l4_umword_t *flags);
28 L4_INLINE void l4util_flags_restore(l4_umword_t *flags);
29 
30 L4_INLINE
31 void
32 l4util_cli(void)
33 {
34  extern void __do_not_use_l4util_cli(void);
35  __do_not_use_l4util_cli();
36 }
37 
38 
39 L4_INLINE
40 void
41 l4util_sti(void)
42 {
43  extern void __do_not_use_l4util_sti(void);
44  __do_not_use_l4util_sti();
45 }
46 
47 
48 L4_INLINE
49 void
50 l4util_flags_save(l4_umword_t *flags)
51 {
52  (void)flags;
53  extern void __do_not_use_l4util_flags_save(void);
54  __do_not_use_l4util_flags_save();
55 }
56 
57 L4_INLINE
58 void
59 l4util_flags_restore(l4_umword_t *flags)
60 {
61  (void)flags;
62  extern void __do_not_use_l4util_flags_restore(void);
63  __do_not_use_l4util_flags_restore();
64 }
65 
67 
68 #endif //__GNUC__
69 
70 #endif /* ! __L4UTIL__ARCH_ARCH__IRQ_H__ */
#define EXTERN_C_END
End section with C types and functions.
Definition: compiler.h:187
L4 compiler related defines.
unsigned long l4_umword_t
Unsigned machine word.
Definition: l4int.h:52
#define EXTERN_C_BEGIN
Start section with C types and functions.
Definition: compiler.h:186