aboutsummaryrefslogtreecommitdiffstats
path: root/src/compiler/spirv/vtn_private.h
diff options
context:
space:
mode:
authorSamuel Pitoiset <[email protected]>2020-05-05 18:25:08 +0200
committerMarge Bot <[email protected]>2020-05-15 19:18:53 +0000
commit844d561c580188dad583dd4bad3b77d55e39372f (patch)
tree6aa7bfa3508708809cbd8de14849f1440370774e /src/compiler/spirv/vtn_private.h
parent9d1821adf0bc51958becf116d6df5c65514d58b6 (diff)
spirv: handle OpCopyObject correctly with any types
This implements OpCopyObject as a blind copy and propagates the access mask properly even if the source object type isn't a SSA value. This fixes some recent dEQP-VK.descriptor_indexing.* failures since CTS changed and now apply nonUniformEXT after constructing a combined image/sampler. Original patch is from Jason Ekstrand. Signed-off-by: Samuel Pitoiset <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4909>
Diffstat (limited to 'src/compiler/spirv/vtn_private.h')
-rw-r--r--src/compiler/spirv/vtn_private.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/compiler/spirv/vtn_private.h b/src/compiler/spirv/vtn_private.h
index 787dfdb244e..484ab853a82 100644
--- a/src/compiler/spirv/vtn_private.h
+++ b/src/compiler/spirv/vtn_private.h
@@ -807,6 +807,10 @@ struct vtn_value *vtn_push_value_pointer(struct vtn_builder *b,
struct vtn_value *vtn_push_ssa(struct vtn_builder *b, uint32_t value_id,
struct vtn_type *type, struct vtn_ssa_value *ssa);
+void
+vtn_copy_value(struct vtn_builder *b, uint32_t src_value_id,
+ uint32_t dst_value_id);
+
struct vtn_ssa_value *vtn_create_ssa_value(struct vtn_builder *b,
const struct glsl_type *type);