aboutsummaryrefslogtreecommitdiff
path: root/inst_skip.c
diff options
context:
space:
mode:
authorMichael Davidsaver <mdavidsaver@gmail.com>2015-11-26 21:33:16 -0500
committerMichael Davidsaver <mdavidsaver@gmail.com>2015-11-26 21:33:16 -0500
commit92eb4d2c1296a2b8b88ecaaf69ae63839d5d8898 (patch)
tree8ffbe117109879222ae874ddeedaf4f21527535f /inst_skip.c
parent404f3942fdbe273de85486aae55946b1d9ed858a (diff)
note
Diffstat (limited to 'inst_skip.c')
-rw-r--r--inst_skip.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/inst_skip.c b/inst_skip.c
index cee535b..2f4d138 100644
--- a/inst_skip.c
+++ b/inst_skip.c
@@ -10,6 +10,11 @@ uint32_t* get_src_stack(uint32_t *sp)
icsr = in32((void*)0xe000ed04);
__asm__ ("mrs %r0, CONTROL" : "=r"(ctrl) ::);
+ /* TODO: this test can't work since CONTROL<1> always reads
+ * zero from a handler.
+ * Seems like there is no way to tell from handler mode
+ * which stack thread mode was using...
+ */
if((ctrl&2) && (icsr&(1<<11)))
__asm__ ("mrs %r0, PSP" : "=r"(sp) ::);