Jeff Bolz
02ed310ac3
Rename PCH macro to glslang_pch (to avoid name collision) and update to latest spirv-tools
2018-11-07 09:35:31 -06:00
Jeff Bolz
22d0b7cbad
Use precompiled headers for some glslang projects
2018-10-31 15:38:08 -05:00
Ashwin Lele
ff1783db87
Multiple features and misc fixes for final raytracing non experimental version.
2018-10-31 07:55:24 -07:00
Alejandro Piñeiro
af8c1bdb16
ParseHelper: assign xfb_offset for struct members too
...
If the out variable is a struct type, with a xfb_offset explicitly
assigned, the members need to get their xfb_offset assigned. This is
specially relevant, as we cannot use layout qualifiers on struct
members.
2018-10-31 10:34:44 +01:00
John Kessenich
25ed3fce0c
Merge pull request #1542 from sheredom/fix_8bit_storagebuffer
...
Fix 8-bit storage nearly always using the UniformAndStorageBuffer8BitAccess capability.
2018-10-26 10:27:46 -06:00
John Kessenich
8717a5d39a
SPV/Standalone: Support specifying arbitrary versions of SPIR-V.
2018-10-26 10:16:47 -06:00
Neil Henning
b6b01f067b
Fix 8-bit storage nearly always using the
...
UniformAndStorageBuffer8BitAccess capability.
When using the 8-bit storage extension it basically always used the
`UniformAndStorageBuffer8BitAccess` capability, even in cases where it
wasn't required. For instance if we are targeting Vulkan 1.1 (SPIR-V 1.3
or higher), and we are only using 8-bit types in an SSBO, we only need
the `StorageBuffer8BitAccess` capability.
I fixed this by enabling storage buffer use in Vulkan 1.1 / SPIR-V 1.3
or higher, and then changing the logic to match.
I also added some tests that will output different capabilities when run
on Vulkan 1.0 and 1.1, thus they are added twice to the test list (one
for each version).
Fixes #1539
2018-10-26 14:23:41 +01:00
Sahil Parmar
38772c0434
Allow GL_NV_mesh_shader in fragment shaders for perprimitiveNV
...
- Emit relevant capability/extension for use of perprimitiveNV in fragment shader
- Remove redundant checks for mesh shader qualifiers in glslang.y
- Add profile version check for use of extension GL_NV_mesh_shader
- Add a new gtest for use of perprimitiveNV in fragment shader
2018-10-25 23:50:59 -07:00
John Kessenich
9323fd4d58
Build: Fix #1490 , unused variables.
2018-10-20 18:30:57 -06:00
John Kessenich
43bb5bd188
Fix #1536 : use string instead of TString for uniform-location override.
2018-10-20 17:37:19 -06:00
Rex Xu
d698ebf5f8
Fix a parse issue of imageAtomicCompSwap()
...
The max count of arguments is 5 when image2DMS/image2DMSArray is
specified.
2018-10-17 13:55:11 +08:00
John Kessenich
c374030e80
Merge pull request #1523 from sparmarNV/fix-SPV_NV_mesh_shader
...
Allow redeclaration of builtin interface blocks in mesh shader
2018-10-04 23:46:21 -06:00
John Kessenich
732623e14a
Merge pull request #1524 from chaoc/master
...
Fix inferred output primitive for GL_NV_geometry_shader_passthrough
2018-10-04 23:41:24 -06:00
Chao Chen
07ef0e4c84
For GL_NV_geometry_shader_passthrough extension, the Inferred output primitive for ElgTriangles should be ElgTriangleStrip.
...
Also removed unnecessary relax for GL_NV_geometry_shader_passthrough in link validate
2018-10-04 18:39:27 -07:00
Sahil Parmar
035cbbe3d0
Allow redeclaration of builtin interface blocks in mesh shader
...
Apart from allowing redeclaration of gl_MeshPerVertexNV and gl_MeshPerPrimitiveNV blocks, this change also -
- Resize clip/cull perview distances based on static index use
- Error out use of both single-view and per-view builtins
- Add new gtests with redeclared blocks and edit existing test output
- Fix couple of typos
2018-10-04 16:39:18 -07:00
Neil Roberts
b0f3d794c8
Add an option to set the base uniform location
...
This will be used to generate uniform locations with --aml
2018-10-02 12:15:22 +02:00
Neil Roberts
16f53474c8
Add a command-line option to override uniform locations
2018-10-02 12:15:22 +02:00
John Kessenich
4508a8170a
Merge pull request #1507 from sparmarNV/fix-SPV_NV_mesh_shader
...
Add ES 320 support and additional error checks for SPV_NV_mesh_shader
2018-09-28 06:24:02 -06:00
Sahil Parmar
80b9872cb4
Based on feedback rename checkShaderStageForNVExtensions to checkExtensionStage
...
Also continue error checking post requireStage() check
2018-09-27 11:08:13 -07:00
Sahil Parmar
251344f692
Call checkShaderStageForNVExtensions() from function updateExtensionBehavior()
2018-09-26 16:12:51 -07:00
Sahil Parmar
3ae0f58322
changes based on feedback
2018-09-26 13:38:25 -07:00
John Kessenich
5ff3c3da3b
Interfaces: Remove NV_EXTENSIONS from two more headers.
...
This also fixes some cpp files that uncover issues when building
with the flags turned off.
2018-09-26 09:38:20 -06:00
Jeff Bolz
27f5db0537
Remove NV_EXTENSION ifdefs from ShaderLang.h
2018-09-26 09:03:57 -05:00
John Kessenich
1f60c72c67
Interface: remove NV_EXTENSIONS from the resources header.
...
This allows library consumers to work without have to set
NV_EXTENSIONS.
2018-09-26 03:02:13 -06:00
John Kessenich
a475294590
Merge pull request #1506 from alelenv/master
...
Fix missing case label for miss stage.
2018-09-25 16:30:14 -06:00
Sahil Parmar
95e2d4ec02
Add ES 320 support and additional error checks for SPV_NV_mesh_shader
...
- Add ES 320 support
- Error out use of perprimitiveNV for non mesh/fragment shaders
- Error out use of mesh/task shaders w/o use of NV_mesh_shader
- Error out use of NV_mesh_shader for non task/mesh shaders
- Error out use of perviewNV for non mesh shaders
- Error out use of taskNV for non mesh/task shaders
- Add test case for mesh shader with ES 320 profile
2018-09-25 13:45:32 -07:00
Ashwin Lele
a535bc1353
Fix missing case label for miss stage.
2018-09-25 13:19:34 -07:00
Dan Sinclair
257b25c81f
Add BUILD.gn configuration.
...
This CL adds the necessary configuration to build glslang inside a
Chromium checkout. Two build warnings were fixed in the process to
make things compile.
2018-09-24 16:57:55 -04:00
John Kessenich
a8453d4bc0
SPIRV-Tools: Move to more recent (higher quality) version.
2018-09-20 14:36:42 -06:00
John Kessenich
088da33263
Bump revision.
2018-09-20 02:04:42 -06:00
John Kessenich
8751c13ce2
Bump minor version.
2018-09-19 16:50:05 -06:00
Chao Chen
5b2203db04
Add-support-for-SPV_NV_shading_rate
2018-09-19 13:07:43 -07:00
Chao Chen
b50c02ef53
Add-support-for-SPV_NVX_raytracing
2018-09-19 13:07:43 -07:00
Chao Chen
3c3669904c
Add-support-for-SPV_NV_mesh_shader
2018-09-19 13:07:43 -07:00
Chao Chen
3a1379667d
0003-Add-support-for-SPV_NV_shader_image_footprint
2018-09-19 13:07:42 -07:00
Chao Chen
beae2251b7
Add-support-for-SPV_NV_compute_shader_derivatives
2018-09-19 13:07:42 -07:00
Chao Chen
9eada4b971
Add-support-for-SPV_NV_fragment_shader_barycentric
2018-09-19 13:07:42 -07:00
John Kessenich
b4a598ba93
Bump revision.
2018-09-13 17:54:48 -06:00
Norbert Garnys
dad0c1bed0
Add GL_EXT_shader_atomic_int64
2018-09-13 15:34:26 +02:00
John Kessenich
6def4375cc
Bump revision.
2018-09-10 18:14:21 -06:00
John Kessenich
546b78854a
Printing preprocessed shaders (not a supported path): Fix #1490 : strings
...
Put quote marks around strings, due to a change in how tokenization works.
2018-09-10 11:42:16 -06:00
John Kessenich
1ca0f8e8eb
Bump version and revision.
2018-09-07 09:07:03 -06:00
Jeff Bolz
36831c9bad
GL_KHR_memory_scope_semantics
2018-09-06 20:36:14 -05:00
John Kessenich
97068d8b30
Merge pull request #1465 from otakuto/remove-execute-permissions
...
Remove execute permissions
2018-08-31 08:14:47 -07:00
John Kessenich
ac2e1b6328
bump revision
2018-08-30 17:43:22 -06:00
John Kessenich
381dd3c0d2
GLSL: Remove use of __ in the implementation of keywords having __.
2018-08-30 12:22:33 -06:00
John Kessenich
717c80a9de
SPV: Isolate SPIRV-tools glue to its own file.
2018-08-23 15:17:10 -06:00
John Kessenich
e7df8e0b76
Non-functional: Rationalize some existing use of SPIRV-Tools.
2018-08-22 17:12:46 -06:00
John Kessenich
72f8c69097
Bump version patch level.
2018-08-13 01:32:56 -06:00
John Kessenich
ec5c11931b
Bump revision.
2018-08-09 14:17:52 -06:00