Re: [Mesa-dev] [PATCH] spirv: add SpvCapabilityInt64Atomics

2018-12-05 Thread Jason Ekstrand

Rb


On December 5, 2018 07:26:22 Samuel Pitoiset  wrote:


Required for VK_KHR_shader_atomic_int64.

Signed-off-by: Samuel Pitoiset 
---
src/compiler/shader_info.h| 1 +
src/compiler/spirv/spirv_to_nir.c | 5 -
2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
index 65bc0588d67..b95cc310fd6 100644
--- a/src/compiler/shader_info.h
+++ b/src/compiler/shader_info.h
@@ -62,6 +62,7 @@ struct spirv_supported_capabilities {
   bool post_depth_coverage;
   bool transform_feedback;
   bool geometry_streams;
+   bool int64_atomics;
};

typedef struct shader_info {
diff --git a/src/compiler/spirv/spirv_to_nir.c 
b/src/compiler/spirv/spirv_to_nir.c

index a05c4d236ca..22efaa276d9 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -3416,7 +3416,6 @@ vtn_handle_preamble_instruction(struct vtn_builder 
*b, SpvOp opcode,

  case SpvCapabilityVector16:
  case SpvCapabilityFloat16Buffer:
  case SpvCapabilityFloat16:
-  case SpvCapabilityInt64Atomics:
  case SpvCapabilityStorageImageMultisample:
  case SpvCapabilityInt8:
  case SpvCapabilitySparseResidency:
@@ -3447,6 +3446,10 @@ vtn_handle_preamble_instruction(struct vtn_builder 
*b, SpvOp opcode,

 spv_check_supported(geometry_streams, cap);
 break;

+  case SpvCapabilityInt64Atomics:
+ spv_check_supported(int64_atomics, cap);
+ break;
+
  case SpvCapabilityAddresses:
  case SpvCapabilityKernel:
  case SpvCapabilityImageBasic:
--
2.19.2

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev




___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


[Mesa-dev] [PATCH] spirv: add SpvCapabilityInt64Atomics

2018-12-05 Thread Samuel Pitoiset
Required for VK_KHR_shader_atomic_int64.

Signed-off-by: Samuel Pitoiset 
---
 src/compiler/shader_info.h| 1 +
 src/compiler/spirv/spirv_to_nir.c | 5 -
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
index 65bc0588d67..b95cc310fd6 100644
--- a/src/compiler/shader_info.h
+++ b/src/compiler/shader_info.h
@@ -62,6 +62,7 @@ struct spirv_supported_capabilities {
bool post_depth_coverage;
bool transform_feedback;
bool geometry_streams;
+   bool int64_atomics;
 };
 
 typedef struct shader_info {
diff --git a/src/compiler/spirv/spirv_to_nir.c 
b/src/compiler/spirv/spirv_to_nir.c
index a05c4d236ca..22efaa276d9 100644
--- a/src/compiler/spirv/spirv_to_nir.c
+++ b/src/compiler/spirv/spirv_to_nir.c
@@ -3416,7 +3416,6 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, 
SpvOp opcode,
   case SpvCapabilityVector16:
   case SpvCapabilityFloat16Buffer:
   case SpvCapabilityFloat16:
-  case SpvCapabilityInt64Atomics:
   case SpvCapabilityStorageImageMultisample:
   case SpvCapabilityInt8:
   case SpvCapabilitySparseResidency:
@@ -3447,6 +3446,10 @@ vtn_handle_preamble_instruction(struct vtn_builder *b, 
SpvOp opcode,
  spv_check_supported(geometry_streams, cap);
  break;
 
+  case SpvCapabilityInt64Atomics:
+ spv_check_supported(int64_atomics, cap);
+ break;
+
   case SpvCapabilityAddresses:
   case SpvCapabilityKernel:
   case SpvCapabilityImageBasic:
-- 
2.19.2

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev