libFirm
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
gen_TEMPLATE_regalloc_if.c
1 
11 #include "gen_TEMPLATE_regalloc_if.h"
12 #include "bearch_TEMPLATE_t.h"
13 
14 const arch_register_req_t TEMPLATE_class_reg_req_fp = {
15  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
16  .width = 1,
17 };
18 static const unsigned TEMPLATE_limited_fp_f0[] = { (1U << REG_FP_F0) };
19 const arch_register_req_t TEMPLATE_single_reg_req_fp_f0 = {
20  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
21  .limited = TEMPLATE_limited_fp_f0,
22  .width = 1,
23 };
24 static const unsigned TEMPLATE_limited_fp_f1[] = { (1U << REG_FP_F1) };
25 const arch_register_req_t TEMPLATE_single_reg_req_fp_f1 = {
26  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
27  .limited = TEMPLATE_limited_fp_f1,
28  .width = 1,
29 };
30 static const unsigned TEMPLATE_limited_fp_f2[] = { (1U << REG_FP_F2) };
31 const arch_register_req_t TEMPLATE_single_reg_req_fp_f2 = {
32  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
33  .limited = TEMPLATE_limited_fp_f2,
34  .width = 1,
35 };
36 static const unsigned TEMPLATE_limited_fp_f3[] = { (1U << REG_FP_F3) };
37 const arch_register_req_t TEMPLATE_single_reg_req_fp_f3 = {
38  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
39  .limited = TEMPLATE_limited_fp_f3,
40  .width = 1,
41 };
42 static const unsigned TEMPLATE_limited_fp_f4[] = { (1U << REG_FP_F4) };
43 const arch_register_req_t TEMPLATE_single_reg_req_fp_f4 = {
44  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
45  .limited = TEMPLATE_limited_fp_f4,
46  .width = 1,
47 };
48 static const unsigned TEMPLATE_limited_fp_f5[] = { (1U << REG_FP_F5) };
49 const arch_register_req_t TEMPLATE_single_reg_req_fp_f5 = {
50  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
51  .limited = TEMPLATE_limited_fp_f5,
52  .width = 1,
53 };
54 static const unsigned TEMPLATE_limited_fp_f6[] = { (1U << REG_FP_F6) };
55 const arch_register_req_t TEMPLATE_single_reg_req_fp_f6 = {
56  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
57  .limited = TEMPLATE_limited_fp_f6,
58  .width = 1,
59 };
60 static const unsigned TEMPLATE_limited_fp_f7[] = { (1U << REG_FP_F7) };
61 const arch_register_req_t TEMPLATE_single_reg_req_fp_f7 = {
62  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
63  .limited = TEMPLATE_limited_fp_f7,
64  .width = 1,
65 };
66 static const unsigned TEMPLATE_limited_fp_f8[] = { (1U << REG_FP_F8) };
67 const arch_register_req_t TEMPLATE_single_reg_req_fp_f8 = {
68  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
69  .limited = TEMPLATE_limited_fp_f8,
70  .width = 1,
71 };
72 static const unsigned TEMPLATE_limited_fp_f9[] = { (1U << REG_FP_F9) };
73 const arch_register_req_t TEMPLATE_single_reg_req_fp_f9 = {
74  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
75  .limited = TEMPLATE_limited_fp_f9,
76  .width = 1,
77 };
78 static const unsigned TEMPLATE_limited_fp_f10[] = { (1U << REG_FP_F10) };
79 const arch_register_req_t TEMPLATE_single_reg_req_fp_f10 = {
80  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
81  .limited = TEMPLATE_limited_fp_f10,
82  .width = 1,
83 };
84 static const unsigned TEMPLATE_limited_fp_f11[] = { (1U << REG_FP_F11) };
85 const arch_register_req_t TEMPLATE_single_reg_req_fp_f11 = {
86  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
87  .limited = TEMPLATE_limited_fp_f11,
88  .width = 1,
89 };
90 static const unsigned TEMPLATE_limited_fp_f12[] = { (1U << REG_FP_F12) };
91 const arch_register_req_t TEMPLATE_single_reg_req_fp_f12 = {
92  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
93  .limited = TEMPLATE_limited_fp_f12,
94  .width = 1,
95 };
96 static const unsigned TEMPLATE_limited_fp_f13[] = { (1U << REG_FP_F13) };
97 const arch_register_req_t TEMPLATE_single_reg_req_fp_f13 = {
98  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
99  .limited = TEMPLATE_limited_fp_f13,
100  .width = 1,
101 };
102 static const unsigned TEMPLATE_limited_fp_f14[] = { (1U << REG_FP_F14) };
103 const arch_register_req_t TEMPLATE_single_reg_req_fp_f14 = {
104  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
105  .limited = TEMPLATE_limited_fp_f14,
106  .width = 1,
107 };
108 static const unsigned TEMPLATE_limited_fp_f15[] = { (1U << REG_FP_F15) };
109 const arch_register_req_t TEMPLATE_single_reg_req_fp_f15 = {
110  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
111  .limited = TEMPLATE_limited_fp_f15,
112  .width = 1,
113 };
114 const arch_register_req_t TEMPLATE_class_reg_req_gp = {
115  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
116  .width = 1,
117 };
118 static const unsigned TEMPLATE_limited_gp_r0[] = { (1U << REG_GP_R0) };
119 const arch_register_req_t TEMPLATE_single_reg_req_gp_r0 = {
120  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
121  .limited = TEMPLATE_limited_gp_r0,
122  .width = 1,
123 };
124 static const unsigned TEMPLATE_limited_gp_r1[] = { (1U << REG_GP_R1) };
125 const arch_register_req_t TEMPLATE_single_reg_req_gp_r1 = {
126  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
127  .limited = TEMPLATE_limited_gp_r1,
128  .width = 1,
129 };
130 static const unsigned TEMPLATE_limited_gp_r2[] = { (1U << REG_GP_R2) };
131 const arch_register_req_t TEMPLATE_single_reg_req_gp_r2 = {
132  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
133  .limited = TEMPLATE_limited_gp_r2,
134  .width = 1,
135 };
136 static const unsigned TEMPLATE_limited_gp_r3[] = { (1U << REG_GP_R3) };
137 const arch_register_req_t TEMPLATE_single_reg_req_gp_r3 = {
138  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
139  .limited = TEMPLATE_limited_gp_r3,
140  .width = 1,
141 };
142 static const unsigned TEMPLATE_limited_gp_r4[] = { (1U << REG_GP_R4) };
143 const arch_register_req_t TEMPLATE_single_reg_req_gp_r4 = {
144  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
145  .limited = TEMPLATE_limited_gp_r4,
146  .width = 1,
147 };
148 static const unsigned TEMPLATE_limited_gp_r5[] = { (1U << REG_GP_R5) };
149 const arch_register_req_t TEMPLATE_single_reg_req_gp_r5 = {
150  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
151  .limited = TEMPLATE_limited_gp_r5,
152  .width = 1,
153 };
154 static const unsigned TEMPLATE_limited_gp_r6[] = { (1U << REG_GP_R6) };
155 const arch_register_req_t TEMPLATE_single_reg_req_gp_r6 = {
156  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
157  .limited = TEMPLATE_limited_gp_r6,
158  .width = 1,
159 };
160 static const unsigned TEMPLATE_limited_gp_r7[] = { (1U << REG_GP_R7) };
161 const arch_register_req_t TEMPLATE_single_reg_req_gp_r7 = {
162  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
163  .limited = TEMPLATE_limited_gp_r7,
164  .width = 1,
165 };
166 static const unsigned TEMPLATE_limited_gp_r8[] = { (1U << REG_GP_R8) };
167 const arch_register_req_t TEMPLATE_single_reg_req_gp_r8 = {
168  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
169  .limited = TEMPLATE_limited_gp_r8,
170  .width = 1,
171 };
172 static const unsigned TEMPLATE_limited_gp_r9[] = { (1U << REG_GP_R9) };
173 const arch_register_req_t TEMPLATE_single_reg_req_gp_r9 = {
174  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
175  .limited = TEMPLATE_limited_gp_r9,
176  .width = 1,
177 };
178 static const unsigned TEMPLATE_limited_gp_r10[] = { (1U << REG_GP_R10) };
179 const arch_register_req_t TEMPLATE_single_reg_req_gp_r10 = {
180  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
181  .limited = TEMPLATE_limited_gp_r10,
182  .width = 1,
183 };
184 static const unsigned TEMPLATE_limited_gp_r11[] = { (1U << REG_GP_R11) };
185 const arch_register_req_t TEMPLATE_single_reg_req_gp_r11 = {
186  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
187  .limited = TEMPLATE_limited_gp_r11,
188  .width = 1,
189 };
190 static const unsigned TEMPLATE_limited_gp_r12[] = { (1U << REG_GP_R12) };
191 const arch_register_req_t TEMPLATE_single_reg_req_gp_r12 = {
192  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
193  .limited = TEMPLATE_limited_gp_r12,
194  .width = 1,
195 };
196 static const unsigned TEMPLATE_limited_gp_r13[] = { (1U << REG_GP_R13) };
197 const arch_register_req_t TEMPLATE_single_reg_req_gp_r13 = {
198  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
199  .limited = TEMPLATE_limited_gp_r13,
200  .width = 1,
201 };
202 static const unsigned TEMPLATE_limited_gp_sp[] = { (1U << REG_GP_SP) };
203 const arch_register_req_t TEMPLATE_single_reg_req_gp_sp = {
204  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
205  .limited = TEMPLATE_limited_gp_sp,
206  .width = 1,
207 };
208 static const unsigned TEMPLATE_limited_gp_bp[] = { (1U << REG_GP_BP) };
209 const arch_register_req_t TEMPLATE_single_reg_req_gp_bp = {
210  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
211  .limited = TEMPLATE_limited_gp_bp,
212  .width = 1,
213 };
214 
215 
216 arch_register_class_t TEMPLATE_reg_classes[] = {
217  {
218  .name = "TEMPLATE_fp",
219  .mode = NULL,
220  .regs = &TEMPLATE_registers[REG_F0],
221  .class_req = &TEMPLATE_class_reg_req_fp,
222  .index = CLASS_TEMPLATE_fp,
223  .n_regs = 16,
224  .manual_ra = false,
225  },
226  {
227  .name = "TEMPLATE_gp",
228  .mode = NULL,
229  .regs = &TEMPLATE_registers[REG_R0],
230  .class_req = &TEMPLATE_class_reg_req_gp,
231  .index = CLASS_TEMPLATE_gp,
232  .n_regs = 16,
233  .manual_ra = false,
234  },
235 
236 };
237 
239 const arch_register_t TEMPLATE_registers[] = {
240  {
241  .name = "f0",
242  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
243  .single_req = &TEMPLATE_single_reg_req_fp_f0,
244  .index = REG_FP_F0,
245  .global_index = REG_F0,
246  .dwarf_number = 0,
247  .encoding = REG_FP_F0,
248  .is_virtual = false,
249  },
250  {
251  .name = "f1",
252  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
253  .single_req = &TEMPLATE_single_reg_req_fp_f1,
254  .index = REG_FP_F1,
255  .global_index = REG_F1,
256  .dwarf_number = 0,
257  .encoding = REG_FP_F1,
258  .is_virtual = false,
259  },
260  {
261  .name = "f2",
262  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
263  .single_req = &TEMPLATE_single_reg_req_fp_f2,
264  .index = REG_FP_F2,
265  .global_index = REG_F2,
266  .dwarf_number = 0,
267  .encoding = REG_FP_F2,
268  .is_virtual = false,
269  },
270  {
271  .name = "f3",
272  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
273  .single_req = &TEMPLATE_single_reg_req_fp_f3,
274  .index = REG_FP_F3,
275  .global_index = REG_F3,
276  .dwarf_number = 0,
277  .encoding = REG_FP_F3,
278  .is_virtual = false,
279  },
280  {
281  .name = "f4",
282  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
283  .single_req = &TEMPLATE_single_reg_req_fp_f4,
284  .index = REG_FP_F4,
285  .global_index = REG_F4,
286  .dwarf_number = 0,
287  .encoding = REG_FP_F4,
288  .is_virtual = false,
289  },
290  {
291  .name = "f5",
292  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
293  .single_req = &TEMPLATE_single_reg_req_fp_f5,
294  .index = REG_FP_F5,
295  .global_index = REG_F5,
296  .dwarf_number = 0,
297  .encoding = REG_FP_F5,
298  .is_virtual = false,
299  },
300  {
301  .name = "f6",
302  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
303  .single_req = &TEMPLATE_single_reg_req_fp_f6,
304  .index = REG_FP_F6,
305  .global_index = REG_F6,
306  .dwarf_number = 0,
307  .encoding = REG_FP_F6,
308  .is_virtual = false,
309  },
310  {
311  .name = "f7",
312  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
313  .single_req = &TEMPLATE_single_reg_req_fp_f7,
314  .index = REG_FP_F7,
315  .global_index = REG_F7,
316  .dwarf_number = 0,
317  .encoding = REG_FP_F7,
318  .is_virtual = false,
319  },
320  {
321  .name = "f8",
322  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
323  .single_req = &TEMPLATE_single_reg_req_fp_f8,
324  .index = REG_FP_F8,
325  .global_index = REG_F8,
326  .dwarf_number = 0,
327  .encoding = REG_FP_F8,
328  .is_virtual = false,
329  },
330  {
331  .name = "f9",
332  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
333  .single_req = &TEMPLATE_single_reg_req_fp_f9,
334  .index = REG_FP_F9,
335  .global_index = REG_F9,
336  .dwarf_number = 0,
337  .encoding = REG_FP_F9,
338  .is_virtual = false,
339  },
340  {
341  .name = "f10",
342  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
343  .single_req = &TEMPLATE_single_reg_req_fp_f10,
344  .index = REG_FP_F10,
345  .global_index = REG_F10,
346  .dwarf_number = 0,
347  .encoding = REG_FP_F10,
348  .is_virtual = false,
349  },
350  {
351  .name = "f11",
352  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
353  .single_req = &TEMPLATE_single_reg_req_fp_f11,
354  .index = REG_FP_F11,
355  .global_index = REG_F11,
356  .dwarf_number = 0,
357  .encoding = REG_FP_F11,
358  .is_virtual = false,
359  },
360  {
361  .name = "f12",
362  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
363  .single_req = &TEMPLATE_single_reg_req_fp_f12,
364  .index = REG_FP_F12,
365  .global_index = REG_F12,
366  .dwarf_number = 0,
367  .encoding = REG_FP_F12,
368  .is_virtual = false,
369  },
370  {
371  .name = "f13",
372  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
373  .single_req = &TEMPLATE_single_reg_req_fp_f13,
374  .index = REG_FP_F13,
375  .global_index = REG_F13,
376  .dwarf_number = 0,
377  .encoding = REG_FP_F13,
378  .is_virtual = false,
379  },
380  {
381  .name = "f14",
382  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
383  .single_req = &TEMPLATE_single_reg_req_fp_f14,
384  .index = REG_FP_F14,
385  .global_index = REG_F14,
386  .dwarf_number = 0,
387  .encoding = REG_FP_F14,
388  .is_virtual = false,
389  },
390  {
391  .name = "f15",
392  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_fp],
393  .single_req = &TEMPLATE_single_reg_req_fp_f15,
394  .index = REG_FP_F15,
395  .global_index = REG_F15,
396  .dwarf_number = 0,
397  .encoding = REG_FP_F15,
398  .is_virtual = false,
399  },
400  {
401  .name = "r0",
402  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
403  .single_req = &TEMPLATE_single_reg_req_gp_r0,
404  .index = REG_GP_R0,
405  .global_index = REG_R0,
406  .dwarf_number = 0,
407  .encoding = REG_GP_R0,
408  .is_virtual = false,
409  },
410  {
411  .name = "r1",
412  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
413  .single_req = &TEMPLATE_single_reg_req_gp_r1,
414  .index = REG_GP_R1,
415  .global_index = REG_R1,
416  .dwarf_number = 0,
417  .encoding = REG_GP_R1,
418  .is_virtual = false,
419  },
420  {
421  .name = "r2",
422  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
423  .single_req = &TEMPLATE_single_reg_req_gp_r2,
424  .index = REG_GP_R2,
425  .global_index = REG_R2,
426  .dwarf_number = 0,
427  .encoding = REG_GP_R2,
428  .is_virtual = false,
429  },
430  {
431  .name = "r3",
432  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
433  .single_req = &TEMPLATE_single_reg_req_gp_r3,
434  .index = REG_GP_R3,
435  .global_index = REG_R3,
436  .dwarf_number = 0,
437  .encoding = REG_GP_R3,
438  .is_virtual = false,
439  },
440  {
441  .name = "r4",
442  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
443  .single_req = &TEMPLATE_single_reg_req_gp_r4,
444  .index = REG_GP_R4,
445  .global_index = REG_R4,
446  .dwarf_number = 0,
447  .encoding = REG_GP_R4,
448  .is_virtual = false,
449  },
450  {
451  .name = "r5",
452  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
453  .single_req = &TEMPLATE_single_reg_req_gp_r5,
454  .index = REG_GP_R5,
455  .global_index = REG_R5,
456  .dwarf_number = 0,
457  .encoding = REG_GP_R5,
458  .is_virtual = false,
459  },
460  {
461  .name = "r6",
462  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
463  .single_req = &TEMPLATE_single_reg_req_gp_r6,
464  .index = REG_GP_R6,
465  .global_index = REG_R6,
466  .dwarf_number = 0,
467  .encoding = REG_GP_R6,
468  .is_virtual = false,
469  },
470  {
471  .name = "r7",
472  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
473  .single_req = &TEMPLATE_single_reg_req_gp_r7,
474  .index = REG_GP_R7,
475  .global_index = REG_R7,
476  .dwarf_number = 0,
477  .encoding = REG_GP_R7,
478  .is_virtual = false,
479  },
480  {
481  .name = "r8",
482  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
483  .single_req = &TEMPLATE_single_reg_req_gp_r8,
484  .index = REG_GP_R8,
485  .global_index = REG_R8,
486  .dwarf_number = 0,
487  .encoding = REG_GP_R8,
488  .is_virtual = false,
489  },
490  {
491  .name = "r9",
492  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
493  .single_req = &TEMPLATE_single_reg_req_gp_r9,
494  .index = REG_GP_R9,
495  .global_index = REG_R9,
496  .dwarf_number = 0,
497  .encoding = REG_GP_R9,
498  .is_virtual = false,
499  },
500  {
501  .name = "r10",
502  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
503  .single_req = &TEMPLATE_single_reg_req_gp_r10,
504  .index = REG_GP_R10,
505  .global_index = REG_R10,
506  .dwarf_number = 0,
507  .encoding = REG_GP_R10,
508  .is_virtual = false,
509  },
510  {
511  .name = "r11",
512  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
513  .single_req = &TEMPLATE_single_reg_req_gp_r11,
514  .index = REG_GP_R11,
515  .global_index = REG_R11,
516  .dwarf_number = 0,
517  .encoding = REG_GP_R11,
518  .is_virtual = false,
519  },
520  {
521  .name = "r12",
522  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
523  .single_req = &TEMPLATE_single_reg_req_gp_r12,
524  .index = REG_GP_R12,
525  .global_index = REG_R12,
526  .dwarf_number = 0,
527  .encoding = REG_GP_R12,
528  .is_virtual = false,
529  },
530  {
531  .name = "r13",
532  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
533  .single_req = &TEMPLATE_single_reg_req_gp_r13,
534  .index = REG_GP_R13,
535  .global_index = REG_R13,
536  .dwarf_number = 0,
537  .encoding = REG_GP_R13,
538  .is_virtual = false,
539  },
540  {
541  .name = "sp",
542  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
543  .single_req = &TEMPLATE_single_reg_req_gp_sp,
544  .index = REG_GP_SP,
545  .global_index = REG_SP,
546  .dwarf_number = 0,
547  .encoding = REG_GP_SP,
548  .is_virtual = false,
549  },
550  {
551  .name = "bp",
552  .cls = &TEMPLATE_reg_classes[CLASS_TEMPLATE_gp],
553  .single_req = &TEMPLATE_single_reg_req_gp_bp,
554  .index = REG_GP_BP,
555  .global_index = REG_BP,
556  .dwarf_number = 0,
557  .encoding = REG_GP_BP,
558  .is_virtual = false,
559  },
560 
561 };
562 
566 void TEMPLATE_register_init(void)
567 {
568  TEMPLATE_reg_classes[CLASS_TEMPLATE_fp].mode = mode_F;
569  TEMPLATE_reg_classes[CLASS_TEMPLATE_gp].mode = mode_Iu;
570 
571 }
ir_mode * mode_Iu
uint32
Definition: irmode.h:201
ir_mode * mode_F
ieee754 binary32 float (single precision)
Definition: irmode.h:194