From ea51a679968b2c355e822503e1ad27d18e85a215 Mon Sep 17 00:00:00 2001 From: Konstantin Seurer Date: Tue, 3 Jun 2025 21:17:49 +0200 Subject: [PATCH] vulkan/bvh: Enable glsl extensions in meson Having a list of all enabled/used extensions in meson allows us to get rid of a lot of boilerplate in every bvh build shader. Reviewed-by: Alyssa Rosenzweig Reviewed-by: Lionel Landwerlin Part-of: --- src/amd/vulkan/bvh/copy.comp | 11 -------- src/amd/vulkan/bvh/copy_blas_addrs_gfx12.comp | 11 -------- src/amd/vulkan/bvh/encode.comp | 12 --------- src/amd/vulkan/bvh/encode_gfx12.comp | 16 ------------ src/amd/vulkan/bvh/header.comp | 11 -------- src/amd/vulkan/bvh/leaf.comp | 13 ---------- src/amd/vulkan/bvh/meson.build | 1 + src/amd/vulkan/bvh/update.comp | 12 --------- src/amd/vulkan/bvh/update_gfx12.comp | 16 ------------ src/freedreno/vulkan/bvh/copy.comp | 11 -------- src/freedreno/vulkan/bvh/encode.comp | 12 --------- src/freedreno/vulkan/bvh/header.comp | 11 -------- src/freedreno/vulkan/bvh/meson.build | 1 + src/intel/vulkan/bvh/copy.comp | 11 -------- src/intel/vulkan/bvh/encode.comp | 13 ---------- src/intel/vulkan/bvh/header.comp | 11 -------- src/intel/vulkan/bvh/meson.build | 1 + src/vulkan/runtime/bvh/lbvh_generate_ir.comp | 12 --------- src/vulkan/runtime/bvh/lbvh_main.comp | 11 -------- src/vulkan/runtime/bvh/leaf.comp | 4 +-- src/vulkan/runtime/bvh/leaf.h | 12 --------- src/vulkan/runtime/bvh/meson.build | 25 +++++++++++++++++++ src/vulkan/runtime/bvh/morton.comp | 11 -------- src/vulkan/runtime/bvh/ploc_internal.comp | 15 ----------- 24 files changed, 29 insertions(+), 235 deletions(-) diff --git a/src/amd/vulkan/bvh/copy.comp b/src/amd/vulkan/bvh/copy.comp index c348e2e4628..f747641e3d3 100644 --- a/src/amd/vulkan/bvh/copy.comp +++ b/src/amd/vulkan/bvh/copy.comp @@ -6,17 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_interface.h" diff --git a/src/amd/vulkan/bvh/copy_blas_addrs_gfx12.comp b/src/amd/vulkan/bvh/copy_blas_addrs_gfx12.comp index 3145e89fd05..f976acf09b2 100644 --- a/src/amd/vulkan/bvh/copy_blas_addrs_gfx12.comp +++ b/src/amd/vulkan/bvh/copy_blas_addrs_gfx12.comp @@ -6,17 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_interface.h" diff --git a/src/amd/vulkan/bvh/encode.comp b/src/amd/vulkan/bvh/encode.comp index 314a7a99b08..50947e2b69e 100644 --- a/src/amd/vulkan/bvh/encode.comp +++ b/src/amd/vulkan/bvh/encode.comp @@ -6,18 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_helpers.h" diff --git a/src/amd/vulkan/bvh/encode_gfx12.comp b/src/amd/vulkan/bvh/encode_gfx12.comp index d16294b3fe8..8c8d94b9322 100644 --- a/src/amd/vulkan/bvh/encode_gfx12.comp +++ b/src/amd/vulkan/bvh/encode_gfx12.comp @@ -7,22 +7,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require -#extension GL_KHR_shader_subgroup_basic : require -#extension GL_KHR_shader_subgroup_shuffle : require -#extension GL_KHR_shader_subgroup_ballot : require -#extension GL_KHR_shader_subgroup_clustered : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #define GFX12 diff --git a/src/amd/vulkan/bvh/header.comp b/src/amd/vulkan/bvh/header.comp index 7b5771aa299..2465d04d7ea 100644 --- a/src/amd/vulkan/bvh/header.comp +++ b/src/amd/vulkan/bvh/header.comp @@ -6,17 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_interface.h" diff --git a/src/amd/vulkan/bvh/leaf.comp b/src/amd/vulkan/bvh/leaf.comp index 6e2c34edf8a..d86a86bacd1 100644 --- a/src/amd/vulkan/bvh/leaf.comp +++ b/src/amd/vulkan/bvh/leaf.comp @@ -23,19 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_shader_subgroup_vote : require -#extension GL_KHR_shader_subgroup_arithmetic : require -#extension GL_KHR_shader_subgroup_ballot : require - #include "build_helpers.h" mat3 abs(mat3 in_mat) { diff --git a/src/amd/vulkan/bvh/meson.build b/src/amd/vulkan/bvh/meson.build index d37a6215087..654692cc31c 100644 --- a/src/amd/vulkan/bvh/meson.build +++ b/src/amd/vulkan/bvh/meson.build @@ -56,6 +56,7 @@ foreach s : bvh_shaders prog_glslang, '-V', '-I' + bvh_include_dir, '-I' + vk_bvh_include_dir, '--target-env', 'spirv1.5', '-x', '-o', '@OUTPUT@', '@INPUT@', glslang_depfile, glslang_quiet, ] + command += vk_glsl_shader_preamble _bvh_name = '@0@.spv.h'.format(s[1]) bvh_spv += custom_target( diff --git a/src/amd/vulkan/bvh/update.comp b/src/amd/vulkan/bvh/update.comp index b79c3eccc2f..e8b0123ebf3 100644 --- a/src/amd/vulkan/bvh/update.comp +++ b/src/amd/vulkan/bvh/update.comp @@ -6,18 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_interface.h" diff --git a/src/amd/vulkan/bvh/update_gfx12.comp b/src/amd/vulkan/bvh/update_gfx12.comp index 026beb4e0b2..cfbaee947b9 100644 --- a/src/amd/vulkan/bvh/update_gfx12.comp +++ b/src/amd/vulkan/bvh/update_gfx12.comp @@ -6,22 +6,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require -#extension GL_KHR_shader_subgroup_basic : require -#extension GL_KHR_shader_subgroup_shuffle : require -#extension GL_KHR_shader_subgroup_ballot : require -#extension GL_KHR_shader_subgroup_clustered : require - layout(local_size_x = 64, local_size_y = 1, local_size_z = 1) in; #include "build_interface.h" diff --git a/src/freedreno/vulkan/bvh/copy.comp b/src/freedreno/vulkan/bvh/copy.comp index c36c4cfde12..ee24b7d3ca4 100644 --- a/src/freedreno/vulkan/bvh/copy.comp +++ b/src/freedreno/vulkan/bvh/copy.comp @@ -23,17 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 128, local_size_y = 1, local_size_z = 1) in; #include "tu_build_interface.h" diff --git a/src/freedreno/vulkan/bvh/encode.comp b/src/freedreno/vulkan/bvh/encode.comp index 3cc3176503e..4a5e35e7f3d 100644 --- a/src/freedreno/vulkan/bvh/encode.comp +++ b/src/freedreno/vulkan/bvh/encode.comp @@ -23,18 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require - layout(local_size_x = 128, local_size_y = 1, local_size_z = 1) in; #include "tu_build_helpers.h" diff --git a/src/freedreno/vulkan/bvh/header.comp b/src/freedreno/vulkan/bvh/header.comp index d2c1f96f50f..8fa54599b20 100644 --- a/src/freedreno/vulkan/bvh/header.comp +++ b/src/freedreno/vulkan/bvh/header.comp @@ -23,17 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; #include "tu_build_interface.h" diff --git a/src/freedreno/vulkan/bvh/meson.build b/src/freedreno/vulkan/bvh/meson.build index 02ec2a78e7b..c2644a4b97b 100644 --- a/src/freedreno/vulkan/bvh/meson.build +++ b/src/freedreno/vulkan/bvh/meson.build @@ -51,6 +51,7 @@ foreach s : bvh_shaders prog_glslang, '-V', '-I' + vk_bvh_include_dir, '-I' + tu_bvh_include_dir, '--target-env', 'spirv1.5', '-x', '-o', '@OUTPUT@', '@INPUT@' ] command += glslang_quiet + command += vk_glsl_shader_preamble foreach define : s[2] command += '-D' + define diff --git a/src/intel/vulkan/bvh/copy.comp b/src/intel/vulkan/bvh/copy.comp index 17867445b1a..77069a07ac0 100644 --- a/src/intel/vulkan/bvh/copy.comp +++ b/src/intel/vulkan/bvh/copy.comp @@ -5,17 +5,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 128, local_size_y = 1, local_size_z = 1) in; #include "anv_build_interface.h" diff --git a/src/intel/vulkan/bvh/encode.comp b/src/intel/vulkan/bvh/encode.comp index 29f13276081..8f7e6b873d8 100644 --- a/src/intel/vulkan/bvh/encode.comp +++ b/src/intel/vulkan/bvh/encode.comp @@ -5,19 +5,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require -#extension GL_EXT_shader_atomic_int64: require - layout(local_size_x = 32, local_size_y = 1, local_size_z = 1) in; #include "anv_build_helpers.h" diff --git a/src/intel/vulkan/bvh/header.comp b/src/intel/vulkan/bvh/header.comp index baf0b66e029..bd477ec85ed 100644 --- a/src/intel/vulkan/bvh/header.comp +++ b/src/intel/vulkan/bvh/header.comp @@ -5,17 +5,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; #include "anv_build_interface.h" diff --git a/src/intel/vulkan/bvh/meson.build b/src/intel/vulkan/bvh/meson.build index 0b7e4d5ec85..32fe6fb9c6e 100644 --- a/src/intel/vulkan/bvh/meson.build +++ b/src/intel/vulkan/bvh/meson.build @@ -34,6 +34,7 @@ foreach shader : bvh_shaders '-DGFX_VERx10=' + define_ver # so that we can use this macro inside shaders ] command += glslang_quiet + command += vk_glsl_shader_preamble shader_name = shader.split('.')[0] output_name = 'gfx' + file_name_ver + '_' + shader_name + '.spv.h' diff --git a/src/vulkan/runtime/bvh/lbvh_generate_ir.comp b/src/vulkan/runtime/bvh/lbvh_generate_ir.comp index 7c612c78935..b2ab2b8479e 100644 --- a/src/vulkan/runtime/bvh/lbvh_generate_ir.comp +++ b/src/vulkan/runtime/bvh/lbvh_generate_ir.comp @@ -23,18 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require - #include "vk_build_interface.h" layout(local_size_x_id = SUBGROUP_SIZE_ID, local_size_y = 1, local_size_z = 1) in; diff --git a/src/vulkan/runtime/bvh/lbvh_main.comp b/src/vulkan/runtime/bvh/lbvh_main.comp index c79a3164eb9..875dbd640be 100644 --- a/src/vulkan/runtime/bvh/lbvh_main.comp +++ b/src/vulkan/runtime/bvh/lbvh_main.comp @@ -23,17 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - #include "vk_build_interface.h" layout(local_size_x_id = SUBGROUP_SIZE_ID, local_size_y = 1, local_size_z = 1) in; diff --git a/src/vulkan/runtime/bvh/leaf.comp b/src/vulkan/runtime/bvh/leaf.comp index 53713327688..fe847ddd765 100644 --- a/src/vulkan/runtime/bvh/leaf.comp +++ b/src/vulkan/runtime/bvh/leaf.comp @@ -23,6 +23,4 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#include "leaf.h" \ No newline at end of file +#include "leaf.h" diff --git a/src/vulkan/runtime/bvh/leaf.h b/src/vulkan/runtime/bvh/leaf.h index 9f56e6326cb..e3da62555ea 100644 --- a/src/vulkan/runtime/bvh/leaf.h +++ b/src/vulkan/runtime/bvh/leaf.h @@ -21,18 +21,6 @@ * IN THE SOFTWARE. */ -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_shader_subgroup_vote : require -#extension GL_KHR_shader_subgroup_arithmetic : require -#extension GL_KHR_shader_subgroup_ballot : require - #include "vk_build_interface.h" layout(local_size_x_id = SUBGROUP_SIZE_ID, local_size_y = 1, local_size_z = 1) in; diff --git a/src/vulkan/runtime/bvh/meson.build b/src/vulkan/runtime/bvh/meson.build index 6a3b20ed711..5637f63dfcf 100644 --- a/src/vulkan/runtime/bvh/meson.build +++ b/src/vulkan/runtime/bvh/meson.build @@ -50,12 +50,37 @@ vk_bvh_includes = files( 'vk_bvh.h', ) +vk_glsl_shader_extensions = [ + 'GL_GOOGLE_include_directive', + 'GL_EXT_shader_explicit_arithmetic_types_int8', + 'GL_EXT_shader_explicit_arithmetic_types_int16', + 'GL_EXT_shader_explicit_arithmetic_types_int32', + 'GL_EXT_shader_explicit_arithmetic_types_int64', + 'GL_EXT_shader_explicit_arithmetic_types_float16', + 'GL_EXT_scalar_block_layout', + 'GL_EXT_buffer_reference', + 'GL_EXT_buffer_reference2', + 'GL_KHR_memory_scope_semantics', + 'GL_KHR_shader_subgroup_arithmetic', + 'GL_KHR_shader_subgroup_basic', + 'GL_KHR_shader_subgroup_shuffle', + 'GL_KHR_shader_subgroup_ballot', + 'GL_KHR_shader_subgroup_clustered', + 'GL_EXT_shader_atomic_int64', +] + +vk_glsl_shader_preamble = [] +foreach ext : vk_glsl_shader_extensions + vk_glsl_shader_preamble += ['-P#extension ' + ext + ' : require'] +endforeach + bvh_spv = [] foreach s : bvh_shaders command = [ prog_glslang, '-V', '-I' + vk_bvh_include_dir, '--target-env', 'spirv1.5', '-x', '-o', '@OUTPUT@', '@INPUT@' ] + (with_mesa_debug ? ['-g'] : []) command += glslang_quiet + command += vk_glsl_shader_preamble bvh_spv += custom_target( s[1] + '.spv.h', diff --git a/src/vulkan/runtime/bvh/morton.comp b/src/vulkan/runtime/bvh/morton.comp index 75a6f15baf3..793fc2c0272 100644 --- a/src/vulkan/runtime/bvh/morton.comp +++ b/src/vulkan/runtime/bvh/morton.comp @@ -23,17 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require - #include "vk_build_interface.h" layout(local_size_x_id = SUBGROUP_SIZE_ID, local_size_y = 1, local_size_z = 1) in; diff --git a/src/vulkan/runtime/bvh/ploc_internal.comp b/src/vulkan/runtime/bvh/ploc_internal.comp index 68f1f809b2c..a158b1fd947 100644 --- a/src/vulkan/runtime/bvh/ploc_internal.comp +++ b/src/vulkan/runtime/bvh/ploc_internal.comp @@ -23,21 +23,6 @@ #version 460 -#extension GL_GOOGLE_include_directive : require - -#extension GL_EXT_shader_explicit_arithmetic_types_int8 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int16 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int32 : require -#extension GL_EXT_shader_explicit_arithmetic_types_int64 : require -#extension GL_EXT_shader_explicit_arithmetic_types_float16 : require -#extension GL_EXT_scalar_block_layout : require -#extension GL_EXT_buffer_reference : require -#extension GL_EXT_buffer_reference2 : require -#extension GL_KHR_memory_scope_semantics : require -#extension GL_KHR_shader_subgroup_vote : require -#extension GL_KHR_shader_subgroup_arithmetic : require -#extension GL_KHR_shader_subgroup_ballot : require - layout(local_size_x = 1024, local_size_y = 1, local_size_z = 1) in; #define USE_GLOBAL_SYNC