1*f2ac457aSHuacai Chen /* SPDX-License-Identifier: GPL-2.0 */ 2*f2ac457aSHuacai Chen /* 3*f2ac457aSHuacai Chen * Copyright (C) 2020-2022 Loongson Technology Corporation Limited 4*f2ac457aSHuacai Chen */ 5*f2ac457aSHuacai Chen #ifndef _ASM_REGDEF_H 6*f2ac457aSHuacai Chen #define _ASM_REGDEF_H 7*f2ac457aSHuacai Chen 8*f2ac457aSHuacai Chen #define zero $r0 /* wired zero */ 9*f2ac457aSHuacai Chen #define ra $r1 /* return address */ 10*f2ac457aSHuacai Chen #define tp $r2 11*f2ac457aSHuacai Chen #define sp $r3 /* stack pointer */ 12*f2ac457aSHuacai Chen #define a0 $r4 /* argument registers, a0/a1 reused as v0/v1 for return value */ 13*f2ac457aSHuacai Chen #define a1 $r5 14*f2ac457aSHuacai Chen #define a2 $r6 15*f2ac457aSHuacai Chen #define a3 $r7 16*f2ac457aSHuacai Chen #define a4 $r8 17*f2ac457aSHuacai Chen #define a5 $r9 18*f2ac457aSHuacai Chen #define a6 $r10 19*f2ac457aSHuacai Chen #define a7 $r11 20*f2ac457aSHuacai Chen #define t0 $r12 /* caller saved */ 21*f2ac457aSHuacai Chen #define t1 $r13 22*f2ac457aSHuacai Chen #define t2 $r14 23*f2ac457aSHuacai Chen #define t3 $r15 24*f2ac457aSHuacai Chen #define t4 $r16 25*f2ac457aSHuacai Chen #define t5 $r17 26*f2ac457aSHuacai Chen #define t6 $r18 27*f2ac457aSHuacai Chen #define t7 $r19 28*f2ac457aSHuacai Chen #define t8 $r20 29*f2ac457aSHuacai Chen #define u0 $r21 30*f2ac457aSHuacai Chen #define fp $r22 /* frame pointer */ 31*f2ac457aSHuacai Chen #define s0 $r23 /* callee saved */ 32*f2ac457aSHuacai Chen #define s1 $r24 33*f2ac457aSHuacai Chen #define s2 $r25 34*f2ac457aSHuacai Chen #define s3 $r26 35*f2ac457aSHuacai Chen #define s4 $r27 36*f2ac457aSHuacai Chen #define s5 $r28 37*f2ac457aSHuacai Chen #define s6 $r29 38*f2ac457aSHuacai Chen #define s7 $r30 39*f2ac457aSHuacai Chen #define s8 $r31 40*f2ac457aSHuacai Chen 41*f2ac457aSHuacai Chen #endif /* _ASM_REGDEF_H */ 42