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 30#define PPC_MTOCRF(A, B) mtocrf A, B 31 32#define EX_TABLE(x, y) \ 33 .section __ex_table,"a"; \ 34 .8byte x, y; \ 35 .previous 36 37#define BEGIN_FTR_SECTION .if test_feature 38#define FTR_SECTION_ELSE .else 39#define ALT_FTR_SECTION_END_IFCLR(x) .endif 40#define ALT_FTR_SECTION_END_IFSET(x) .endif 41#define ALT_FTR_SECTION_END(x, y) .endif 42#define END_FTR_SECTION_IFCLR(x) .endif 43#define END_FTR_SECTION_IFSET(x) .endif 44 45/* Default to taking the first of any alternative feature sections */ 46test_feature = 1 47 48#endif /* __SELFTESTS_POWERPC_PPC_ASM_H */ 49