checkpoint on eval2; type graph operations, parsing, etc.

This commit is contained in:
Ryan Fleury committed 2026-06-17 17:38:09 -07:00
1 parent 11b3f25842
commit cc75260946
16 files changed
+1473 -152

No files matched your search

+9 -11
View File
@@ -81,17 +81,17 @@ RDI_EVAL_CTRLBITS(64, 0, 1),
RDI_EVAL_CTRLBITS(1, 0, 1),
RDI_EVAL_CTRLBITS(1, 1, 1),
RDI_EVAL_CTRLBITS(1, 1, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 1, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 2, 1),
RDI_EVAL_CTRLBITS(2, 1, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 2, 1),
RDI_EVAL_CTRLBITS(1, 1, 1),
@@ -162,7 +162,6 @@ RDI_U8 *result = 0;
switch (kind)
{
default:{}break;
case RDI_TypeKind_NULL: {result = (RDI_U8*)"NULL"; *size_out = sizeof("NULL")-1;}break;
case RDI_TypeKind_Void: {result = (RDI_U8*)"Void"; *size_out = sizeof("Void")-1;}break;
case RDI_TypeKind_Handle: {result = (RDI_U8*)"Handle"; *size_out = sizeof("Handle")-1;}break;
case RDI_TypeKind_HResult: {result = (RDI_U8*)"HResult"; *size_out = sizeof("HResult")-1;}break;
@@ -222,7 +221,6 @@ case RDI_TypeKind_IncompleteUnion: {result = (RDI_U8*)"IncompleteUnion"; *size_o
case RDI_TypeKind_IncompleteClass: {result = (RDI_U8*)"IncompleteClass"; *size_out = sizeof("IncompleteClass")-1;}break;
case RDI_TypeKind_IncompleteEnum: {result = (RDI_U8*)"IncompleteEnum"; *size_out = sizeof("IncompleteEnum")-1;}break;
case RDI_TypeKind_Bitfield: {result = (RDI_U8*)"Bitfield"; *size_out = sizeof("Bitfield")-1;}break;
case RDI_TypeKind_COUNT: {result = (RDI_U8*)"COUNT"; *size_out = sizeof("COUNT")-1;}break;
}
return result;
}
+4 -4
View File
@@ -274,7 +274,7 @@ RDI_Language_COUNT = 4,
typedef RDI_U16 RDI_TypeKind;
typedef enum RDI_TypeKindEnum
{
RDI_TypeKind_NULL = 0x0000,
RDI_TypeKind_Null,
RDI_TypeKind_Void = 0x0001,
RDI_TypeKind_Handle = 0x0002,
RDI_TypeKind_HResult = 0x0003,
@@ -334,7 +334,6 @@ RDI_TypeKind_IncompleteUnion = 0x2006,
RDI_TypeKind_IncompleteClass = 0x2007,
RDI_TypeKind_IncompleteEnum = 0x2008,
RDI_TypeKind_Bitfield = 0xF000,
RDI_TypeKind_COUNT = 0xF002,
RDI_TypeKind_FirstBuiltIn = RDI_TypeKind_Void,
RDI_TypeKind_LastBuiltIn = RDI_TypeKind_Variadic,
RDI_TypeKind_FirstConstructed = RDI_TypeKind_Modifier,
@@ -345,6 +344,7 @@ RDI_TypeKind_FirstIncomplete = RDI_TypeKind_IncompleteStruct,
RDI_TypeKind_LastIncomplete = RDI_TypeKind_IncompleteEnum,
RDI_TypeKind_FirstRecord = RDI_TypeKind_Struct,
RDI_TypeKind_LastUserDefined = RDI_TypeKind_IncompleteEnum,
RDI_TypeKind_COUNT,
} RDI_TypeKindEnum;
typedef RDI_U16 RDI_TypeModifierFlags;
@@ -471,6 +471,8 @@ RDI_EvalOp_PartialValueBit = 50,
RDI_EvalOp_Swap = 51,
RDI_EvalOp_PushCfa = 52,
RDI_EvalOp_COUNT = 53,
RDI_EvalOp_FirstLogical = RDI_EvalOp_LogAnd,
RDI_EvalOp_LastLogical = RDI_EvalOp_Grtr,
} RDI_EvalOpEnum;
typedef RDI_U8 RDI_EvalTypeGroup;
@@ -771,7 +773,6 @@ X(Masm)\
X(COUNT)\
#define RDI_TypeKind_XList \
X(NULL)\
X(Void)\
X(Handle)\
X(HResult)\
@@ -831,7 +832,6 @@ X(IncompleteUnion)\
X(IncompleteClass)\
X(IncompleteEnum)\
X(Bitfield)\
X(COUNT)\
#define RDI_TypeModifierFlags_XList \
X(Const)\