microsoft/compiler: Handle i1 overloads

Some wave ops can have bool/i1 overloads

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20801>
This commit is contained in:
Jesse Natalie
2023-01-19 13:24:42 -08:00
parent e1b6e0748f
commit a318c101bb
4 changed files with 4 additions and 0 deletions
+1
View File
@@ -155,6 +155,7 @@ enum dxil_primitive_topology dxil_get_primitive_topology(enum shader_prim topolo
static const char *overload_str[DXIL_NUM_OVERLOADS] = {
[DXIL_NONE] = "",
[DXIL_I1] = "i1",
[DXIL_I16] = "i16",
[DXIL_I32] = "i32",
[DXIL_I64] = "i64",
+1
View File
@@ -197,6 +197,7 @@ enum dxil_interpolation_mode {
enum overload_type {
DXIL_NONE,
DXIL_I1,
DXIL_I16,
DXIL_I32,
DXIL_I64,
+1
View File
@@ -675,6 +675,7 @@ const struct dxil_type *
dxil_get_overload_type(struct dxil_module *mod, enum overload_type overload)
{
switch (overload) {
case DXIL_I1: return get_int1_type(mod);
case DXIL_I16: return get_int16_type(mod);
case DXIL_I32: return get_int32_type(mod);
case DXIL_I64: return get_int64_type(mod);
+1
View File
@@ -2215,6 +2215,7 @@ get_overload(nir_alu_type alu_type, unsigned bit_size)
case nir_type_int:
case nir_type_uint:
switch (bit_size) {
case 1: return DXIL_I1;
case 16: return DXIL_I16;
case 32: return DXIL_I32;
case 64: return DXIL_I64;