first series here: https://lists.freedesktop.org/archives/mesa-dev/2018-February/187275.html
change summery since v1: * removed 64 bit shift patch * reworked new intrinsics * fixed some int8/uint8 issues * add handling for CL types * add support for lowering loading kernel args in nir_lower_io The biggest addition to the last series is the code for lowering load_vars of kernel arguments. For this we have to calculate the size and alignment of types correctly according to C rules. With that it is possible to lower a load_var into a load_kernel_param with the correct offset as its source. Rob still wants to rework his pointer support patch afaik. One of the biggest problems we currently have is handling of pointers into Function Memory to load struct members. Karol Herbst (9): compiler: int8/uint8 support vtn: handle SpvExecutionModelKernel nir: add load/store_global intrinsics nir/vtn: implement BuiltInGlobalSize glsl: add packed for struct types glsl: add glsl_base_get_byte_size RFC glsl: add cl_size and cl_alignment nir: add load_kernel_param RFC nir/lower_io: lower kernel entry param load_vars to load_kernel_param Rob Clark (9): nir/vtn: Use imov where we might have 8 bit types nir: kernel entrypoints can have arguments nir/vtn: implement SpvOpCopyMemorySized nir/vtn: handle WorkGroupSize for kernels nir/vtn: add OpLifetime* nir/vtn: add OpConvertPtrToU nir/vtn: print extension name in fail msg nir: use load_local_group_size RFC: nir/vtn: "raw" pointer support src/compiler/builtin_type_macros.h | 10 + src/compiler/glsl/ast_to_hir.cpp | 2 + src/compiler/glsl/ir_clone.cpp | 2 + src/compiler/glsl/link_uniform_initializers.cpp | 2 + src/compiler/glsl_types.cpp | 98 +++++++++- src/compiler/glsl_types.h | 60 +++++- src/compiler/nir/nir.h | 5 +- src/compiler/nir/nir_intrinsics.h | 10 +- src/compiler/nir/nir_lower_io.c | 39 +++- src/compiler/nir/nir_lower_system_values.c | 31 ++- src/compiler/nir_types.cpp | 29 ++- src/compiler/nir_types.h | 35 +--- src/compiler/shader_enums.c | 1 + src/compiler/shader_enums.h | 2 + src/compiler/spirv/spirv_to_nir.c | 128 +++++++++--- src/compiler/spirv/vtn_alu.c | 1 + src/compiler/spirv/vtn_private.h | 28 ++- src/compiler/spirv/vtn_variables.c | 249 +++++++++++++++++++++--- src/intel/compiler/brw_fs.cpp | 3 + src/intel/compiler/brw_shader.cpp | 4 + src/intel/compiler/brw_vec4_visitor.cpp | 2 + src/mesa/program/ir_to_mesa.cpp | 4 + src/mesa/state_tracker/st_glsl_types.cpp | 2 + 23 files changed, 650 insertions(+), 97 deletions(-) -- 2.14.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev