diff options
author | Jason Ekstrand <jason.ekstrand@intel.com> | 2016-08-24 21:49:10 -0700 |
---|---|---|
committer | Jason Ekstrand <jason.ekstrand@intel.com> | 2016-08-25 14:08:07 -0700 |
commit | 78715c7211aa81a1b189c3a29df4b2b98d2e0fc3 (patch) | |
tree | cf4f557248e8b2d5362bf8d498ceeadc70eabd8e /src/compiler/nir/nir_lower_alu_to_scalar.c | |
parent | 3eddf5219e3ac17e46403849b40bfd217eb6e9d8 (diff) | |
download | external_mesa3d-78715c7211aa81a1b189c3a29df4b2b98d2e0fc3.tar.gz external_mesa3d-78715c7211aa81a1b189c3a29df4b2b98d2e0fc3.tar.bz2 external_mesa3d-78715c7211aa81a1b189c3a29df4b2b98d2e0fc3.zip |
nir/phi_builder: Don't recurse in value_get_block_def
In some programs, we can have very deep dominance trees and the recursion
can cause us to risk stack overflows. Instead, we replace the recursion
with a pair of loops, one at the start and one at the end. This is
functionally equivalent to what we had before and it's actually a bit
easier to read in the new form without the recursion.
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97225
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/compiler/nir/nir_lower_alu_to_scalar.c')
0 files changed, 0 insertions, 0 deletions