nir: add many passes that lower and optimize 16-bit input/outputs and samplers
Added: * a pass that renumbers bases of IO intrinsics * a pass that converts mediump IO to 16 bits, optionally using the new packed varying slots * a pass that sets (forces) mediump in IO intrinsics (for testing) * a pass that remaps VARYING_SLOT_VAR[0..15]_16BIT to VARYING_SLOT_VAR[0..31] (if some shader stages don't want packed varyings) * a pass that folds type conversions around texture opcodes into those opcodes (e.g. tex(f2f32(coord), ..) is changed into tex accepting f16) * a pass that changes (legalizes) sampler src and dst types based on specified hw constraints (e.g. derivatives must be the same type as coordinates) Reviewed-by: Matt Turner <mattst88@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9050>
This commit is contained in:
@@ -168,7 +168,7 @@ files_libnir = files(
|
||||
'nir_lower_io_to_scalar.c',
|
||||
'nir_lower_io_to_vector.c',
|
||||
'nir_lower_multiview.c',
|
||||
'nir_lower_mediump_outputs.c',
|
||||
'nir_lower_mediump.c',
|
||||
'nir_lower_memcpy.c',
|
||||
'nir_lower_memory_model.c',
|
||||
'nir_lower_non_uniform_access.c',
|
||||
|
Reference in New Issue
Block a user