nir/range-analysis: Fail gracefully on non-SSA sources
authorIan Romanick <ian.d.romanick@intel.com>
Mon, 12 Aug 2019 22:47:35 +0000 (15:47 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Wed, 14 Aug 2019 16:02:38 +0000 (09:02 -0700)
Tested-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
src/compiler/nir/nir_range_analysis.c

index 7b908105b98179f5672f7312804adae3d133f3a4..f9756ef080c4eba77d6c8dba1edd3264545c4676 100644 (file)
@@ -217,6 +217,9 @@ static struct ssa_result_range
 analyze_expression(const nir_alu_instr *instr, unsigned src,
                    struct hash_table *ht)
 {
+   if (!instr->src[src].src.is_ssa)
+      return (struct ssa_result_range){unknown, false};
+
    if (nir_src_is_const(instr->src[src].src))
       return analyze_constant(instr, src);