Reviewed-by: Ian Romanick <ian.d.roman...@intel.com> On 12/06/2017 03:57 AM, Alejandro Piñeiro wrote: > 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. > --- > > We are sending this commit in advance of a v3 of the initial gl_spirv > and spirv_extensions support series. The issue is that lately there > were a lot of activity on the spirv/spir_to_nir code base, and we are > being fixing rebase conflicts constantly. Getting this commit on > master would make things easier. > > FWIW, this patch is similar to one that Ian Romanick already granted > Rb, but that was dropped after all the mentioned changes: > https://lists.freedesktop.org/archives/mesa-dev/2017-November/178261.html > > src/compiler/spirv/nir_spirv.h | 16 +++------------- > 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 >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev