nir: Add a new lowering option to lower 3D surfaces from txd to txl.
Tested on gen9. v2: Rename lower_txd_3d_surafaces flag to lower_txd_3d (Jason Ekstrand) Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
@@ -3008,6 +3008,11 @@ typedef struct nir_lower_tex_options {
|
||||
*/
|
||||
bool lower_txd_cube_map;
|
||||
|
||||
/**
|
||||
* If true, lower nir_texop_txd on 3D surfaces with nir_texop_txl.
|
||||
*/
|
||||
bool lower_txd_3d;
|
||||
|
||||
/**
|
||||
* If true, lower nir_texop_txd on shadow samplers (except cube maps)
|
||||
* with nir_texop_txl. Notice that cube map shadow samplers are lowered
|
||||
|
@@ -905,7 +905,9 @@ nir_lower_tex_block(nir_block *block, nir_builder *b,
|
||||
(options->lower_txd_shadow_clamp && tex->is_shadow && has_min_lod) ||
|
||||
(options->lower_txd_offset_clamp && has_offset && has_min_lod) ||
|
||||
(options->lower_txd_cube_map &&
|
||||
tex->sampler_dim == GLSL_SAMPLER_DIM_CUBE))) {
|
||||
tex->sampler_dim == GLSL_SAMPLER_DIM_CUBE) ||
|
||||
(options->lower_txd_3d &&
|
||||
tex->sampler_dim == GLSL_SAMPLER_DIM_3D))) {
|
||||
lower_gradient(b, tex);
|
||||
progress = true;
|
||||
continue;
|
||||
|
Reference in New Issue
Block a user