irq_current should return a bool too.
Change-Id: I61669cabfcc1aefd84872cb27433e1c43f175813
diff --git a/src/arch/aarch64/hftest/interrupts.c b/src/arch/aarch64/hftest/interrupts.c
index 5baa8c2..17da29b 100644
--- a/src/arch/aarch64/hftest/interrupts.c
+++ b/src/arch/aarch64/hftest/interrupts.c
@@ -27,13 +27,21 @@
static void (*irq_callback)(void);
static bool (*exception_callback)(void);
-void irq_current(void)
+/**
+ * Handles an IRQ at the current exception level.
+ *
+ * Returns false so that the value of elr_el1 is restored from the stack, in
+ * case there are nested exceptions.
+ */
+bool irq_current(void)
{
if (irq_callback != NULL) {
irq_callback();
} else {
FAIL("Got unexpected interrupt.\n");
}
+
+ return false;
}
noreturn static bool default_sync_current_exception(void)