summaryrefslogtreecommitdiff
path: root/uisimulator/sdl/system-sdl.h
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2008-03-26 01:50:41 +0000
committerMichael Sevakis <jethead71@rockbox.org>2008-03-26 01:50:41 +0000
commitaf395f4db6ad7b83f9d9afefb1c0ceeedd140a45 (patch)
treeb631289b4a3b28d3c65b10d272d50298f377c69f /uisimulator/sdl/system-sdl.h
parent74d678fdbcbc427c057e7682ba0a0566e49a8b97 (diff)
downloadrockbox-af395f4db6ad7b83f9d9afefb1c0ceeedd140a45.tar.gz
rockbox-af395f4db6ad7b83f9d9afefb1c0ceeedd140a45.zip
Do core interrupt masking in a less general fashion and save some instructions to decrease size and speed things up a little bit. Small fix to a few places where interrupts would get enabled again where they shouldn't have been (context switching calls when disabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16811 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'uisimulator/sdl/system-sdl.h')
-rw-r--r--uisimulator/sdl/system-sdl.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/uisimulator/sdl/system-sdl.h b/uisimulator/sdl/system-sdl.h
index c5e7d40560..08f702d01e 100644
--- a/uisimulator/sdl/system-sdl.h
+++ b/uisimulator/sdl/system-sdl.h
@@ -24,6 +24,19 @@
24#define HIGHEST_IRQ_LEVEL 1 24#define HIGHEST_IRQ_LEVEL 1
25 25
26int set_irq_level(int level); 26int set_irq_level(int level);
27
28#define disable_irq() \
29 ((void)set_irq_level(HIGHEST_IRQ_LEVEL))
30
31#define enable_irq() \
32 ((void)set_irq_level(0))
33
34#define disable_irq_save() \
35 set_irq_level(HIGHEST_IRQ_LEVEL)
36
37#define restore_irq(level) \
38 ((void)set_irq_level(level))
39
27void sim_enter_irq_handler(void); 40void sim_enter_irq_handler(void);
28void sim_exit_irq_handler(void); 41void sim_exit_irq_handler(void);
29bool sim_kernel_init(void); 42bool sim_kernel_init(void);