lavapipe: enable subgroup shuffle operations
Bits flipped in VkPhysicalDeviceSubgroupProperties.supportedOperations: * SUBGROUP_FEATURE_SHUFFLE_BIT * SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT Signed-off-by: Autumn on Tape <autumn@cyfox.net> Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13671>
This commit is contained in:
committed by
Marge Bot
parent
30817f7aed
commit
433ec23457
@@ -1007,6 +1007,10 @@ lvp_get_physical_device_properties_1_1(struct lvp_physical_device *pdevice,
|
||||
p->subgroupSupportedOperations = VK_SUBGROUP_FEATURE_BASIC_BIT | VK_SUBGROUP_FEATURE_VOTE_BIT | VK_SUBGROUP_FEATURE_ARITHMETIC_BIT | VK_SUBGROUP_FEATURE_BALLOT_BIT;
|
||||
p->subgroupQuadOperationsInAllStages = false;
|
||||
|
||||
#if LLVM_VERSION_MAJOR >= 10
|
||||
p->subgroupSupportedOperations |= VK_SUBGROUP_FEATURE_SHUFFLE_BIT | VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT;
|
||||
#endif
|
||||
|
||||
p->pointClippingBehavior = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES;
|
||||
p->maxMultiviewViewCount = 6;
|
||||
p->maxMultiviewInstanceIndex = INT_MAX;
|
||||
|
||||
@@ -849,6 +849,9 @@ lvp_shader_compile_to_ir(struct lvp_pipeline *pipeline,
|
||||
.subgroup_basic = true,
|
||||
.subgroup_ballot = true,
|
||||
.subgroup_quad = true,
|
||||
#if LLVM_VERSION_MAJOR >= 10
|
||||
.subgroup_shuffle = true,
|
||||
#endif
|
||||
.subgroup_vote = true,
|
||||
.vk_memory_model = true,
|
||||
.vk_memory_model_device_scope = true,
|
||||
|
||||
@@ -29,6 +29,8 @@
|
||||
#include <assert.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include <llvm/Config/llvm-config.h>
|
||||
|
||||
#include "util/macros.h"
|
||||
#include "util/list.h"
|
||||
#include "util/u_dynarray.h"
|
||||
|
||||
@@ -44,6 +44,6 @@ liblavapipe_st = static_library(
|
||||
c_args : [ c_msvc_compat_args, lvp_flags ],
|
||||
gnu_symbol_visibility : 'hidden',
|
||||
include_directories : [ inc_include, inc_src, inc_util, inc_gallium, inc_compiler, inc_gallium_aux ],
|
||||
dependencies : [ idep_nir, idep_mesautil, idep_vulkan_util, idep_vulkan_wsi,
|
||||
dependencies : [ dep_llvm, idep_nir, idep_mesautil, idep_vulkan_util, idep_vulkan_wsi,
|
||||
idep_vulkan_runtime, lvp_deps ]
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user