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