Skip to content
Snippets Groups Projects
  1. Nov 16, 2018
  2. Nov 15, 2018
  3. Nov 14, 2018
  4. Nov 12, 2018
  5. Nov 08, 2018
  6. Nov 06, 2018
  7. Nov 02, 2018
    • Grigory Dzhavadyan's avatar
      Add names for composite constants in SPIR-V · 4c9876b3
      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
      4c9876b3
  8. Oct 31, 2018
  9. Oct 26, 2018
    • John Kessenich's avatar
    • Neil Henning's avatar
      Fix 8-bit storage nearly always using the · b6b01f06
      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
      b6b01f06
    • Sahil Parmar's avatar
      Allow GL_NV_mesh_shader in fragment shaders for perprimitiveNV · 38772c04
      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
      38772c04
  10. Oct 25, 2018
  11. Oct 17, 2018
  12. Oct 16, 2018
  13. Oct 05, 2018
  14. Oct 04, 2018
    • Sahil Parmar's avatar
      Allow redeclaration of builtin interface blocks in mesh shader · 035cbbe3
      Sahil Parmar authored
      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
      035cbbe3
  15. Sep 26, 2018
  16. Sep 25, 2018
    • Sahil Parmar's avatar
      Add ES 320 support and additional error checks for SPV_NV_mesh_shader · 95e2d4ec
      Sahil Parmar authored
      - 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
      95e2d4ec
  17. Sep 20, 2018
  18. Sep 19, 2018
  19. Sep 11, 2018
  20. Sep 10, 2018
  21. Sep 07, 2018
  22. Aug 23, 2018
  23. Aug 16, 2018
  24. Aug 13, 2018
  25. Aug 09, 2018
Loading