1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __SELFTESTS_POWERPC_PPC_ASM_H 3 #define __SELFTESTS_POWERPC_PPC_ASM_H 4 #include <ppc-asm.h> 5 6 #define CONFIG_ALTIVEC 7 8 #define r1 1 9 10 #define R14 r14 11 #define R15 r15 12 #define R16 r16 13 #define R17 r17 14 #define R18 r18 15 #define R19 r19 16 #define R20 r20 17 #define R21 r21 18 #define R22 r22 19 #define R29 r29 20 #define R30 r30 21 #define R31 r31 22 23 #define STACKFRAMESIZE 256 24 #define STK_REG(i) (112 + ((i)-14)*8) 25 26 #define _GLOBAL(A) FUNC_START(test_ ## A) 27 #define _GLOBAL_TOC(A) _GLOBAL(A) 28 #define _GLOBAL_TOC_KASAN(A) _GLOBAL(A) 29 #define _GLOBAL_KASAN(A) _GLOBAL(A) 30 31 #define PPC_MTOCRF(A, B) mtocrf A, B 32 33 #define EX_TABLE(x, y) \ 34 .section __ex_table,"a"; \ 35 .8byte x, y; \ 36 .previous 37 38 #define BEGIN_FTR_SECTION .if test_feature 39 #define FTR_SECTION_ELSE .else 40 #define ALT_FTR_SECTION_END_IFCLR(x) .endif 41 #define ALT_FTR_SECTION_END_IFSET(x) .endif 42 #define ALT_FTR_SECTION_END(x, y) .endif 43 #define END_FTR_SECTION_IFCLR(x) .endif 44 #define END_FTR_SECTION_IFSET(x) .endif 45 46 /* Default to taking the first of any alternative feature sections */ 47 test_feature = 1 48 49 #endif /* __SELFTESTS_POWERPC_PPC_ASM_H */ 50