[Mesa-dev] [PATCH 02/51] nir: Prepare constant lowering for 16-bits constants

Topi Pohjolainen topi.pohjolainen at gmail.com
Fri Nov 24 12:26:29 UTC 2017


Signed-off-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
---
 src/compiler/nir/nir_lower_load_const_to_scalar.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/compiler/nir/nir_lower_load_const_to_scalar.c b/src/compiler/nir/nir_lower_load_const_to_scalar.c
index e494facfd2..76eb1d3a12 100644
--- a/src/compiler/nir/nir_lower_load_const_to_scalar.c
+++ b/src/compiler/nir/nir_lower_load_const_to_scalar.c
@@ -52,9 +52,13 @@ lower_load_const_instr_scalar(nir_load_const_instr *lower)
          nir_load_const_instr_create(b.shader, 1, lower->def.bit_size);
       if (lower->def.bit_size == 64)
          load_comp->value.f64[0] = lower->value.f64[i];
+      else if (lower->def.bit_size == 16)
+         load_comp->value.u16[0] = lower->value.u16[i];
       else
          load_comp->value.u32[0] = lower->value.u32[i];
-      assert(lower->def.bit_size == 64 || lower->def.bit_size == 32);
+      assert(lower->def.bit_size == 64 ||
+             lower->def.bit_size == 32 ||
+             lower->def.bit_size == 16);
       nir_builder_instr_insert(&b, &load_comp->instr);
       loads[i] = &load_comp->def;
    }
-- 
2.11.0



More information about the mesa-dev mailing list