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