summaryrefslogtreecommitdiffstats
path: root/private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h
diff options
context:
space:
mode:
Diffstat (limited to 'private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h')
-rw-r--r--private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h103
1 files changed, 103 insertions, 0 deletions
diff --git a/private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h b/private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h
new file mode 100644
index 000000000..edf1f6394
--- /dev/null
+++ b/private/mvdm/softpc.new/host/inc/mips/prod/buffer_c.h
@@ -0,0 +1,103 @@
+#ifndef _Buffer_c_h
+#define _Buffer_c_h
+#define MaxCodeBufferOverrun (0)
+#define MaxCopiedCleanups (600)
+#define BufferIndexNULL ((struct BufferIndexREC*)0)
+#define nPartitionBits (5)
+#define nPartitions (32)
+#define DataHeaderNULL ((struct DataHeaderREC*)0)
+#define FragmentIndexNULL ((struct FragmentIndexREC*)0)
+#define FragmentDataNULL ((struct FragmentDataREC*)0)
+#define CleanByteRemoveBase (207)
+#define CleanByteAddBase (159)
+#define CleanByteMaxFt (33)
+#define CleanByteFtBase (126)
+#define CleanByteMaxCodeUnits (125)
+#define FragmentInfoNULL ((struct FragmentInfoREC*)0)
+#define DebugInfoNULL ((struct DebugInfoREC*)0)
+#define SavedIntelFragmentNULL ((struct SavedIntelFragmentREC*)0)
+#define SavedIntelNULL ((struct SavedIntelREC*)0)
+#define CodeBufferSize (8192)
+enum WhereAmItype
+{
+ CleanedWhereAmItype = 0,
+ BopWhereAmItype = 1,
+ CompileWhereAmItype = 2,
+ NormalWhereAmItype = 3
+};
+enum CompilationBufferType
+{
+ BufferTypeUnused = 0,
+ BufferTypeRecords = 1,
+ BufferTypeChained = 2,
+ BufferTypeCode = 3,
+ BufferTypeCompilation = 4,
+ BufferTypePendingDelete = 5,
+ BufferTypeBpi = 6
+};
+struct BufferIndexREC
+{
+ struct BufferIndexREC *moreRecent;
+ struct BufferIndexREC *lessRecent;
+ struct BufferIndexREC *headOfLRUchain;
+ IU8 type;
+ IU16 bufferNumber;
+ IU8 *dataBuffer;
+ IU32 *codeBuffer;
+ void *debugBuffer;
+ IU16 deletionRecs;
+ IU16 LRUcount;
+};
+struct DataHeaderREC
+{
+ struct FragmentIndexREC *partition[nPartitions];
+};
+struct FragmentIndexREC
+{
+ IU16 codeOffset;
+ IS16 dataOffset;
+};
+struct FragmentDataREC
+{
+ IU32 linearAddress;
+ IU32 eip;
+ IU16 universe;
+ IU8 length;
+ IU8 isEntryPoint;
+ IU8 cleanTable[1];
+};
+enum DebugInfoType
+{
+ DebugInfo_Other = 0,
+ DebugInfo_Intel = 1
+};
+struct DebugInfoREC
+{
+ struct DebugInfoREC *next;
+ IUH size;
+ IUH type;
+};
+struct SavedIntelFragmentREC
+{
+ IU32 eip;
+ IU8 *bytes;
+};
+struct SavedIntelREC
+{
+ struct DebugInfoREC header;
+ IU8 *freePtr;
+ IU16 nEntries;
+ IU16 fragNumBase;
+ struct SavedIntelFragmentREC fragments[1];
+};
+enum CleanupTypes
+{
+ cleanHostOffset = 0,
+ cleanIntelOffset = 1,
+ cleanAddConstraint = 2,
+ cleanRemoveConstraint = 3,
+ cleanSetFlagsType = 4,
+ cleanFlagsNeeded = 5,
+ cleanEndList = 6
+};
+#endif /* ! _Buffer_c_h */