Skip to content

nir: Add handling large constants in vectors

Now nir_opt_large_constants can handle vectors with separated data from nir_lower_load_const_to_scalar. E.g:

vec1 32 ssa_312 = load_const (0x3f0328f1 = 0.512343)
vec1 32 ssa_313 = load_const (0x3f4b716a = 0.794699)
vec1 32 ssa_314 = load_const (0x3e83270f = 0.256157)
vec3 32 ssa_315 = vec3 ssa_312, ssa_313, ssa_314
intrinsic store_deref (ssa_105, ssa_315) (wrmask=xyz /*7*/, access=0)

No shader-db changes. Shader test attached to that merge request. const.shader_test

Closes: #5852 (closed)

Signed-off-by: Mykhailo Skorokhodov mykhailo.skorokhodov@globallogic.com

Edited by Michael Skorokhodov

Merge request reports