[Mesa-dev] [PATCH] mesa/spirv: move and rename nir_spirv_supported_capabilities

Alejandro PiƱeiro apinheiro at igalia.com
Thu Dec 7 08:29:27 UTC 2017


To avoid any vulkan driver to include the GL mtypes.h. Renamed as
eventually this could be used by drivers not using nir.
---

Sending the proposed alternative in advance, so if Jason agrees, it is
just about Rb it.

 src/compiler/spirv/nir_spirv.h |  4 ++--
 src/compiler/spirv/spirv.h     | 15 +++++++++++++++
 src/mesa/main/mtypes.h         | 14 +-------------
 3 files changed, 18 insertions(+), 15 deletions(-)

diff --git a/src/compiler/spirv/nir_spirv.h b/src/compiler/spirv/nir_spirv.h
index 113bd710a00..71f44e07dba 100644
--- a/src/compiler/spirv/nir_spirv.h
+++ b/src/compiler/spirv/nir_spirv.h
@@ -29,7 +29,7 @@
 #define _NIR_SPIRV_H_
 
 #include "compiler/nir/nir.h"
-#include "main/mtypes.h"
+#include "compiler/spirv/spirv.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -58,7 +58,7 @@ struct spirv_to_nir_options {
     */
    bool lower_workgroup_access_to_offsets;
 
-   struct nir_spirv_supported_capabilities caps;
+   struct spirv_supported_capabilities caps;
 
    struct {
       void (*func)(void *private_data,
diff --git a/src/compiler/spirv/spirv.h b/src/compiler/spirv/spirv.h
index 61559a1c9ca..ce2dcf7657f 100644
--- a/src/compiler/spirv/spirv.h
+++ b/src/compiler/spirv/spirv.h
@@ -48,6 +48,8 @@
 #ifndef spirv_H
 #define spirv_H
 
+#include <stdbool.h>
+
 typedef unsigned int SpvId;
 
 #define SPV_VERSION 0x10200
@@ -994,5 +996,18 @@ typedef enum SpvOp_ {
     SpvOpMax = 0x7fffffff,
 } SpvOp;
 
+struct spirv_supported_capabilities {
+   bool float64;
+   bool image_ms_array;
+   bool tessellation;
+   bool draw_parameters;
+   bool image_read_without_format;
+   bool image_write_without_format;
+   bool int64;
+   bool multiview;
+   bool variable_pointers;
+   bool storage_16bit;
+};
+
 #endif  // #ifndef spirv_H
 
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 7b7137624c7..0f1a0f70827 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -49,6 +49,7 @@
 #include "util/bitscan.h"
 #include "util/simple_mtx.h"
 #include "util/u_dynarray.h"
+#include "compiler/spirv/spirv.h"
 
 
 #ifdef __cplusplus
@@ -3578,19 +3579,6 @@ struct gl_program_constants
    GLuint MaxShaderStorageBlocks;
 };
 
-struct nir_spirv_supported_capabilities {
-   bool float64;
-   bool image_ms_array;
-   bool tessellation;
-   bool draw_parameters;
-   bool image_read_without_format;
-   bool image_write_without_format;
-   bool int64;
-   bool multiview;
-   bool variable_pointers;
-   bool storage_16bit;
-};
-
 /**
  * Constants which may be overridden by device driver during context creation
  * but are never changed after that.
-- 
2.11.0



More information about the mesa-dev mailing list