Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-11-02HLSL: Handle case where PerVertex block is not used.Hans-Kristian Arntzen
2022-10-03HLSL: Improve support for VertexInfo aux struct.Hans-Kristian Arntzen
Add concept of explicit bindings for aux structs and allows query if these aux structs are required.
2022-07-22HLSL: Implement GroupOperation(Inclusive/Exclusive)Scan.Pedro J. Estébanez
2022-05-18Add tests for OpCompositeInsert edge cases.Hans-Kristian Arntzen
2022-03-10Fixup names of anonymous inner structs.Hans-Kristian Arntzen
Just like we try to fixup struct names for block types, inner structs can be "anonymous" structs. HLSL codegen from DXC tends to emit this, and emitting dummy struct names tends to break GL linkage on some drivers.
2022-03-04Add test for SPIR-V 1.6 Volatile HelperInvocation.Hans-Kristian Arntzen
2022-03-04HLSL: Add test for HelperInvocation.Hans-Kristian Arntzen
2022-03-03Add relax_nan_checks options.Hans-Kristian Arntzen
Makes codegen from typical D3D emulation SPIR-V more readable. Also makes cross compilation with NotEqual more sensible. It's very rare to actually need the strict NaN-checks in practice. Also, glslang now emits UnordNotEqual by default it seems, so give up trying to assume OrdNotEqual. Harmonize for UnordNotEqual as the sane default.
2022-02-28HLSL: Do not emit VPOS fixup unless position is active.Hans-Kristian Arntzen
2022-01-18Test aliased names in declared LUTs.Hans-Kristian Arntzen
2022-01-18Handle aliased names in spec constants.Hans-Kristian Arntzen
Need to register resource name.
2022-01-06Add support for LocalSizeId.Hans-Kristian Arntzen
WorkgroupSize builtin is deprecated in 1.6 and LocalSizeId is supported in Vulkan starting with maintenance4.
2021-10-13Test behavior around OpSelect with matrices.Hans-Kristian Arntzen
2021-10-13Fix wrong detection of trivial_mix_op.Hans-Kristian Arntzen
Effectively, only the last component of the select was considered, need to correctly early out if any case is hit.
2021-09-30Merge pull request #1757 from KhronosGroup/fix-1754Hans-Kristian Arntzen
Improve handling of INT_MIN/INT64_MIN literals.
2021-09-30Improve handling of INT_MIN/INT64_MIN literals.Hans-Kristian Arntzen
We cannot naively convert these to decimal literals. C/C++ (and thus MSL) has extremely awkward literal promotion rules.
2021-09-30HLSL: Ensure synthetic NumWorkgroups variable is considered active.Hans-Kristian Arntzen
In SPIR-V 1.4+, active global variables must be marked as such.
2021-06-28Handle SPIR-V 1.4 selection constructs.Hans-Kristian Arntzen
Fix bug in to_trivial_mix_op, where we made a pre-1.4 assumption that component count of selector is equal to value component count.
2021-06-03Handle odd type for textureGather component.Hans-Kristian Arntzen
2021-04-23HLSL: Support Shuffle wave ops.Hans-Kristian Arntzen
WaveReadLaneAt is no longer restricted to dynamically uniform index, so can implement the other shuffle ops.
2021-04-22Rewrite how non-uniform qualifiers are handled.Hans-Kristian Arntzen
Remove all shenanigans with propagation, and only consume nonuniform qualifiers exactly where needed (last minute).
2021-04-20HLSL: Fix automatic location assignment in block IO.Hans-Kristian Arntzen
2021-03-08HLSL: Support logical subgroup ops.Hans-Kristian Arntzen
2021-01-22Check entry point variables in is_hidden_variables.Hans-Kristian Arntzen
Need to be careful not to emit globals we're not supposed to.
2021-01-07Add test for pure initializer gl_FragDepth.Hans-Kristian Arntzen
Tests that the builtin is considered active.
2021-01-04More robust handling of initialized output builtin variables.Hans-Kristian Arntzen
2021-01-04Handle output IO block initializers more robustly.Hans-Kristian Arntzen
2021-01-04Handle reserved identifiers for functions.Hans-Kristian Arntzen
gl_ identifiers are already handled by fixups, so remove redundant code.
2020-12-11GLSL: Fix KHR subgroup extension table for subgroups.Hans-Kristian Arntzen
2020-12-07Merge pull request #1564 from KhronosGroup/fix-1558Hans-Kristian Arntzen
GLSL: Emit nonuniformEXT in correct place for late-combined samplers.
2020-12-07GLSL: Emit nonuniformEXT in correct place for late-combined samplers.Hans-Kristian Arntzen
Need to emit nonuniformEXT(sampler2D()) since constructor expressions in Vulkan GLSL do not propgate the nonuniform qualifier.
2020-12-07GLSL/HLSL: Disallow VariablePointers capability outright.fix-1559Hans-Kristian Arntzen
Cannot be supported, error out early.
2020-11-23HLSL: Fix validation with FXC for test.Hans-Kristian Arntzen
2020-11-03HLSL: Add option to flatten matrix vertex input semantics.Hans-Kristian Arntzen
Helps translation layers where we expect inputs to be multiple float vectors rather than an indexed matrix.
2020-10-30GLSL: Fix nonuniformEXT injection.Hans-Kristian Arntzen
Needs to consider that other expressions might be using brackets as well ...
2020-08-20Merge pull request #1448 from KhronosGroup/fix-1437Hans-Kristian Arntzen
HLSL: Fix some subtle bugs in buffer packing handling.
2020-08-20HLSL: Fix FragCoord.w.Hans-Kristian Arntzen
Need to invert it, SM 4.0+ uses W, not 1/W (like Vulkan/GL).
2020-08-20HLSL: Deal with partially filled 16-byte word in cbuffers.Hans-Kristian Arntzen
The last element of an array or matrix in HLSL cbuffers are not filled completely, but only have a size equal to the base vector.
2020-08-20HLSL: Fix bug in is_packing_standard for cbuffer.Hans-Kristian Arntzen
Was not keeping offset in sync with actual_offset and HLSL could trigger spurious realignments due to the straddle check.
2020-07-29Add some test cases for complex type aliasing scenario.Hans-Kristian Arntzen
2020-06-04HLSL: Add native support for 16-bit types.Hans-Kristian Arntzen
Adds support for templated load/store in SM 6.2 to deal with small types.
2020-04-30MSL: Redirect member indices when buffer has been sorted by Offset.Hans-Kristian Arntzen
If a buffer rewrites its Offsets, all member references to that struct are invalidated, and must be redirected, do so in to_member_reference, but there might be other places where this is needed. Fix as required. SPIR-V code relying on this is somewhat questionable, but seems to be in-spec.
2020-04-27Implement OpAtomicLoad/OpAtomicStore.Hans-Kristian Arntzen
Need some emulation on GLSL/HLSL, fix bug with atomic store on MSL.
2020-03-26Add support for forcefully zero-initialized variables.Hans-Kristian Arntzen
Useful to better support certain platforms which require all variables to be initialized to something.
2020-03-19GLSL/HLSL: Fix nonuniform qualifier for SSBO atomics.Hans-Kristian Arntzen
2020-03-19GLSL/HLSL: Implement nonuniform qualifier for image atomics.Hans-Kristian Arntzen
2020-01-16Deal with illegal names in types as well.Hans-Kristian Arntzen
- Fixes issue with clip_distance flattening in MSL where member to flatten from would come from to_member_name, where it should have used the builtin name directly. This member name was modified by this patch and broke clip distance test shaders. - Some cleanups with ir.meta, use ir.find_meta instead to not create unnecessary hashmap nodes.
2020-01-09HLSL: Deal with casting for WaveActiveMin/Max.Hans-Kristian Arntzen
2020-01-08HLSL: Implement stores for complex composites in ByteAddressBuffers.Hans-Kristian Arntzen
2019-11-06Move .invalid. test shaders to the more appropriate subfolders.Hans-Kristian Arntzen