Magellan Linux

Contents of /trunk/mkinitrd-magellan/klibc/usr/include/arch/mips/machine/asm.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 815 - (show annotations) (download)
Fri Apr 24 18:32:46 2009 UTC (15 years ago) by niro
File MIME type: text/plain
File size: 2018 byte(s)
-updated to klibc-1.5.15
1 /*
2 * arch/mips/include/machine/asm.h
3 */
4
5 #ifndef _MACHINE_ASM_H
6 #define _MACHINE_ASM_H
7
8 /*
9 * Symbolic register names for 32 bit ABI
10 */
11
12 #define zero $0 /* wired zero */
13 #define AT $1 /* assembler temp - uppercase because of ".set at" */
14 #define v0 $2 /* return value */
15 #define v1 $3
16 #define a0 $4 /* argument registers */
17 #define a1 $5
18 #define a2 $6
19 #define a3 $7
20 #define t0 $8 /* caller saved */
21 #define t1 $9
22 #define t2 $10
23 #define t3 $11
24 #define t4 $12
25 #define t5 $13
26 #define t6 $14
27 #define t7 $15
28 #define s0 $16 /* callee saved */
29 #define s1 $17
30 #define s2 $18
31 #define s3 $19
32 #define s4 $20
33 #define s5 $21
34 #define s6 $22
35 #define s7 $23
36 #define t8 $24 /* caller saved */
37 #define t9 $25
38 #define jp $25 /* PIC jump register */
39 #define k0 $26 /* kernel scratch */
40 #define k1 $27
41 #define gp $28 /* global pointer */
42 #define sp $29 /* stack pointer */
43 #define fp $30 /* frame pointer */
44 #define s8 $30 /* same like fp! */
45 #define ra $31 /* return address */
46
47 /*
48 * LEAF - declare leaf routine
49 */
50 #define LEAF(symbol) \
51 .globl symbol; \
52 .align 2; \
53 .type symbol,@function; \
54 .ent symbol,0; \
55 symbol: .frame sp,0,ra
56
57
58 /*
59 * NESTED - declare nested routine entry point
60 */
61 #define NESTED(symbol, framesize, rpc) \
62 .globl symbol; \
63 .align 2; \
64 .type symbol,@function; \
65 .ent symbol,0; \
66 symbol: .frame sp, framesize, rpc
67
68 /*
69 * END - mark end of function
70 */
71 #define END(function) \
72 .end function; \
73 .size function,.-function
74
75
76 #endif /* _MACHINE_ASM_H */