ArielG-NV
ArielG-NV
The following PR implements raytracing extension(s) (GLSL_EXT_ray_tracing, GLSL_EXT_ray_query, GLSL_NV_shader_invocation_reorder & GLSL_NV_ray_tracing_motion_blur); for GLSL & SPIR-V targets only: fully implements all functions, fully implements all built-in variables, fully implements all syntax;...
`tests/compute/atomics-buffer.slang` fails to compile due to some issue with `atomic` implementation in Metal.
related to: #4291 `tests/compute/column-major.slang` test supposedly produces incorrect results
breaks compile of: * tests/compute/compile-time-loop.slang * tests/compute/constexpr.slang * tests/compute/discard-stmt.slang * tests/compute/texture-sampling.slang problem: the following metal code is allowed: ``` struct FragmentStageOutput_0 { float4 fragment_0 [[color(0)]]; }; [[fragment]] FragmentStageOutput_0 fragmentMain(float device*...
Fixes: #4487 Prepares code for a larger overhaul (#4375). Note: 1. Flattening a struct is the process of making a struct have 0 struct/class members. Changes: 1. Flatten all input(`flattenInputParameters`)/output(part...
Parameter block support for Metal is required for the following tests: 1. tests/autodiff/global-param-hoisting.slang 2. tests/compute/interface-shader-param-in-struct.slang 3. tests/compute/interface-shader-param.slang 4. tests/compute/parameter-block.slang 5. tests/language-feature/types/opaque/inout-param-opaque-type-in-struct.slang 6. tests/language-feature/types/opaque/out-param-opaque-type-in-struct.slang 7. tests/language-feature/types/opaque/return-opaque-type-in-struct.slang 8. tests/language-feature/shader-params/interface-shader-param-ordinary.slang
`tests\metal\texture.slang` does not assign texture formats to any of the test input textures. This is a cause for validation error. There also seems to be other validation errors
Problem: Currently Slang does not support sparse/tiled texture operations. Solution: Support for [Gather operations with a status](https://github.com/shader-slang/slang/pull/4490) are being implemented, but we still require to implement more functions to complete...
nv-ray-tracing-motion-blur.slang & raygen.slang both used for the output image: ``` layout(rgba8) RWTexture2D outputImage; ``` glslang cross compiles this (HLSL->SPIR-V) incorrectly into: ``` %251 = OpTypeImage %float 2D 0 0 0...
Fixes: #4874 Goal: Hoist resource variables using a global initializer function in such a way that any global with initializer function has any possible resource variables hoisted into their use...