diff options
author | Michael Davidsaver <mdavidsaver@gmail.com> | 2015-11-26 21:33:16 -0500 |
---|---|---|
committer | Michael Davidsaver <mdavidsaver@gmail.com> | 2015-11-26 21:33:16 -0500 |
commit | 92eb4d2c1296a2b8b88ecaaf69ae63839d5d8898 (patch) | |
tree | 8ffbe117109879222ae874ddeedaf4f21527535f /inst_skip.c | |
parent | 404f3942fdbe273de85486aae55946b1d9ed858a (diff) |
note
Diffstat (limited to 'inst_skip.c')
-rw-r--r-- | inst_skip.c | 5 |
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) ::); |