9 #ifndef FIRM_BE_SPARC_GEN_SPARC_REGALLOC_IF_H 10 #define FIRM_BE_SPARC_GEN_SPARC_REGALLOC_IF_H 167 REG_MUL_DIV_HIGH_RES_Y,
173 N_sparc_flags_REGS = 1,
174 N_sparc_fp_REGS = 32,
175 N_sparc_fpflags_REGS = 1,
176 N_sparc_gp_REGS = 32,
177 N_sparc_mul_div_high_res_REGS = 1,
186 CLASS_sparc_mul_div_high_res,
190 extern const arch_register_req_t sparc_class_reg_req_flags;
191 extern const arch_register_req_t sparc_single_reg_req_flags_psr;
192 extern const arch_register_req_t sparc_class_reg_req_fp;
193 extern const arch_register_req_t sparc_single_reg_req_fp_f0;
194 extern const arch_register_req_t sparc_single_reg_req_fp_f1;
195 extern const arch_register_req_t sparc_single_reg_req_fp_f2;
196 extern const arch_register_req_t sparc_single_reg_req_fp_f3;
197 extern const arch_register_req_t sparc_single_reg_req_fp_f4;
198 extern const arch_register_req_t sparc_single_reg_req_fp_f5;
199 extern const arch_register_req_t sparc_single_reg_req_fp_f6;
200 extern const arch_register_req_t sparc_single_reg_req_fp_f7;
201 extern const arch_register_req_t sparc_single_reg_req_fp_f8;
202 extern const arch_register_req_t sparc_single_reg_req_fp_f9;
203 extern const arch_register_req_t sparc_single_reg_req_fp_f10;
204 extern const arch_register_req_t sparc_single_reg_req_fp_f11;
205 extern const arch_register_req_t sparc_single_reg_req_fp_f12;
206 extern const arch_register_req_t sparc_single_reg_req_fp_f13;
207 extern const arch_register_req_t sparc_single_reg_req_fp_f14;
208 extern const arch_register_req_t sparc_single_reg_req_fp_f15;
209 extern const arch_register_req_t sparc_single_reg_req_fp_f16;
210 extern const arch_register_req_t sparc_single_reg_req_fp_f17;
211 extern const arch_register_req_t sparc_single_reg_req_fp_f18;
212 extern const arch_register_req_t sparc_single_reg_req_fp_f19;
213 extern const arch_register_req_t sparc_single_reg_req_fp_f20;
214 extern const arch_register_req_t sparc_single_reg_req_fp_f21;
215 extern const arch_register_req_t sparc_single_reg_req_fp_f22;
216 extern const arch_register_req_t sparc_single_reg_req_fp_f23;
217 extern const arch_register_req_t sparc_single_reg_req_fp_f24;
218 extern const arch_register_req_t sparc_single_reg_req_fp_f25;
219 extern const arch_register_req_t sparc_single_reg_req_fp_f26;
220 extern const arch_register_req_t sparc_single_reg_req_fp_f27;
221 extern const arch_register_req_t sparc_single_reg_req_fp_f28;
222 extern const arch_register_req_t sparc_single_reg_req_fp_f29;
223 extern const arch_register_req_t sparc_single_reg_req_fp_f30;
224 extern const arch_register_req_t sparc_single_reg_req_fp_f31;
225 extern const arch_register_req_t sparc_class_reg_req_fpflags;
226 extern const arch_register_req_t sparc_single_reg_req_fpflags_fsr;
227 extern const arch_register_req_t sparc_class_reg_req_gp;
228 extern const arch_register_req_t sparc_single_reg_req_gp_l0;
229 extern const arch_register_req_t sparc_single_reg_req_gp_l1;
230 extern const arch_register_req_t sparc_single_reg_req_gp_l2;
231 extern const arch_register_req_t sparc_single_reg_req_gp_l3;
232 extern const arch_register_req_t sparc_single_reg_req_gp_l4;
233 extern const arch_register_req_t sparc_single_reg_req_gp_l5;
234 extern const arch_register_req_t sparc_single_reg_req_gp_l6;
235 extern const arch_register_req_t sparc_single_reg_req_gp_l7;
236 extern const arch_register_req_t sparc_single_reg_req_gp_g0;
237 extern const arch_register_req_t sparc_single_reg_req_gp_g1;
238 extern const arch_register_req_t sparc_single_reg_req_gp_g2;
239 extern const arch_register_req_t sparc_single_reg_req_gp_g3;
240 extern const arch_register_req_t sparc_single_reg_req_gp_g4;
241 extern const arch_register_req_t sparc_single_reg_req_gp_g5;
242 extern const arch_register_req_t sparc_single_reg_req_gp_g6;
243 extern const arch_register_req_t sparc_single_reg_req_gp_g7;
244 extern const arch_register_req_t sparc_single_reg_req_gp_o0;
245 extern const arch_register_req_t sparc_single_reg_req_gp_o1;
246 extern const arch_register_req_t sparc_single_reg_req_gp_o2;
247 extern const arch_register_req_t sparc_single_reg_req_gp_o3;
248 extern const arch_register_req_t sparc_single_reg_req_gp_o4;
249 extern const arch_register_req_t sparc_single_reg_req_gp_o5;
250 extern const arch_register_req_t sparc_single_reg_req_gp_sp;
251 extern const arch_register_req_t sparc_single_reg_req_gp_o7;
252 extern const arch_register_req_t sparc_single_reg_req_gp_i0;
253 extern const arch_register_req_t sparc_single_reg_req_gp_i1;
254 extern const arch_register_req_t sparc_single_reg_req_gp_i2;
255 extern const arch_register_req_t sparc_single_reg_req_gp_i3;
256 extern const arch_register_req_t sparc_single_reg_req_gp_i4;
257 extern const arch_register_req_t sparc_single_reg_req_gp_i5;
258 extern const arch_register_req_t sparc_single_reg_req_gp_fp;
259 extern const arch_register_req_t sparc_single_reg_req_gp_i7;
260 extern const arch_register_req_t sparc_class_reg_req_mul_div_high_res;
261 extern const arch_register_req_t sparc_single_reg_req_mul_div_high_res_y;
264 extern const arch_register_t sparc_registers[N_SPARC_REGISTERS];
266 extern arch_register_class_t sparc_reg_classes[N_SPARC_CLASSES];
268 void sparc_register_init(
void);