mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-07-04 19:08:48 +02:00
Use the extended movx instruction instead of mov (#676)
The following is from the MSP430X instruction set - ``` MOVX.W Move source word to destination word. The source operand is copied to the destination. The source operand is not affected. Both operands may be located in the full address space. ``` The movx instruction allows both the operands to be located in the full address space and therefore, works with large data model as well. Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
This commit is contained in:
parent
a07f649bd5
commit
97434a4e0c
@ -48,7 +48,7 @@ portSAVE_CONTEXT .macro
|
|||||||
|
|
||||||
;Save the remaining registers.
|
;Save the remaining registers.
|
||||||
pushm_x #12, r15
|
pushm_x #12, r15
|
||||||
mov.w &usCriticalNesting, r14
|
movx.w &usCriticalNesting, r14
|
||||||
push_x r14
|
push_x r14
|
||||||
mov_x &pxCurrentTCB, r12
|
mov_x &pxCurrentTCB, r12
|
||||||
mov_x sp, 0( r12 )
|
mov_x sp, 0( r12 )
|
||||||
@ -60,7 +60,7 @@ portRESTORE_CONTEXT .macro
|
|||||||
mov_x &pxCurrentTCB, r12
|
mov_x &pxCurrentTCB, r12
|
||||||
mov_x @r12, sp
|
mov_x @r12, sp
|
||||||
pop_x r15
|
pop_x r15
|
||||||
mov.w r15, &usCriticalNesting
|
movx.w r15, &usCriticalNesting
|
||||||
popm_x #12, r15
|
popm_x #12, r15
|
||||||
nop
|
nop
|
||||||
pop.w sr
|
pop.w sr
|
||||||
|
Loading…
x
Reference in New Issue
Block a user