diff options
author | Alejandro Piñeiro <[email protected]> | 2017-12-06 09:57:18 +0100 |
---|---|---|
committer | Alejandro Piñeiro <[email protected]> | 2017-12-06 22:25:52 +0100 |
commit | 0398b31d1d49a4f9f369052b4ce3c0cf8fce176b (patch) | |
tree | 4ba20cce12fb524673f0046ee202c5e38a0ad399 | |
parent | 5e1cb16768d3b97724ab85fbc50119dd8c9281c0 (diff) |
mesa: define nir_spirv_supported_capabilities
Until now it was part of spirv_to_nir_options. But it will be used on
the implementation of ARB_gl_spirv and ARB_spirv_extensions, and added
to the OpenGL context, as a way to save what SPIR-V capabilities the
current OpenGL implementation supports.
Reviewed-by: Ian Romanick <[email protected]>
-rw-r--r-- | src/compiler/spirv/nir_spirv.h | 16 | ||||
-rw-r--r-- | src/mesa/main/mtypes.h | 12 |
2 files changed, 15 insertions, 13 deletions
diff --git a/src/compiler/spirv/nir_spirv.h b/src/compiler/spirv/nir_spirv.h index 43ec19d5a50..113bd710a00 100644 --- a/src/compiler/spirv/nir_spirv.h +++ b/src/compiler/spirv/nir_spirv.h @@ -28,7 +28,8 @@ #ifndef _NIR_SPIRV_H_ #define _NIR_SPIRV_H_ -#include "nir/nir.h" +#include "compiler/nir/nir.h" +#include "main/mtypes.h" #ifdef __cplusplus extern "C" { @@ -57,18 +58,7 @@ struct spirv_to_nir_options { */ bool lower_workgroup_access_to_offsets; - struct { - 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; - } caps; + struct nir_spirv_supported_capabilities caps; struct { void (*func)(void *private_data, diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index b478f6158e2..7da05aa3ee9 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -3579,6 +3579,18 @@ 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 |