Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 814 by niro, Sat Sep 1 22:45:15 2007 UTC revision 815 by niro, Fri Apr 24 18:32:46 2009 UTC
# Line 5  Line 5 
5  #ifndef _MACHINE_ASM_H  #ifndef _MACHINE_ASM_H
6  #define _MACHINE_ASM_H  #define _MACHINE_ASM_H
7    
8  #include <asm/regdef.h>  /*
9  #include <asm/asm.h>   * 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 */  #endif /* _MACHINE_ASM_H */

Legend:
Removed from v.814  
changed lines
  Added in v.815