-
Release 15.2.0 Stable
released this
2025-02-28 17:54:48 -06:00 | 413 commits to main since this releaseChanges in this release:
- Fix find_package on Windows when BUILD_SHARED_LIBS=ON
- Emit error if using in/out with struct pointer
- Emit SPV_EXT_opacity_micromap if GL extension is present
- Support GL_NV_linear_swept_spheres
- Support GLSL_EXT_nontemporal_keyword
- Support GL_NV_cluster_acceleration_structure
- Support GL_NV_cooperative_vector
- Check SparseTextureOffset non-const parameters
- Support GL_EXT_texture_offset_non_const
- Revert cross-stage check for missing outputs
- Support EXT_integer_dot_product
- Add support for OpTypeRayQueryKHR and OpTypeAccelerationStructureKHR to SPVRemapper
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 15.1.0 Stable
released this
2024-12-13 15:45:21 -06:00 | 472 commits to main since this releaseChanges in this release:
- Add Vulkan 1.4 target and client
- Improve conversion of uniform block to push constant
- Improve cross stage error reporting by reporting proper stager rather than "unkwown stage"
- Add warning if forward declaration uses layout qualifiers
- Implement GLSL_NV_cooperative_matrix2
- Emit OpModfStruct instead of depracated OpModf
- Add link-time cross stage optimization
- Add column to DebugLexicalBlock
- Propagate errors from symbol table initialization
- Fix nonsemantic debuginfo line attribution for cooperative matrix
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 15.0.0 Stable
released this
2024-09-25 18:10:44 -05:00 | 514 commits to main since this releaseBreaking changes in this release:
- Explicitly export all symbols that are part of the public API and hide other symbols by default
Other changes in this release:
- Allow building glslang without the SPIR-V backend using the new ENABLE_SPIRV build option
- Add setResourceSetBinding method to the API
- Add interface to get the GLSL IO mapper and resolver
- Allow compute derivative modes when the workgroup dimensions are spec constants
- Improve debug location of branch/return instructions
- Silence preprocessor '#' error reporting in inactive #if/#ifdef/#elif/#else blocks
- Apply GLSL memory decorations to top-level OpVariable
- Move definition of GLSLANG_EXPORT to visibility.h
- Merge ancillary libraries into main glslang library and stub originals
- Add public setSourceFile and addSourceText methods to TShader class
- Add type checks for hitObjectNV
- Add optimizerAllowExpandedIDBound to SpvOptions
- Add SpvTools.h back to public headers
- Add cross-stage check for missing outputs
- Fix HLSL offsets for non-buffers
- Add types and functions for IO mapping to API
- Add function to set preprocessed code to API
- Add set/get version functions to API
- Expose setGlobalUniform functions to API
- Don't emit debug instructions before an OpPhi
- Add command-line and API option to enable reporting column location for compiler errors
- Improve location aliasing checks
- Support constant expression calculated by matrixCompMult
- Fix crash caused by atomicCounter() use without arguments
- Fix multi-line function call line numbers
- Add line info to OpDebugDeclare for function parameters
- Fix HLSL OpDebugFunction file name
- Fix duplicate decorations
- Enable compilation of glslang without thread support for WASI
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 14.3.0 Stable
released this
2024-06-25 17:42:43 -05:00 | 603 commits to main since this releaseChanges in this release:
- Generate vector constructions more efficiently when sizes match
- Skip identity conversions for 8-bit and 16-bit types
- Add cmake aliases for public libraries
- Support ARM extended matrix layout
- Emit debug info for buffer references
- Add support for OpExtInstWithForwardRefsKHR
- Generate SPV_EXT_replicated_compisites when requested by pragma
- Reuse loads generated for repeated function arguments
- Fix gl_HitT alias of gl_RayTmax
- Fix some cases where invalid SPIR-V was being generated when using separate samplers
- Add back layoutLocation to public API
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 14.2.0 Stable
released this
2024-05-02 17:12:36 -05:00 | 636 commits to main since this releaseChanges in this release:
- Improve checking for location aliasing errors
- Fix undefined behavior in parser
- Add bounds check to gl_SampleMask
- Fix alignment and padding of matrices consuming one vector
- Remove duplicate SPIR-V decorations
- Check for exponent overflow in float parser
- Fix bug in relaxed verification rules
- Fix disassembly of debugBreak
- Fix bug when importing SPIR-V extended intruction set
- Fix issues with the interaction of cooperative_matrix and spirv_intrinsics
- Support SPV_QCOM_image_processing2
- Support files with UTF8BOM character
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 14.1.0 Stable
released this
2024-03-08 17:05:56 -06:00 | 673 commits to main since this releaseChanges in this release:
- Add a new --abosute-path command-line option to output absolute paths in error messages
- Support GL_EXT_control_flow_attributes2
- Support GL_ARB_shading_language_include
- Fix HLSL built-in passthrough via inout
- Enable -Wimplicit-fallthrough and fix warnings
- Fix -Wmissing_field_initializer warnings
- Document supported dependencies in known_good.json
- Clear spirv vector before use
- Emit debug info for accelerationStructure and rayQuery variables
- Support NV_shader_atomic_fp16_vector
- Support GL_EXT_expect_assume_support
- Allow external control of whether glslang will be tested or installed
- Improve debug source and line info
- Support GL_KHR_shader_subgroup_rotate
- Add SPIRV-Tools-opt dependency if ENABLE_OPT
- Support EXT_shader_quad_control
- Add OpAssumeTrueKHR and OpExpectKHR
- Support GL_EXT_maximal_reconvergence
- Remove generation of deprecated Target.cmake files
- Fix array size of gl_SampleMask and gl_SampleMaskIn
- Support GL_ARB_texture_multisample_extension
- Emit DebugTypePointer when non-semantic debug info is enabled
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 14.0.0 Stable
released this
2023-12-22 11:11:28 -06:00 | 730 commits to main since this releaseBreaking changes:
- The legacy libraries named HLSL and OGLCompiler have been removed. To avoid future disruptions, please use cmake's find_package mechanism rather than hardcoding library dependencies.
- Only the headers that are part of glslang's public interface are included in the install target.
- Remove OVERRIDE_MSVCCRT cmake option.
Other changes:
- Fix spv_options initialization
- Fix line number for OpDebugFunction and OpDebugScope for function
- Fix SPV_KHR_cooperative_matrix enumerants
- Fix nullptr crash
- Fix GL_ARB_shader_storage_buffer_object version
- Fix interpolant ES error
- Generate DebugValue for constant arguments
- Overflow/underflow out-of-range floats to infinity/0.0 respectively
- Support SV_ViewID keywords for HLSL
- Implement relaxed rule for opaque struct members
- Add BUILD_WERROR cmake option
- Add GLSLANG_TESTS cmake option
- Always generate OpDebugBasicType for bool type
- Fix GLSL parsing of '#' when not preceded by space or tab
- Fix GL_ARB_bindless_texture availability
- Support GL_EXT_draw_instanced extension
- Support GL_EXT_texture_array extension
- Fix conversion of 64-bit unsigned integer constants to bool
- Output 8-bit and 16-bit capabilities when appropriate for OpSpecConstant
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 13.1.1 Stable
released this
2023-10-17 09:20:07 -05:00 | 805 commits to main since this releaseChanges in this release:
- Initialize compile_only field in C interface
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 13.1.0 Stable
released this
2023-10-14 17:09:27 -05:00 | 807 commits to main since this releaseChanges in this release:
- Support GL_EXT_texture_shadow_lod
- Support GL_NV_displacement_micromap
- Fix ByteAddressBuffer when used a function parameter
- Add more verbose messages if SPIRV-Tools is not found
- Fix names for explicitly sized types when emitting nonsemantic debug info
- Emit error for r-value arguments in atomic memory operations
- Add --no-link option
- Beautify preprocessor output format
- Fix race condition in glslangValidator
- Only set LocalSizeId mode when necessary
- Don't emit invalid debug info for buffer references
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Release 13.0.0 Stable
released this
2023-08-23 18:24:25 -05:00 | 840 commits to main since this releaseBreaking changes:
- Simplify PoolAlloc via thread_local
- Remove InitializeDLL functions
- Remove OSDependent TLS functions
- Remove GLSLANG_WEB and GLSLANG_WEB_DEVEL code paths
Changes in this release:
- Raise CMAKE minimum to 3.17.2
- Support GL_KHR_cooperative_matrix
- Support GL_QCOM_image_processing_support
- Support outputting each module to a filename with spirv-remap
- Generate an error when gl_PrimitiveShaderRateEXT is used without enabling the extension
- Improve layout checking when GL_EXT_spirv_intrinsics is enabled
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Simplify PoolAlloc via thread_local