This patch series adds a bunch of random things that are used by the SPIR-V front-end and by our Vulkan driver. It's in no particular order (other than ensuring that it builds) and most of the newly added things don't have a consumer outside our Vulkan driver. With this series and the one for reworking uniforms in the i965 backend, we are down to an almost zero delta between master and the vulkan branch as far as existing folders are concerned.
Jason Ekstrand (26): nir/Makefile: Fix alphabetization nir: Add a descriptor_set field to nir_variable nir/intrinsics: Add a vulkan_resource_index intrinsic nir: Add a variable_foreach_safe helper nir/types: Add a wrapper for count_attribute_slots nir: Add a helper for getting an attribute slot mask for a variable nir: Add a pass for gathering various bits of shader info nir/builder: Add a helper for building fdot instructions nir/builder: Add a helper for storing to variable derefs nir/builder: Add a helper for creating undefs glsl/shader_enums: Add an enum for Vulkan InstanceIndex glsl/shader_enums: Add the other two compute builtins nir/lower_system_values: Add support for several computed values nir/sweep: Sweep function parameters nir: Add more modulus opcodes i965: Implement the new imod and irem opcodes i965/fs: Move the code for load/store_shared to emit_cs_intrinsic nir/algebraic: Add lowering for ldexp nir: Add an opcode for stomping a 32-bit value to 16-bit precision i965: Add an implemnetation of nir_op_fquantize2f16 i965/nir: Provide a default LOD for buffer textures nir: Add a helper for getting the unique function in a shader nir/lower_out_to_temp: Steal the output's constant initializer nir/lower_out_to_temp: Add an "entrypoint" parameter nir: Add a helper for getting the current block from a cursor nir/dead_variables: Configurably work with any variable mode src/compiler/Makefile.sources | 7 +- src/compiler/nir/Makefile.sources | 7 +- src/compiler/nir/glsl_to_nir.cpp | 3 +- src/compiler/nir/nir.h | 80 +++++++- src/compiler/nir/nir_builder.h | 47 +++++ src/compiler/nir/nir_gather_info.c | 126 ++++++++++++ src/compiler/nir/nir_intrinsics.h | 20 ++ .../nir/nir_lower_outputs_to_temporaries.c | 7 +- src/compiler/nir/nir_lower_system_values.c | 74 ++++++- src/compiler/nir/nir_opcodes.py | 17 +- src/compiler/nir/nir_opt_algebraic.py | 28 +++ src/compiler/nir/nir_print.c | 2 + src/compiler/nir/nir_remove_dead_variables.c | 33 +++- src/compiler/nir/nir_sweep.c | 2 + src/compiler/nir_types.cpp | 7 + src/compiler/nir_types.h | 3 + src/compiler/shader_enums.c | 3 + src/compiler/shader_enums.h | 9 + src/gallium/drivers/freedreno/ir3/ir3_nir.c | 2 +- src/gallium/drivers/vc4/vc4_program.c | 2 +- src/mesa/drivers/dri/i965/brw_fs_nir.cpp | 216 +++++++++++++-------- src/mesa/drivers/dri/i965/brw_nir.c | 2 +- src/mesa/drivers/dri/i965/brw_vec4_nir.cpp | 61 ++++++ 23 files changed, 655 insertions(+), 103 deletions(-) create mode 100644 src/compiler/nir/nir_gather_info.c -- 2.5.0.400.gff86faf _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev