xref: /openbmc/qemu/tests/tcg/loongarch64/system/regdef.h (revision a53b931645183bd0c15dd19ae0708fc3c81ecf1d)
1  /* SPDX-License-Identifier: GPL-2.0-only */
2  /*
3   * Copyright (c) 2021 Loongson Technology Corporation Limited
4   */
5  #ifndef _ASM_REGDEF_H
6  #define _ASM_REGDEF_H
7  
8  #define zero    $r0     /* wired zero */
9  #define ra      $r1     /* return address */
10  #define tp      $r2
11  #define sp      $r3     /* stack pointer */
12  #define v0      $r4     /* return value - caller saved */
13  #define v1      $r5
14  #define a0      $r4     /* argument registers */
15  #define a1      $r5
16  #define a2      $r6
17  #define a3      $r7
18  #define a4      $r8
19  #define a5      $r9
20  #define a6      $r10
21  #define a7      $r11
22  #define t0      $r12    /* caller saved */
23  #define t1      $r13
24  #define t2      $r14
25  #define t3      $r15
26  #define t4      $r16
27  #define t5      $r17
28  #define t6      $r18
29  #define t7      $r19
30  #define t8      $r20
31                          /* $r21: Temporarily reserved */
32  #define fp      $r22    /* frame pointer */
33  #define s0      $r23    /* callee saved */
34  #define s1      $r24
35  #define s2      $r25
36  #define s3      $r26
37  #define s4      $r27
38  #define s5      $r28
39  #define s6      $r29
40  #define s7      $r30
41  #define s8      $r31
42  
43  #define gr0     $r0
44  #define gr1     $r1
45  #define gr2     $r2
46  #define gr3     $r3
47  #define gr4     $r4
48  #define gr5     $r5
49  #define gr6     $r6
50  #define gr7     $r7
51  #define gr8     $r8
52  #define gr9     $r9
53  #define gr10    $r10
54  #define gr11    $r11
55  #define gr12    $r12
56  #define gr13    $r13
57  #define gr14    $r14
58  #define gr15    $r15
59  #define gr16    $r16
60  #define gr17    $r17
61  #define gr18    $r18
62  #define gr19    $r19
63  #define gr20    $r20
64  #define gr21    $r21
65  #define gr22    $r22
66  #define gr23    $r23
67  #define gr24    $r24
68  #define gr25    $r25
69  #define gr26    $r26
70  #define gr27    $r27
71  #define gr28    $r28
72  #define gr29    $r29
73  #define gr30    $r30
74  #define gr31    $r31
75  
76  #define STT_NOTYPE  0
77  #define STT_OBJECT  1
78  #define STT_FUNC    2
79  #define STT_SECTION 3
80  #define STT_FILE    4
81  #define STT_COMMON  5
82  #define STT_TLS     6
83  
84  #define ASM_NL           ;
85  
86  #endif /* _ASM_REGDEF_H */
87