/* SPDX-License-Identifier: GPL-2.0-only */ #ifndef _ASMRISCV_ASM_H_ #define _ASMRISCV_ASM_H_ #if __riscv_xlen == 64 #define __REG_SEL(a, b) a #elif __riscv_xlen == 32 #define __REG_SEL(a, b) b #else #error "Unexpected __riscv_xlen" #endif #define REG_L __REG_SEL(ld, lw) #define REG_S __REG_SEL(sd, sw) #define SZREG __REG_SEL(8, 4) /* ASMARR() may be used with arrays of longs */ #define ASMARR(reg, idx) ((idx) * SZREG)(reg) #define FP_SIZE 16 #endif /* _ASMRISCV_ASM_H_ */