//! Interrupt instructions

static mut INTERRUPTS_ENABLED: bool = false;

/// Clear interrupts
#[inline(always)]
pub unsafe fn disable() {
    println!("CLEAR INTERRUPTS");
    INTERRUPTS_ENABLED = false;
}

/// Set interrupts
#[inline(always)]
pub unsafe fn enable() {
    println!("SET INTERRUPTS");
    INTERRUPTS_ENABLED = true;
}

/// Halt instruction
#[inline(always)]
pub unsafe fn halt() {
    assert!(INTERRUPTS_ENABLED);
    ::std::thread::yield_now();
}

/// Set interrupts and nop
#[inline(always)]
pub unsafe fn enable_and_nop() {
    enable();
}

/// Set interrupts and halt
#[inline(always)]
pub unsafe fn enable_and_halt() {
    enable();
    halt();
}

//! Interrupt instructions

static mut INTERRUPTS_ENABLED: bool = false;

/// Clear interrupts
#[inline(always)]
pub unsafe fn disable() {
    println!("CLEAR INTERRUPTS");
    INTERRUPTS_ENABLED = false;
}

/// Set interrupts
#[inline(always)]
pub unsafe fn enable() {
    println!("SET INTERRUPTS");
    INTERRUPTS_ENABLED = true;
}

/// Halt instruction
#[inline(always)]
pub unsafe fn halt() {
    assert!(INTERRUPTS_ENABLED);
    ::std::thread::yield_now();
}

/// Set interrupts and halt
#[inline(always)]
pub unsafe fn enable_and_halt() {
    enable();
    halt();
}

--- 
+++ 
@@ -23,6 +23,12 @@
     ::std::thread::yield_now();
 }
 
+/// Set interrupts and nop
+#[inline(always)]
+pub unsafe fn enable_and_nop() {
+    enable();
+}
+
 /// Set interrupts and halt
 #[inline(always)]
 pub unsafe fn enable_and_halt() {
Interrupt enable and nop function
