diff options
author | Jason Ekstrand <[email protected]> | 2015-04-02 16:38:30 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2015-04-03 14:12:49 -0700 |
commit | 52e718097fa7dc808b3e8b43a8fd14a5b2b64797 (patch) | |
tree | 6c78714e75762396a9b1446f24fbb67cb77a7bb7 /src/glsl/nir/nir.h | |
parent | bff421332661bfd0f82ab9eee9e4fec9d06ed1a1 (diff) |
nir: Add a cubemap normalizing pass
This commit adds a pass to L1-normalize cube-map coordinates. Some hardware
such as i965 requires that largest cube-map coordinate is +-1. We had a
pass to perform this normalization in GLSL IR but we need it in NIR for
cube maps on ARB programs to work correctly.
Reviewed-by: Jordan Justen <[email protected]>
v2 (Suggested by Eric):
- Do a vector fabs and split into components later
- Move to core NIR
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/glsl/nir/nir.h')
-rw-r--r-- | src/glsl/nir/nir.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/glsl/nir/nir.h b/src/glsl/nir/nir.h index 0509e64e1e2..199ecc0e3d3 100644 --- a/src/glsl/nir/nir.h +++ b/src/glsl/nir/nir.h @@ -1616,6 +1616,8 @@ void nir_lower_tex_projector(nir_shader *shader); void nir_lower_atomics(nir_shader *shader); void nir_lower_to_source_mods(nir_shader *shader); +void nir_normalize_cubemap_coords(nir_shader *shader); + void nir_live_variables_impl(nir_function_impl *impl); bool nir_ssa_defs_interfere(nir_ssa_def *a, nir_ssa_def *b); |