1#ifndef _MODULE_OOC_X86_Register_
2#define _MODULE_OOC_X86_Register_
3
4#include <__typemap.h>
5#include <RT0.oh>
6#include <Object.oh>
7#include <ADT/ArrayList.oh>
8#include <ADT/Dictionary.oh>
9#include <OOC/X86/SSA.oh>
10#include <OOC/SSA/IGraph.oh>
11#include <RT0.oh>
12#include <Object.oh>
13#include <Exception.oh>
14typedef struct OOC_X86_Register__RegisterFileDesc *OOC_X86_Register__RegisterFile;
15typedef struct OOC_X86_Register__RegisterFileDesc {
16  OOC_INT8 registerType;
17  OOC_CHAR8 __pad1;
18  OOC_CHAR8 __pad2;
19  OOC_CHAR8 __pad3;
20  OOC_CHAR8 __pad4;
21  OOC_CHAR8 __pad5;
22  OOC_CHAR8 __pad6;
23  OOC_CHAR8 __pad7;
24  ADT_ArrayList__ArrayList resultList;
25  OOC_SSA_IGraph__Graph iGraph;
26  OOC_INT32 maxColor;
27  OOC_CHAR8 __pad28;
28  OOC_CHAR8 __pad29;
29  OOC_CHAR8 __pad30;
30  OOC_CHAR8 __pad31;
31  OOC_X86_SSA__Result prelocatedRep[18];
32  ADT_Dictionary__Dictionary doneBranches;
33} OOC_X86_Register__RegisterFileDesc;
34typedef struct OOC_X86_Register__LiveDataDesc *OOC_X86_Register__LiveData;
35typedef struct OOC_X86_Register__LiveDataDesc {
36  OOC_X86_SSA__Block block;
37  OOC_X86_SSA__Instr position;
38  OOC_INT32 remainingInput;
39  OOC_CHAR8 __pad20;
40  OOC_CHAR8 __pad21;
41  OOC_CHAR8 __pad22;
42  OOC_CHAR8 __pad23;
43  OOC_SSA_IGraph__Vector live;
44} OOC_X86_Register__LiveDataDesc;
45extern void OOC_X86_Register__RegisterFileDesc_INIT(OOC_X86_Register__RegisterFile rf, OOC_INT8 registerType);
46#define _TBN_OOC_X86_Register__RegisterFileDesc_INIT 4
47typedef void (*_TBP_OOC_X86_Register__RegisterFileDesc_INIT)(OOC_X86_Register__RegisterFile rf, OOC_INT8 registerType);
48extern void OOC_X86_Register__LiveDataDesc_INIT(OOC_X86_Register__LiveData ld, OOC_X86_SSA__Block block, OOC_X86_SSA__Instr position, OOC_INT32 remainingInput, OOC_SSA_IGraph__Vector live);
49#define _TBN_OOC_X86_Register__LiveDataDesc_INIT 4
50typedef void (*_TBP_OOC_X86_Register__LiveDataDesc_INIT)(OOC_X86_Register__LiveData ld, OOC_X86_SSA__Block block, OOC_X86_SSA__Instr position, OOC_INT32 remainingInput, OOC_SSA_IGraph__Vector live);
51extern void OOC_X86_Register__AssignRegisters(OOC_X86_SSA__FunctionBlock b);
52extern void OOC_OOC_X86_Register_init(void);
53extern void OOC_OOC_X86_Register_open(RT0__Module client);
54extern void OOC_OOC_X86_Register_destroy(void);
55extern void OOC_OOC_X86_Register_close(RT0__Module client);
56
57/* run-time meta data */
58extern RT0__StructDesc _td_OOC_X86_Register__RegisterFile;
59extern RT0__StructDesc _td_OOC_X86_Register__381;
60extern RT0__StructDesc _td_OOC_X86_Register__RegisterFiles;
61extern RT0__StructDesc _td_OOC_X86_Register__RegisterFileDesc;
62extern RT0__StructDesc _td_OOC_X86_Register__597;
63extern RT0__StructDesc _td_OOC_X86_Register__LiveData;
64extern RT0__StructDesc _td_OOC_X86_Register__LiveDataDesc;
65extern RT0__StructDesc _td_OOC_X86_Register__12042;
66#endif /* _MODULE_OOC_X86_Register_ */
67
68/* --- */
69