eval type group for F80 and F128

This commit is contained in:
Nikita Smith
2026-02-05 17:43:20 -08:00
parent 7d4a64aae6
commit 5986e595ce
3 changed files with 18 additions and 10 deletions
+4 -2
View File
@@ -62,7 +62,7 @@ RDI_U16 rdi_eval_op_ctrlbits_table[54] =
{
RDI_EVAL_CTRLBITS(0, 0, 0),
RDI_EVAL_CTRLBITS(0, 0, 0),
RDI_EVAL_CTRLBITS(1, 1, 0),
RDI_EVAL_CTRLBITS(2, 1, 0),
RDI_EVAL_CTRLBITS(2, 0, 0),
RDI_EVAL_CTRLBITS(1, 1, 1),
RDI_EVAL_CTRLBITS(4, 0, 1),
@@ -116,13 +116,15 @@ RDI_EVAL_CTRLBITS(0, 0, 1),
RDI_EVAL_CTRLBITS(0, 0, 0),
};
struct {RDI_EvalConversionKind dst_typegroups[RDI_EvalTypeGroup_COUNT];} rdi_eval_typegroup_conversion_kind_matrix[6] =
struct {RDI_EvalConversionKind dst_typegroups[RDI_EvalTypeGroup_COUNT];} rdi_eval_typegroup_conversion_kind_matrix[8] =
{
{{RDI_EvalConversionKind_OtherToOther, RDI_EvalConversionKind_FromOther, RDI_EvalConversionKind_FromOther, RDI_EvalConversionKind_FromOther, RDI_EvalConversionKind_FromOther}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Legal}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Noop}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal}},
{{RDI_EvalConversionKind_ToOther, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal, RDI_EvalConversionKind_Legal}},
{{RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop, RDI_EvalConversionKind_Noop}},
};
+5 -1
View File
@@ -464,7 +464,9 @@ RDI_EvalTypeGroup_U = 1,
RDI_EvalTypeGroup_S = 2,
RDI_EvalTypeGroup_F32 = 3,
RDI_EvalTypeGroup_F64 = 4,
RDI_EvalTypeGroup_COUNT = 5,
RDI_EvalTypeGroup_F80 = 5,
RDI_EvalTypeGroup_F128 = 6,
RDI_EvalTypeGroup_COUNT = 7,
} RDI_EvalTypeGroupEnum;
typedef RDI_U8 RDI_EvalConversionKind;
@@ -990,6 +992,8 @@ X(U)\
X(S)\
X(F32)\
X(F64)\
X(F80)\
X(F128)\
#define RDI_EvalConversionKind_XList \
X(Noop)\