Revision 9a64fbe4 target-ppc/op_template.h
b/target-ppc/op_template.h | ||
---|---|---|
18 | 18 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
19 | 19 |
*/ |
20 | 20 |
|
21 |
/* General purpose registers moves */ |
|
21 | 22 |
void OPPROTO glue(op_load_gpr_T0_gpr, REG)(void) |
22 | 23 |
{ |
23 | 24 |
T0 = regs->gpr[REG]; |
25 |
RETURN(); |
|
24 | 26 |
} |
25 | 27 |
|
26 | 28 |
void OPPROTO glue(op_load_gpr_T1_gpr, REG)(void) |
27 | 29 |
{ |
28 | 30 |
T1 = regs->gpr[REG]; |
31 |
RETURN(); |
|
29 | 32 |
} |
30 | 33 |
|
31 | 34 |
void OPPROTO glue(op_load_gpr_T2_gpr, REG)(void) |
32 | 35 |
{ |
33 | 36 |
T2 = regs->gpr[REG]; |
37 |
RETURN(); |
|
34 | 38 |
} |
35 | 39 |
|
36 | 40 |
void OPPROTO glue(op_store_T0_gpr_gpr, REG)(void) |
37 | 41 |
{ |
38 | 42 |
regs->gpr[REG] = T0; |
43 |
RETURN(); |
|
39 | 44 |
} |
40 | 45 |
|
41 | 46 |
void OPPROTO glue(op_store_T1_gpr_gpr, REG)(void) |
42 | 47 |
{ |
43 | 48 |
regs->gpr[REG] = T1; |
49 |
RETURN(); |
|
44 | 50 |
} |
45 | 51 |
|
46 | 52 |
void OPPROTO glue(op_store_T2_gpr_gpr, REG)(void) |
47 | 53 |
{ |
48 | 54 |
regs->gpr[REG] = T2; |
55 |
RETURN(); |
|
49 | 56 |
} |
50 | 57 |
|
51 | 58 |
#if REG <= 7 |
52 |
|
|
59 |
/* Condition register moves */ |
|
53 | 60 |
void OPPROTO glue(op_load_crf_T0_crf, REG)(void) |
54 | 61 |
{ |
55 | 62 |
T0 = regs->crf[REG]; |
63 |
RETURN(); |
|
56 | 64 |
} |
57 | 65 |
|
58 | 66 |
void OPPROTO glue(op_load_crf_T1_crf, REG)(void) |
59 | 67 |
{ |
60 | 68 |
T1 = regs->crf[REG]; |
69 |
RETURN(); |
|
61 | 70 |
} |
62 | 71 |
|
63 | 72 |
void OPPROTO glue(op_store_T0_crf_crf, REG)(void) |
64 | 73 |
{ |
65 | 74 |
regs->crf[REG] = T0; |
75 |
RETURN(); |
|
66 | 76 |
} |
67 | 77 |
|
68 | 78 |
void OPPROTO glue(op_store_T1_crf_crf, REG)(void) |
69 | 79 |
{ |
70 | 80 |
regs->crf[REG] = T1; |
81 |
RETURN(); |
|
71 | 82 |
} |
72 | 83 |
|
73 | 84 |
/* Floating point condition and status register moves */ |
... | ... | |
117 | 128 |
|
118 | 129 |
#endif /* REG <= 7 */ |
119 | 130 |
|
120 |
/* float moves */ |
|
121 |
|
|
122 | 131 |
/* floating point registers moves */ |
123 | 132 |
void OPPROTO glue(op_load_fpr_FT0_fpr, REG)(void) |
124 | 133 |
{ |
... | ... | |
156 | 165 |
RETURN(); |
157 | 166 |
} |
158 | 167 |
|
168 |
#if REG <= 15 |
|
169 |
/* Segment register moves */ |
|
170 |
void OPPROTO glue(op_load_sr, REG)(void) |
|
171 |
{ |
|
172 |
T0 = env->sr[REG]; |
|
173 |
RETURN(); |
|
174 |
} |
|
175 |
|
|
176 |
void OPPROTO glue(op_store_sr, REG)(void) |
|
177 |
{ |
|
178 |
#if defined (DEBUG_OP) |
|
179 |
dump_store_sr(REG); |
|
180 |
#endif |
|
181 |
env->sr[REG] = T0; |
|
182 |
RETURN(); |
|
183 |
} |
|
184 |
#endif |
|
185 |
|
|
159 | 186 |
#undef REG |
Also available in: Unified diff