From: RichardBarry Date: Fri, 7 Mar 2008 13:43:27 +0000 (+0000) Subject: Renaming .s to .S. X-Git-Tag: V4.8.0~36 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=6171cc13278d91ceb01e179cb1db91e124d4faa2;p=freertos Renaming .s to .S. git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@246 1d2547de-c912-0410-9cb9-b8ca96c0e9e2 --- diff --git a/Source/portable/GCC/PPC405_Xilinx/portasm.s b/Source/portable/GCC/PPC405_Xilinx/portasm.s deleted file mode 100644 index 2957b45e5..000000000 --- a/Source/portable/GCC/PPC405_Xilinx/portasm.s +++ /dev/null @@ -1,147 +0,0 @@ -#include "xreg405.h" - - .extern pxCurrentTCB - .extern vTaskSwitchContext - .extern vTaskIncrementTick - .extern vPortISRHandler - - .global vPortStartFirstTask - .global vPortYield - .global vPortTickISR - .global vPortISRWrapper - -.set BChainField, 0 -.set NextLRField, BChainField + 4 -.set MSRField, NextLRField + 4 -.set PCField, MSRField + 4 -.set LRField, PCField + 4 -.set CTRField, LRField + 4 -.set XERField, CTRField + 4 -.set CRField, XERField + 4 -.set USPRG0Field, CRField + 4 -.set r0Field, USPRG0Field + 4 -.set r2Field, r0Field + 4 -.set r3r31Field, r2Field + 4 -.set IFrameSize, r3r31Field + ( ( 31 - 3 ) + 1 ) * 4 - - -.macro portSAVE_STACK_POINTER_AND_LR - - # Get the address of the TCB. - xor R0, R0, R0 - addis R2, R0, pxCurrentTCB@ha - lwz R2, pxCurrentTCB@l( R2 ) - - # Store the stack pointer into the TCB - stw SP, 0( R2 ) - - # Save the link register - stwu R1, -24( R1 ) - mflr R0 - stw R31, 20( R1 ) - stw R0, 28( R1 ) - mr R31, r1 - -.endm - -.macro portRESTORE_STACK_POINTER_AND_LR - - # Restore the link register - lwz R11, 0( R1 ) - lwz R0, 4( R11 ) - mtlr R0 - lwz R31, -4( R11 ) - mr R1, R11 - - # Get the address of the TCB. - xor R0, R0, R0 - addis SP, R0, pxCurrentTCB@ha - lwz SP, pxCurrentTCB@l( R1 ) - - # Get the task stack pointer from the TCB. - lwz SP, 0( SP ) - -.endm - - -vPortStartFirstTask: - - # Get the address of the TCB. - xor R0, R0, R0 - addis SP, R0, pxCurrentTCB@ha - lwz SP, pxCurrentTCB@l( SP ) - - # Get the task stack pointer from the TCB. - lwz SP, 0( SP ) - - # Restore MSR register to SRR1. - lwz R0, MSRField(R1) - mtsrr1 R0 - - # Restore current PC location to SRR0. - lwz R0, PCField(R1) - mtsrr0 R0 - - # Save USPRG0 register - lwz R0, USPRG0Field(R1) - mtspr 0x100,R0 - - # Restore Condition register - lwz R0, CRField(R1) - mtcr R0 - - # Restore Fixed Point Exception register - lwz R0, XERField(R1) - mtxer R0 - - # Restore Counter register - lwz R0, CTRField(R1) - mtctr R0 - - # Restore Link register - lwz R0, LRField(R1) - mtlr R0 - - # Restore remaining GPR registers. - lmw R3,r3r31Field(R1) - - # Restore r0 and r2. - lwz R0, r0Field(R1) - lwz R2, r2Field(R1) - - # Remove frame from stack - addi R1,R1,IFrameSize - - # Return into the first task - rfi - - - -vPortYield: - - portSAVE_STACK_POINTER_AND_LR - bl vTaskSwitchContext - portRESTORE_STACK_POINTER_AND_LR - blr - -vPortTickISR: - - portSAVE_STACK_POINTER_AND_LR - bl vTaskIncrementTick - #if configUSE_PREEMPTION == 1 - bl vTaskSwitchContext - #endif - - # Clear the interrupt - lis R0, 2048 - mttsr R0 - - portRESTORE_STACK_POINTER_AND_LR - blr - -vPortISRWrapper: - - portSAVE_STACK_POINTER_AND_LR - bl vPortISRHandler - portRESTORE_STACK_POINTER_AND_LR - blr