[Mesa-dev] [PATCH 03/51] nir: Add 16-bit float support into algebraic opts
Topi Pohjolainen
topi.pohjolainen at gmail.com
Fri Nov 24 12:26:30 UTC 2017
Signed-off-by: Topi Pohjolainen <topi.pohjolainen at intel.com>
---
src/compiler/nir/nir_search.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/compiler/nir/nir_search.c b/src/compiler/nir/nir_search.c
index dec56fee74..3b28da4a3f 100644
--- a/src/compiler/nir/nir_search.c
+++ b/src/compiler/nir/nir_search.c
@@ -27,6 +27,7 @@
#include <inttypes.h>
#include "nir_search.h"
+#include "util/half_float.h"
struct match_state {
bool inexact_match;
@@ -194,6 +195,9 @@ match_value(const nir_search_value *value, nir_alu_instr *instr, unsigned src,
for (unsigned i = 0; i < num_components; ++i) {
double val;
switch (load->def.bit_size) {
+ case 16:
+ val = _mesa_half_to_float(load->value.u16[new_swizzle[i]]);
+ break;
case 32:
val = load->value.f32[new_swizzle[i]];
break;
--
2.11.0
More information about the mesa-dev
mailing list