diff options
Diffstat (limited to 'arch/score/include/asm/asmmacro.h')
-rw-r--r-- | arch/score/include/asm/asmmacro.h | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/arch/score/include/asm/asmmacro.h b/arch/score/include/asm/asmmacro.h deleted file mode 100644 index 7370a35d17d1..000000000000 --- a/arch/score/include/asm/asmmacro.h +++ /dev/null @@ -1,162 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#ifndef _ASM_SCORE_ASMMACRO_H -#define _ASM_SCORE_ASMMACRO_H - -#include <asm/asm-offsets.h> - -#ifdef __ASSEMBLY__ - -.macro SAVE_ALL - mfcr r30, cr0 - mv r31, r0 - nop - /* if UMs == 1, change stack. */ - slli.c r30, r30, 28 - bpl 1f - la r31, kernelsp - lw r31, [r31] -1: - mv r30, r0 - addri r0, r31, -PT_SIZE - - sw r30, [r0, PT_R0] - .set r1 - sw r1, [r0, PT_R1] - .set nor1 - sw r2, [r0, PT_R2] - sw r3, [r0, PT_R3] - sw r4, [r0, PT_R4] - sw r5, [r0, PT_R5] - sw r6, [r0, PT_R6] - sw r7, [r0, PT_R7] - - sw r8, [r0, PT_R8] - sw r9, [r0, PT_R9] - sw r10, [r0, PT_R10] - sw r11, [r0, PT_R11] - sw r12, [r0, PT_R12] - sw r13, [r0, PT_R13] - sw r14, [r0, PT_R14] - sw r15, [r0, PT_R15] - - sw r16, [r0, PT_R16] - sw r17, [r0, PT_R17] - sw r18, [r0, PT_R18] - sw r19, [r0, PT_R19] - sw r20, [r0, PT_R20] - sw r21, [r0, PT_R21] - sw r22, [r0, PT_R22] - sw r23, [r0, PT_R23] - - sw r24, [r0, PT_R24] - sw r25, [r0, PT_R25] - sw r25, [r0, PT_R25] - sw r26, [r0, PT_R26] - sw r27, [r0, PT_R27] - - sw r28, [r0, PT_R28] - sw r29, [r0, PT_R29] - orri r28, r0, 0x1fff - li r31, 0x00001fff - xor r28, r28, r31 - - mfcehl r30, r31 - sw r30, [r0, PT_CEH] - sw r31, [r0, PT_CEL] - - mfcr r31, cr0 - sw r31, [r0, PT_PSR] - - mfcr r31, cr1 - sw r31, [r0, PT_CONDITION] - - mfcr r31, cr2 - sw r31, [r0, PT_ECR] - - mfcr r31, cr5 - srli r31, r31, 1 - slli r31, r31, 1 - sw r31, [r0, PT_EPC] -.endm - -.macro RESTORE_ALL_AND_RET - mfcr r30, cr0 - srli r30, r30, 1 - slli r30, r30, 1 - mtcr r30, cr0 - nop - nop - nop - nop - nop - - .set r1 - ldis r1, 0x00ff - and r30, r30, r1 - not r1, r1 - lw r31, [r0, PT_PSR] - and r31, r31, r1 - .set nor1 - or r31, r31, r30 - mtcr r31, cr0 - nop - nop - nop - nop - nop - - lw r30, [r0, PT_CONDITION] - mtcr r30, cr1 - nop - nop - nop - nop - nop - - lw r30, [r0, PT_CEH] - lw r31, [r0, PT_CEL] - mtcehl r30, r31 - - .set r1 - lw r1, [r0, PT_R1] - .set nor1 - lw r2, [r0, PT_R2] - lw r3, [r0, PT_R3] - lw r4, [r0, PT_R4] - lw r5, [r0, PT_R5] - lw r6, [r0, PT_R6] - lw r7, [r0, PT_R7] - - lw r8, [r0, PT_R8] - lw r9, [r0, PT_R9] - lw r10, [r0, PT_R10] - lw r11, [r0, PT_R11] - lw r12, [r0, PT_R12] - lw r13, [r0, PT_R13] - lw r14, [r0, PT_R14] - lw r15, [r0, PT_R15] - - lw r16, [r0, PT_R16] - lw r17, [r0, PT_R17] - lw r18, [r0, PT_R18] - lw r19, [r0, PT_R19] - lw r20, [r0, PT_R20] - lw r21, [r0, PT_R21] - lw r22, [r0, PT_R22] - lw r23, [r0, PT_R23] - - lw r24, [r0, PT_R24] - lw r25, [r0, PT_R25] - lw r26, [r0, PT_R26] - lw r27, [r0, PT_R27] - lw r28, [r0, PT_R28] - lw r29, [r0, PT_R29] - - lw r30, [r0, PT_EPC] - lw r0, [r0, PT_R0] - mtcr r30, cr5 - rte -.endm - -#endif /* __ASSEMBLY__ */ -#endif /* _ASM_SCORE_ASMMACRO_H */ |