mesa/src/compiler
Jason Ekstrand d63162cff0 nir/repair_ssa: Replace the unreachable check with the phi builder
In a3268599f3, I attempted to fix nir_repair_ssa for unreachable
blocks.  However, that commit missed the possibility that the use is in
a block which, itself, is unreachable.  In this case, we can end up in
an infinite loop trying to replace a def with itself.  Even though a
no-op replacement is a fine operation, it keeps extending the end of the
uses list as we're walking it.  Instead of explicitly checking for the
group of conditions, just check if the phi builder gives us a different
def.  That's guaranteed to be 100% reliable and, while it lacks symmetry
with the is_valid checks, should be more reliable.

Fixes: a3268599 "nir/repair_ssa: Repair dominance for unreachable..."
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
2019-09-23 16:19:24 +00:00
..
glsl Move blob from compiler/ to util/ 2019-09-19 19:56:22 +00:00
nir nir/repair_ssa: Replace the unreachable check with the phi builder 2019-09-23 16:19:24 +00:00
spirv spirv: Add missing break for capability handling 2019-09-18 15:49:14 -07:00
Android.glsl.gen.mk mesa: android: Remove unnecessary dependency tracking rules 2019-05-06 11:29:25 +00:00
Android.glsl.mk android: glsl: build shader cache sources 2017-02-20 16:30:37 +00:00
Android.mk Android: glsl: add rules to generate ir_expression*.h header files 2016-09-06 15:58:55 +01:00
Android.nir.gen.mk nir: Add missing dependency in Android.nir.gen.mk 2019-08-19 09:53:18 +03:00
Android.nir.mk android: fix libmesa_nir build 2017-07-21 08:47:56 +03:00
builtin_type_macros.h glsl_types: vec8/vec16 support 2018-03-25 10:42:54 -04:00
glsl_types.cpp compiler: ensure glsl types are not created without a reference 2019-08-21 09:44:10 +02:00
glsl_types.h Move blob from compiler/ to util/ 2019-09-19 19:56:22 +00:00
Makefile.sources Move blob from compiler/ to util/ 2019-09-19 19:56:22 +00:00
meson.build Move blob from compiler/ to util/ 2019-09-19 19:56:22 +00:00
nir_types.cpp compiler: Add glsl_contains_opaque() helper 2019-09-10 14:36:46 -07:00
nir_types.h compiler: Add glsl_contains_opaque() helper 2019-09-10 14:36:46 -07:00
SConscript spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
SConscript.glsl scons: Generate float64_glsl.h for glsl_to_nir fp64 lowering 2019-03-02 14:33:44 -08:00
SConscript.nir nir: mako all the intrinsics 2018-03-27 08:36:37 -04:00
SConscript.spirv spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
shader_enums.c glsl: Optionally declare gl_PointCoord as a system value 2019-07-18 13:20:39 +00:00
shader_enums.h spirv/nir: keep track of SPV_KHR_float_controls execution modes 2019-09-17 23:39:18 +03:00
shader_info.h spirv/nir: keep track of SPV_KHR_float_controls execution modes 2019-09-17 23:39:18 +03:00