- Nov 10, 2018
-
-
Alejandro Piñeiro authored
If a block has assigned a XfbOffset it is assumed that it would inherit the current global XfbBuffer. This commit fixes two use cases: 1) Getting the members of a Block with a XfbOffset to be assigned an offset, as explained on GLSL 4.60 spec, section "4.4.2 Output Layout Qualifiers", subsection "Transform Feedback Layout Qualifiers". 2) Compute properly an error on overlapping ranges if a block is assigned a XfbOffset and one of it members is assigned a explicit one. This gets working because when the members of a block get assigned a Offset/Buffer at fixBlockXfbOffsets, then the block is deassigned the Offsets, so ranges are computed only with the block members. BTW, this is already done when redeclaring block builtins. Fixes #1535
-
- Nov 09, 2018
-
-
John Kessenich authored
Apinheiro/xfb struct assignment
-
John Kessenich authored
Add DeadBranchElim before MergeReturn in legalization.
-
- Nov 08, 2018
-
-
GregF authored
MergeReturn now requires this or could throw an error.
-
John Kessenich authored
-
John Kessenich authored
-
- Nov 07, 2018
-
-
John Kessenich authored
Rename PCH macro to glslang_pch (to avoid name collision) and update to latest spirv-tools
-
Jeff Bolz authored
-
- Nov 06, 2018
-
-
John Kessenich authored
-
- Nov 02, 2018
-
-
John Kessenich authored
Use precompiled headers for some glslang projects (MSVC-only)
-
John Kessenich authored
Add names for composite spec constants in SPIR-V
-
Grigory Dzhavadyan authored
Consider the following code: layout(constant_id=0) const int Y = 1; layout(constant_id=1) const int Z = 2; layout(constant_id=3) const int X = Y + Z; Previously, it would produce SPIR-V decorations like this: Decorate 21(Y) SpecId 1 Decorate 22 SpecId 3 Decorate 33(Z) SpecId 0 This seems inaccurate, since the spec constant `X` that is dependent on the two others did not get a name in the SPIR-V decorations. This behavior may potentially negatively affect shader introspection capabilities. This change alters the behavior to always add a name, which results in the code above producing the following decorations: Decorate 21(Y) SpecId 1 Decorate 22(X) SpecId 3 Decorate 33(Z) SpecId 0
-
- Oct 31, 2018
-
-
Jeff Bolz authored
-
John Kessenich authored
Add support for nv_ray_tracing final
-
Ashwin Lele authored
-
Alejandro Piñeiro authored
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.
-
- Oct 30, 2018
-
-
John Kessenich authored
BUILD.gn: remove reference to non-existent header
-
Corentin Wallez authored
-
- Oct 29, 2018
-
-
John Kessenich authored
Fix MSVC warning C4065: 'default' but no 'case' labels
-
Corentin Wallez authored
This would happen in SpvPostProcess when we don't enable AMD extensions.
-
- Oct 26, 2018
-
-
John Kessenich authored
-
John Kessenich authored
Fix 8-bit storage nearly always using the UniformAndStorageBuffer8BitAccess capability.
-
John Kessenich authored
-
John Kessenich authored
Allow GL_NV_mesh_shader in fragment shaders for perprimitiveNV
-
Neil Henning authored
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
-
Sahil Parmar authored
- 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
-
- Oct 25, 2018
-
-
John Kessenich authored
Fixup unused parameter warnings
-
John Kessenich authored
-
- Oct 24, 2018
-
-
Dan Sinclair authored
This CL removes the current parameters which are unused in order to fixup the issued clang warnings.
-
- Oct 22, 2018
-
-
John Kessenich authored
BUILD.gn: remove the static_library target.
-
- Oct 21, 2018
-
-
John Kessenich authored
-
- Oct 20, 2018
-
-
John Kessenich authored
-
- Oct 17, 2018
-
-
Corentin Wallez authored
This had no sources and depended on a source_set which is an invalid use of GN because the source_set gets propagated to dependents of the static_library instead.
-
John Kessenich authored
Fix a parse issue of imageAtomicCompSwap()
-
Rex Xu authored
The max count of arguments is 5 when image2DMS/image2DMSArray is specified.
-
- Oct 16, 2018
-
-
John Kessenich authored
Fix flags.nonprivate to be true for workgroup memory, which is implicitly workgroupcoherent/nonprivate
-
Jeff Bolz authored
Fix flags.nonprivate to be true for workgroup memory, which is implicitly workgroupcoherent/nonprivate
-
- Oct 10, 2018
-
-
Khronos Group Webmaster authored
-
- Oct 05, 2018
-
-
John Kessenich authored
Allow redeclaration of builtin interface blocks in mesh shader
-
John Kessenich authored
Fix inferred output primitive for GL_NV_geometry_shader_passthrough
-