xref: /qemu/tests/tcg/loongarch64/system/regdef.h (revision b2a3cbb8)
1 /* SPDX-License-Identifier: GPL-2.0 */
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