diff --git a/goil/templates/code/cortex/armv7/handler_body.goilTemplate b/goil/templates/code/cortex/armv7/handler_body.goilTemplate index 0a8b4eb0b..9abf20672 100644 --- a/goil/templates/code/cortex/armv7/handler_body.goilTemplate +++ b/goil/templates/code/cortex/armv7/handler_body.goilTemplate @@ -23,9 +23,7 @@ tpl_primary_irq_handler_% !handlerSource %: /* __2__ENTER_KERNEL * Enter into kernel */ - push {lr} bl tpl_enter_kernel - pop {lr} /* * Reset tpl_kern variables @@ -69,9 +67,7 @@ tpl_primary_irq_handler_% !handlerSource %: */ ldr r12, [r5, #KS_KERN_PTR] /* load the tpl_kern base address */ ldr r12, [r12, #TPL_KERN_OFFSET_S_RUNNING] - push {lr} bl tpl_save_context - pop {lr} no_save_old_context_% !handlerSource %: #if WITH_MEMORY_PROTECTION == YES @@ -93,9 +89,7 @@ call_tpl_run_elected_% !handlerSource %: */ ldr r12, [r5, #KS_KERN_PTR] /* load the tpl_kern base address */ ldr r12, [r12, #TPL_KERN_OFFSET_S_RUNNING] /* get the address of the context bloc */ - push {lr} bl tpl_load_context - pop {lr} /******************************************** * KERNEL EXIT WITHOUT CONTEXT SWITCH STAGE * @@ -111,9 +105,7 @@ no_context_switch_% !handlerSource %: /* __5__LEAVE_KERNEL * Leave kernel */ - push {lr} bl tpl_leave_kernel - pop {lr} /* __6__HANDLER_EPILOG * Leave kernel diff --git a/goil/templates/code/cortex/armv7/tpl_primary_irq.goilTemplate b/goil/templates/code/cortex/armv7/tpl_primary_irq.goilTemplate index 8d28cb0f0..e65bf7f49 100644 --- a/goil/templates/code/cortex/armv7/tpl_primary_irq.goilTemplate +++ b/goil/templates/code/cortex/armv7/tpl_primary_irq.goilTemplate @@ -186,9 +186,7 @@ tpl_enter_kernel: /* * Switch to kernel memory protection scheme */ - push {lr} bl tpl_kernel_mp - pop {lr} #endif /* * Manage reentrance of kernel @@ -239,9 +237,7 @@ tpl_leave_kernel: /* * Switch to user memory protection scheme */ - push {lr} bl tpl_user_mp - pop {lr} #endif tpl_leave_kernel_exit: bx lr diff --git a/machines/cortex/tpl_system_call.S b/machines/cortex/tpl_system_call.S index b95e185bd..470593a65 100755 --- a/machines/cortex/tpl_system_call.S +++ b/machines/cortex/tpl_system_call.S @@ -112,9 +112,7 @@ tpl_enter_kernel: /* * Switch to kernel memory protection scheme */ - push {lr} bl tpl_kernel_mp - pop {lr} #endif /* * Manage reentrance of kernel @@ -165,9 +163,7 @@ tpl_leave_kernel: /* * Switch to user memory protection scheme */ - push {lr} bl tpl_user_mp - pop {lr} #endif tpl_leave_kernel_exit: bx lr @@ -206,9 +202,7 @@ tpl_sc_handler: /* __2__ENTER_KERNEL * Enter into kernel */ - push {lr} bl tpl_enter_kernel - pop {lr} /* * Get the appropriate system call address into R3 @@ -271,9 +265,7 @@ tpl_sc_handler: */ ldr r12, [r5, #KS_KERN_PTR] /* load the tpl_kern base address */ ldr r12, [r12, #TPL_KERN_OFFSET_S_RUNNING] - push {lr} bl tpl_save_context - pop {lr} no_save_old_context: #if WITH_MEMORY_PROTECTION == YES @@ -295,9 +287,7 @@ call_tpl_run_elected: */ ldr r12, [r5, #KS_KERN_PTR] /* load the tpl_kern base address */ ldr r12, [r12, #TPL_KERN_OFFSET_S_RUNNING] /* get the address of the context bloc */ - push {lr} bl tpl_load_context - pop {lr} /******************************************** * KERNEL EXIT WITHOUT CONTEXT SWITCH STAGE * @@ -314,9 +304,7 @@ no_context_switch: /* __5__LEAVE_KERNEL * Leave kernel */ - push {lr} bl tpl_leave_kernel - pop {lr} /* __6__HANDLER_EPILOG * Leave kernel