mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 15:10:10 +01:00
This introduces new vec8 and vec16 instructions (which are the only instructions taking more than 4 sources), in order to construct 8 and 16 component vectors. In order to avoid fixing up the non-autogenerated nir_build_alu() sites and making them pass 16 src args for the benefit of the two instructions that take more than 4 srcs (ie vec8 and vec16), nir_build_alu() is has nir_build_alu_tail() split out and re-used by nir_build_alu2() (which is used for the > 4 src args case). v2 (Karol Herbst): use nir_build_alu2 for vec8 and vec16 use python's array multiplication syntax add nir_op_vec helper simplify nir_vec nir_build_alu_tail -> nir_builder_alu_instr_finish_and_insert use nir_build_alu for opcodes with <= 4 sources v3 (Karol Herbst): fix nir_serialize v4 (Dave Airlie): fix serialization of glsl_type handle vec8/16 in lowering of bools v5 (Karol Herbst): fix load store vectorizer Signed-off-by: Karol Herbst <kherbst@redhat.com> Reviewed-by: Dave Airlie <airlied@redhat.com> |
||
|---|---|---|
| .. | ||
| gl_spirv.c | ||
| GLSL.ext.AMD.h | ||
| GLSL.std.450.h | ||
| meson.build | ||
| nir_spirv.h | ||
| OpenCL.std.h | ||
| spirv.core.grammar.json | ||
| spirv.h | ||
| spirv2nir.c | ||
| spirv_info.h | ||
| spirv_info_c.py | ||
| spirv_to_nir.c | ||
| vtn_alu.c | ||
| vtn_amd.c | ||
| vtn_cfg.c | ||
| vtn_gather_types_c.py | ||
| vtn_glsl450.c | ||
| vtn_opencl.c | ||
| vtn_private.h | ||
| vtn_subgroup.c | ||
| vtn_variables.c | ||