aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@leaflabs.com>2012-08-14 11:35:01 -0400
committerMarti Bolivar <mbolivar@leaflabs.com>2012-08-14 11:35:01 -0400
commit4b537d6762a27f7b6441c9bf2af511519f1e1456 (patch)
treebda309dad420d82b1e74412466be7bf3f5244c36
parent276baf8d43a9a4fd4a7296707715b028cf64f564 (diff)
downloadlibrambutan-4b537d6762a27f7b6441c9bf2af511519f1e1456.tar.gz
librambutan-4b537d6762a27f7b6441c9bf2af511519f1e1456.zip
Make PRIMASK set/clear functions __always_inline.
This is just to ensure that -Os doesn't prevent these from getting inlined. Signed-off-by: Marti Bolivar <mbolivar@leaflabs.com>
-rw-r--r--libmaple/include/libmaple/nvic.h4
-rw-r--r--wirish/include/wirish/ext_interrupts.h4
2 files changed, 4 insertions, 4 deletions
diff --git a/libmaple/include/libmaple/nvic.h b/libmaple/include/libmaple/nvic.h
index ac102d9..ffe385d 100644
--- a/libmaple/include/libmaple/nvic.h
+++ b/libmaple/include/libmaple/nvic.h
@@ -107,14 +107,14 @@ void nvic_sys_reset();
/**
* Enables interrupts and configurable fault handlers (clear PRIMASK).
*/
-static inline void nvic_globalirq_enable() {
+static __always_inline void nvic_globalirq_enable() {
asm volatile("cpsie i");
}
/**
* Disable interrupts and configurable fault handlers (set PRIMASK).
*/
-static inline void nvic_globalirq_disable() {
+static __always_inline void nvic_globalirq_disable() {
asm volatile("cpsid i");
}
diff --git a/wirish/include/wirish/ext_interrupts.h b/wirish/include/wirish/ext_interrupts.h
index 9ef4657..933be04 100644
--- a/wirish/include/wirish/ext_interrupts.h
+++ b/wirish/include/wirish/ext_interrupts.h
@@ -84,7 +84,7 @@ void detachInterrupt(uint8 pin);
*
* @see noInterrupts()
*/
-static inline void interrupts() {
+static __always_inline void interrupts() {
nvic_globalirq_enable();
}
@@ -98,7 +98,7 @@ static inline void interrupts() {
*
* @see interrupts()
*/
-static inline void noInterrupts() {
+static __always_inline void noInterrupts() {
nvic_globalirq_disable();
}