diff options
author | NIIBE Yutaka <gniibe@fsij.org> | 2016-04-06 19:49:18 +0900 |
---|---|---|
committer | NIIBE Yutaka <gniibe@fsij.org> | 2016-04-06 19:49:18 +0900 |
commit | fa8dd7afc88aa69af094392ad23812e983aa3d9e (patch) | |
tree | 575440ec41c35d5bbd3d0cd45931d82a5279207b /entry.c | |
parent | 8e40065311f46b32675f3391919f95228b07efd4 (diff) |
Don't use SVC for context switch
Diffstat (limited to 'entry.c')
-rw-r--r-- | entry.c | 14 |
1 files changed, 1 insertions, 13 deletions
@@ -48,7 +48,6 @@ #endif extern uint8_t __main_stack_end__; -extern void svc (void); extern void preempt (void); extern void chx_timer_expired (void); extern void chx_handle_intr (void); @@ -60,18 +59,7 @@ static void nmi (void) static void hard_fault (void) { -#if defined(__ARM_ARCH_6M__) - register uint32_t primask; - - asm ("mrs %0, PRIMASK" : "=r" (primask)); - - if (primask) - asm volatile ("b svc"); - else - for (;;); -#else for (;;); -#endif } static void mem_manage (void) @@ -180,7 +168,7 @@ handler vector_table[] __attribute__ ((section(".startup.vectors"))) = { none, /* 0x20 */ none, none, none, /* reserved */ - svc, /* SVCall */ + none, /* SVCall */ none, /* Debug */ none, /* reserved */ preempt, /* PendSV */ |