root/arch/riscv/include/asm/gpr-num.h
/* SPDX-License-Identifier: GPL-2.0-only */
#ifndef __ASM_GPR_NUM_H
#define __ASM_GPR_NUM_H

#ifdef __ASSEMBLER__

        .irp    num,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
        .equ    .L__gpr_num_x\num, \num
        .endr

        .equ    .L__gpr_num_zero,       0
        .equ    .L__gpr_num_ra,         1
        .equ    .L__gpr_num_sp,         2
        .equ    .L__gpr_num_gp,         3
        .equ    .L__gpr_num_tp,         4
        .equ    .L__gpr_num_t0,         5
        .equ    .L__gpr_num_t1,         6
        .equ    .L__gpr_num_t2,         7
        .equ    .L__gpr_num_s0,         8
        .equ    .L__gpr_num_s1,         9
        .equ    .L__gpr_num_a0,         10
        .equ    .L__gpr_num_a1,         11
        .equ    .L__gpr_num_a2,         12
        .equ    .L__gpr_num_a3,         13
        .equ    .L__gpr_num_a4,         14
        .equ    .L__gpr_num_a5,         15
        .equ    .L__gpr_num_a6,         16
        .equ    .L__gpr_num_a7,         17
        .equ    .L__gpr_num_s2,         18
        .equ    .L__gpr_num_s3,         19
        .equ    .L__gpr_num_s4,         20
        .equ    .L__gpr_num_s5,         21
        .equ    .L__gpr_num_s6,         22
        .equ    .L__gpr_num_s7,         23
        .equ    .L__gpr_num_s8,         24
        .equ    .L__gpr_num_s9,         25
        .equ    .L__gpr_num_s10,        26
        .equ    .L__gpr_num_s11,        27
        .equ    .L__gpr_num_t3,         28
        .equ    .L__gpr_num_t4,         29
        .equ    .L__gpr_num_t5,         30
        .equ    .L__gpr_num_t6,         31

#else /* __ASSEMBLER__ */

#define __DEFINE_ASM_GPR_NUMS                                   \
"       .irp    num,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31\n" \
"       .equ    .L__gpr_num_x\\num, \\num\n"                    \
"       .endr\n"                                                \
"       .equ    .L__gpr_num_zero,       0\n"                    \
"       .equ    .L__gpr_num_ra,         1\n"                    \
"       .equ    .L__gpr_num_sp,         2\n"                    \
"       .equ    .L__gpr_num_gp,         3\n"                    \
"       .equ    .L__gpr_num_tp,         4\n"                    \
"       .equ    .L__gpr_num_t0,         5\n"                    \
"       .equ    .L__gpr_num_t1,         6\n"                    \
"       .equ    .L__gpr_num_t2,         7\n"                    \
"       .equ    .L__gpr_num_s0,         8\n"                    \
"       .equ    .L__gpr_num_s1,         9\n"                    \
"       .equ    .L__gpr_num_a0,         10\n"                   \
"       .equ    .L__gpr_num_a1,         11\n"                   \
"       .equ    .L__gpr_num_a2,         12\n"                   \
"       .equ    .L__gpr_num_a3,         13\n"                   \
"       .equ    .L__gpr_num_a4,         14\n"                   \
"       .equ    .L__gpr_num_a5,         15\n"                   \
"       .equ    .L__gpr_num_a6,         16\n"                   \
"       .equ    .L__gpr_num_a7,         17\n"                   \
"       .equ    .L__gpr_num_s2,         18\n"                   \
"       .equ    .L__gpr_num_s3,         19\n"                   \
"       .equ    .L__gpr_num_s4,         20\n"                   \
"       .equ    .L__gpr_num_s5,         21\n"                   \
"       .equ    .L__gpr_num_s6,         22\n"                   \
"       .equ    .L__gpr_num_s7,         23\n"                   \
"       .equ    .L__gpr_num_s8,         24\n"                   \
"       .equ    .L__gpr_num_s9,         25\n"                   \
"       .equ    .L__gpr_num_s10,        26\n"                   \
"       .equ    .L__gpr_num_s11,        27\n"                   \
"       .equ    .L__gpr_num_t3,         28\n"                   \
"       .equ    .L__gpr_num_t4,         29\n"                   \
"       .equ    .L__gpr_num_t5,         30\n"                   \
"       .equ    .L__gpr_num_t6,         31\n"

#endif /* __ASSEMBLER__ */

#endif /* __ASM_GPR_NUM_H */