riscv: add gpr-num.h
authorJisheng Zhang <jszhang@kernel.org>
Thu, 18 Nov 2021 11:26:29 +0000 (19:26 +0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Thu, 6 Jan 2022 01:53:05 +0000 (17:53 -0800)
This defines the mapping from ABI names to X registers.

Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/include/asm/gpr-num.h [new file with mode: 0644]

diff --git a/arch/riscv/include/asm/gpr-num.h b/arch/riscv/include/asm/gpr-num.h
new file mode 100644 (file)
index 0000000..dfee282
--- /dev/null
@@ -0,0 +1,77 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef __ASM_GPR_NUM_H
+#define __ASM_GPR_NUM_H
+
+#ifdef __ASSEMBLY__
+       .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 /* __ASSEMBLY__ */
+
+#define __DEFINE_ASM_GPR_NUMS                                  \
+"      .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 /* __ASSEMBLY__ */
+
+#endif /* __ASM_GPR_NUM_H */