- 15 Dec, 2020 5 commits
-
-
John Kessenich authored
Fixed compile warning in reflection.cpp for ENABLE_HLSL = 0 build. [-Wunused-parameter]
-
John Kessenich authored
Update SPIRV-Tools known-good: validate OpImageRead result type
-
David Neto authored
See #2486
-
David Neto authored
Pick up https://github.com/KhronosGroup/SPIRV-Tools/pull/4072 which validates the result type of OpImageRead. This also requires test expectation updates. See #2486 tracks the needed upate to Glslang code generation.
-
Evgeny Proydakov authored
-
- 12 Dec, 2020 1 commit
-
-
Daniel Koch authored
Issue #2483 According to GLSL spec the prototype is: uint rayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetEXT(rayQueryEXT q, bool committed); but that was incorrectly getting translated to SPIRV as an `int`, and this was causing SPIR-V validation errors when used. Added explicit testing for the return types of all the builtin functions in GL_EXT_ray_query
-
- 11 Dec, 2020 3 commits
-
-
greg-lunarg authored
Update README to avoid googletest breakage
-
Greg Fischer authored
Additional fix for #2480
-
greg-lunarg authored
-
- 08 Dec, 2020 1 commit
-
-
greg-lunarg authored
-
- 03 Dec, 2020 1 commit
-
-
greg-lunarg authored
-
- 30 Nov, 2020 1 commit
-
-
Daniel Koch authored
* update spirv-headers and fix handling of gl_HitTEXT Update spirv-headers known_good to f027d53ded7e230e008d37c8b47ede7cd308e19d and update SPIRV/spirv.hpp to copy from that version as well. In GLSL gl_HitTNV/gl_HitTEXT is defined as an alias of gl_RayTmaxNV/gl_RayTmaxEXT SPV_NV_ray_tracing has a dedicated HitTNV which gl_HitTNV maps to. For SPV_KHR_ray_tracing, gl_HitTEXT gets mapped to a RayTmaxKHR decoraged variable to simplify the SPIRV consumer. This change fixes the mapping for the GL_EXT_ray_tracing extension, and updates the test results to match. * update MissNV shader test to not use ObjectRay builtins They shouldn't existing in the miss stage because there is no object intersected
-
- 25 Nov, 2020 1 commit
-
-
Daniel Koch authored
* Add ray query capability if acceleration structure used Fixes #2430 in non-ray tracing stages and the extension is enabled * Add ray query capability if ray query declared * Fix printing of TypeRayQueryKHR It's no longer spelled with "Provisional"
-
- 23 Nov, 2020 1 commit
-
-
Daniel Koch authored
* Fix traceRay/executeCallable to have id instead of constant. Update to final (non-provisional) SPIR-V capabilities (includes review feedback) - Change visibilty of findLinkerObjects. See merge request GLSL/glslang!78 * Add support for OpConvertUToAccelerationStructureKHR. GLSL : https://gitlab.khronos.org/GLSL/GLSL/-/merge_requests/60 SPV : https://gitlab.khronos.org/spirv/spirv-extensions/-/merge_requests/182 See merge request GLSL/glslang!77 * Add volatile qualifier to certain builtins for ray tracing. See merge request GLSL/glslang!81 * make gl_RayTmaxEXT volatile in intersection shader Vulkan Issue #2268 * Add testing for layouts on SBT vulkan/vulkan#2230 - no layout specified should be same as std430 - explicitly test std140, std430, scalar layouts See merge request GLSL/glslang!86 * Support for new opcodes OpIgnoreIntersectionKHR and OpTerminateRayKHR vulkan/vulkan#2374 Add support for ignoreIntersectionEXT and terminateRayEXT as block terminator statements. See merge request GLSL/glslang!87 * Fix code-generation issues with global ray query variables See merge request GLSL/glslang!88 * update dependencies for spirv-headers and tools And update mesh shader results * Fix indeterminate argument ordering Authored-by:
David Neto <dneto@google.com> Co-authored-by:
Ashwin Lele (NVIDIA Corporation) <alele@nvidia.com> Co-authored-by:
Neslisah <Neslisah.Torosdagli@amd.com>
-
- 16 Nov, 2020 1 commit
-
-
Shahbaz Youssefi authored
Fixes a crash in ANGLE. Closes: #2452
-
- 12 Nov, 2020 3 commits
-
-
Malcolm Bechard authored
no longer causes an incorrect error if the current unit has local_size set, but the incoming unit does not
-
David Neto authored
Use of gl_Layer and gl_ViewportIndex in tessellation and vertex shaders should not trigger the addition of the Geometry capability. Fixes #2461 Added tests for use of gl_Layer and gl_ViewportIndex in a tessellation evaluation shader. Several tests for NVIDIA features for tessellation, vertex, or mesh shaders now lose the Geometry or MultiViewport capabilities. This is ok because the functionality is already covered by the ShaderViewportIndexLayerNV capability. The spv.meshShaderPerViewBuiltins.mesh test now fails validation because the validator does not know that PrimitiveId (and possibly other) builtins are enabled by the MeshShadingNV capability. I filed https://github.com/KhronosGroup/SPIRV-Headers/issues/179 to fix the grammar upstream.
-
greg-lunarg authored
This implements a new nonunifom analysis suggested by @jbolz. This change generates nonUniform decorations that were previously missing and avoids generation of incorrect decorations. Most notably, it now generates decorations for nonuniform functions and out params. It avoids generating decorations for lvalues which themselves are not nonuniform.
-
- 09 Nov, 2020 1 commit
-
-
Jesse Hall authored
* Implement GL_EXT_terminate_invocation. * terminateInvocation: declare the SPV extension * Update test results for spirv-tools and bison version bumps Co-authored-by:John Kessenich <cepheus@frii.com>
-
- 06 Nov, 2020 1 commit
-
-
rdb authored
Fixes #2443
-
- 05 Nov, 2020 1 commit
-
-
Chow authored
ATT.
-
- 04 Nov, 2020 1 commit
-
-
Tobski authored
-
- 03 Nov, 2020 2 commits
-
-
Chow authored
* Code refine and adding missing features 1. Add new level for built in symbols. 2. Fix issues for structure members' qualifiers. 3. Global qualifier fix. 4. IO Mapper refine. Add support for checking with mangle names. * Additional missing features * Invariant member. (Only check non-interface). * Split block nesting level and struct nesting level. To fix issues of checking 'invariant' qualifier. Current grammar would check block/struct member without its parent class's information. So we split nesting level, and 'invariant' would only be checked within a struct. * Format anonymous block names. Refine codes for symbols from all kinds of resouces. * Fix writeonly check. * Use LValueBase to find operator. * Fix random null ptr issue. * invariant check, stage in io mapping, reference parameter should be used and remove wrong codes introduced with ordering vector. * Remained: to be fixed with double check link.vk.multiblocksValid * Fix version error. invariant * Revert loc modification.
-
Courtney Goeltzenleuchter authored
Getting error about undefined symbol (include_dir) at line 320. Was trying to append to a non-existant variable. Bug #2445
-
- 02 Nov, 2020 3 commits
-
-
pheonix authored
* Add new SpirvToolsDisassemble API interface + Improve Doc on existing API interface (#2408) * Add more flexible SpirvToolsDisassemble interface to allow specifying spv_target_env for disassembly output. Improve documentation on existing SpirvToolsDisassemble interface. * Update pre-processor check - following existing ENABLE_OPT checks. * Fix not-found header paths for glslangValidator and glslangtests. * Add spirv_tools/include path where there is an ENABLE_OPT=1 in the BUILD.gn configuration.
-
Sidney Just authored
* When targeting SPIR-V 1.5, using gl_ViewportIndex will emit OpCapability ShaderViewportIndex and using gl_Layer will emit OpCapability CapabilityShaderLayer. OpCapability ShaderViewportIndexLayerEXT will only get emitted if the target < SPIR-V 1.5 * When using one of the viewport/layer arrays extensions, fallback to OpCapability ShaderViewportIndexLayerEXT, even when targeting SPIR-V 1.5 * Revert "When using one of the viewport/layer arrays extensions, fallback to OpCapability ShaderViewportIndexLayerEXT, even when targeting SPIR-V 1.5" This reverts commit dccca82f4076ea6e2bc01dd6d1e5d290c59fab20. * Using gl_Layer and gl_ViewportIndex outside of the geometry shader stage still requires one of the viewport extensions even when targeting SPIR-V 1.5 (Fixes a problem introduced by 670536b663f396815645b2f907f0ee92117b44f0)
-
Jaebaek Seo authored
* Do not use PropagateLineInfoPass and RedundantLineInfoElimPass Since spirv-opt will remove PropagateLineInfoPass and RedundantLineInfoElimPass, glslang should not use it. spirv-opt will propagate the line instructions and eliminate the redundant lines by default in IR loading/emission. * Update known_good.json for spirv-tool
-
- 30 Oct, 2020 1 commit
-
-
John Kessenich authored
NonUniform SPIR-V fixes.
-
- 26 Oct, 2020 1 commit
-
-
John Kessenich authored
HLSL: Add support for printf().
-
- 24 Oct, 2020 1 commit
-
-
Rex Xu authored
Translate printf() to what GL_EXT_debug_printf has done. HLSL could define non-constant string variable and we don't have such features in SPIR-V, so just support constant string variable.
-
- 22 Oct, 2020 1 commit
-
-
John Kessenich authored
Fix GN build and presubmits
-
- 21 Oct, 2020 1 commit
-
-
Ben Clayton authored
Add missing `.cfg` files for GN presubmit. Add missing `recursedeps` in the `DEPS` file. Call `./update_glslang_sources.py` before attempting to build. Add more GN spew to the `.gitignore` file.
-
- 20 Oct, 2020 5 commits
-
-
John Kessenich authored
Kokoro: Add configurations for GN presubmit
-
John Kessenich authored
Add GL_EXT_fragment_shading_rate
-
John Kessenich authored
-
Chow authored
-
Ben Clayton authored
Issue: #2421
-
- 19 Oct, 2020 2 commits
-
-
John Kessenich authored
Add basic GN configurations
-
Ben Clayton authored
TIntermediate was constructed without initializing any of the `resources` fields, and `TProgram::linkStage()` was not calling `TIntermediate::setLimits()` after constructing new `TIntermediate`s for non-first stages. Fields of `resources` were then read in `TIntermediate::finalCheck()` triggering undefined behavior. This CL makes three changes: (1) `TIntermediate::setLimits()` is now called for non-first stages by copying the `firstIntermediate`'s limits. This ensures that the `resources` fields is initialized, fixing the bug. (2) `TIntermediate::resources` is now wrapped in a `MustBeAssigned<>` helper struct, asserting in non-release builds that this field is always initialized before reading. (3) `TIntermediate::resources` is now zero-initialized, so that if the `TIntermediate::resources` field is not set in a release build (and so the `assert()` will be disabled) behavior is still deterministic. Fixes #2423
-
- 16 Oct, 2020 1 commit
-
-
Ben Clayton authored
-