diff options
| author | Harsh Aggarwal (NVIDIA) <haaggarwal@nvidia.com> | 2025-08-01 14:48:53 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-01 09:18:53 +0000 |
| commit | bdda8a90cdd44ca822b21233ac988f92d1f20826 (patch) | |
| tree | 4f628776a047b2719aee676287b3adc9d4f68f7a /tests | |
| parent | 7a133445ef82232a6961c25d09b79f45cd92e709 (diff) | |
Fix 7441: CUDA boolean vector layout to use 1-byte elements (#7862)
* Fix 7441: CUDA boolean vector layout to use 1-byte elements
Boolean vectors (bool1, bool2, bool3, bool4) were incorrectly implemented
as integer-based types using 4 bytes per element instead of actual 1-byte
boolean elements on CUDA targets.
Changes:
- Update CUDA prelude to define boolean vectors as structs with bool fields
instead of typedef aliases to integer vectors
- Implement CUDALayoutRulesImpl::GetVectorLayout to use 1-byte alignment
for boolean vectors, matching actual CUDA memory layout behavior
- Update make_bool functions to populate struct fields correctly
This ensures boolean vectors have the same memory layout as bool[4] arrays:
- bool1: 1 byte (was 4 bytes)
- bool2: 2 bytes (was 8 bytes)
- bool3: 3 bytes (was 12 bytes)
- bool4: 4 bytes (was 16 bytes)
Fixes memory layout mismatch between Slang reflection API and actual
CUDA compilation, achieving 75% memory savings for boolean vector usage.
* Fix CI issues -
Add and update associated functions and operators
* Make boolX same as uchar
* Use align construct on struct for boolX
* Improve Test case for robust alignment checks
* Formatting
* Disable selected slangpy tests
* add metal check which is slightly different than cuda
* Test-1
* Test-2
* Test-3
* Test-4
* ReflectionChange
* cleanup and update
* _slang_select with plain bool is needed for reverse-loop-checkpoint-test
Diffstat (limited to 'tests')
36 files changed, 390 insertions, 316 deletions
diff --git a/tests/bindings/hlsl-to-vulkan-array.hlsl.expected b/tests/bindings/hlsl-to-vulkan-array.hlsl.expected index b8deb1314..5edf11293 100644 --- a/tests/bindings/hlsl-to-vulkan-array.hlsl.expected +++ b/tests/bindings/hlsl-to-vulkan-array.hlsl.expected @@ -7,7 +7,7 @@ standard output = { { "name": "g_data", "bindings": [ - {"kind": "uniform", "offset": 0, "size": 32}, + {"kind": "uniform", "offset": 0, "size": 32, "elementStride": 16}, {"kind": "shaderResource", "index": 10}, {"kind": "unorderedAccess", "index": 100} ], @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -61,7 +61,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, @@ -90,7 +90,7 @@ standard output = { { "name": "g_data", "bindings": [ - {"kind": "uniform", "offset": 0, "size": 32}, + {"kind": "uniform", "offset": 0, "size": 32, "elementStride": 16}, {"kind": "shaderResource", "index": 10, "used": 0}, {"kind": "unorderedAccess", "index": 100, "used": 0} ] diff --git a/tests/bindings/hlsl-to-vulkan-global.hlsl.expected b/tests/bindings/hlsl-to-vulkan-global.hlsl.expected index 8d3a19458..c8ed668ba 100644 --- a/tests/bindings/hlsl-to-vulkan-global.hlsl.expected +++ b/tests/bindings/hlsl-to-vulkan-global.hlsl.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "a", - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "int32" @@ -14,7 +14,7 @@ standard output = { }, { "name": "b", - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "float32" @@ -64,11 +64,11 @@ standard output = { "bindings": [ { "name": "a", - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "t", diff --git a/tests/bindings/hlsl-to-vulkan-shift-implicit.hlsl.expected b/tests/bindings/hlsl-to-vulkan-shift-implicit.hlsl.expected index 85d13552a..477f086fc 100644 --- a/tests/bindings/hlsl-to-vulkan-shift-implicit.hlsl.expected +++ b/tests/bindings/hlsl-to-vulkan-shift-implicit.hlsl.expected @@ -42,7 +42,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -50,7 +50,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, @@ -68,7 +68,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -76,11 +76,11 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} } } }, @@ -117,7 +117,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -125,7 +125,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] } diff --git a/tests/bindings/hlsl-to-vulkan-shift.hlsl.expected b/tests/bindings/hlsl-to-vulkan-shift.hlsl.expected index fd54b9692..b41087d5b 100644 --- a/tests/bindings/hlsl-to-vulkan-shift.hlsl.expected +++ b/tests/bindings/hlsl-to-vulkan-shift.hlsl.expected @@ -42,7 +42,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -50,7 +50,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, @@ -68,7 +68,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -76,11 +76,11 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} } } }, @@ -117,7 +117,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -125,7 +125,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] } diff --git a/tests/bugs/gh-7441.slang b/tests/bugs/gh-7441.slang new file mode 100644 index 000000000..94ca7965b --- /dev/null +++ b/tests/bugs/gh-7441.slang @@ -0,0 +1,74 @@ +//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUFFER):-cuda -compute -output-using-type +//TEST(compute):COMPARE_COMPUTE_EX(filecheck-buffer=BUFFER-MTL):-metal -compute -output-using-type +//TEST:REFLECTION(filecheck=REFLECT):-stage compute -entry computeMain -target cuda -no-codegen +//TEST:REFLECTION(filecheck=REFLECT-MTL):-stage compute -entry computeMain -target metal -no-codegen + + +// Test struct for bool layout analysis +struct TestType +{ + uint value; + bool f_bool; + bool1 f_bool1; + bool pad1; + bool2 f_bool2; + bool pad2; + bool3 f_bool3; + bool4 f_bool4; + uint END; +}; + +//TEST_INPUT:ubuffer(data=[0 0 0 0 0 0], stride=4):out,name=buffer +RWStructuredBuffer<TestType> buffer; + +[shader("compute")] +[numthreads(1, 1, 1)] +void computeMain(uint3 tid: SV_DispatchThreadID) +{ + uint i = tid.x; + + // Initialize test data + buffer[i].value = 7; + buffer[i].f_bool = true; + buffer[i].f_bool1 = bool1(true); + buffer[i].pad1 = false; + buffer[i].f_bool2 = bool2(true, true); + buffer[i].pad2 = false; + buffer[i].f_bool3 = bool3(true, false, true); + buffer[i].f_bool4 = bool4(true, false, true, false); + buffer[i].END = 0x12345678; +} + +// BUFFER: 7 +// BUFFER-NEXT: 101 +// BUFFER-NEXT: 1000101 +// BUFFER-NEXT: 100 +// BUFFER-NEXT: 10001 +// BUFFER-NEXT: 12345678 + +// Expected output for Metal (different struct layout) +// BUFFER-MTL: 7 +// BUFFER-MTL-NEXT: 101 +// BUFFER-MTL-NEXT: 101 +// BUFFER-MTL-NEXT: 10001 +// BUFFER-MTL-NEXT: 10001 +// BUFFER-MTL-NEXT: 12345678 + +// REFLECT: "name": "f_bool1", +// REFLECT: "binding": {"kind": "uniform", "offset": 5, "size": 1, "elementStride": 1} +// REFLECT: "name": "f_bool2", +// REFLECT: "binding": {"kind": "uniform", "offset": 8, "size": 2, "elementStride": 1} +// REFLECT: "name": "f_bool3", +// REFLECT: "binding": {"kind": "uniform", "offset": 11, "size": 3, "elementStride": 1} +// REFLECT: "name": "f_bool4", +// REFLECT: "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 1} + +// Metal-specific reflection (different bool3 layout) +// REFLECT-MTL: "name": "f_bool1", +// REFLECT-MTL: "binding": {"kind": "uniform", "offset": 5, "size": 1, "elementStride": 1} +// REFLECT-MTL: "name": "f_bool2", +// REFLECT-MTL: "binding": {"kind": "uniform", "offset": 8, "size": 2, "elementStride": 1} +// REFLECT-MTL: "name": "f_bool3", +// REFLECT-MTL: "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 1} +// REFLECT-MTL: "name": "f_bool4", +// REFLECT-MTL: "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 1} diff --git a/tests/cross-compile/cpp-resource-reflection.slang.32.expected b/tests/cross-compile/cpp-resource-reflection.slang.32.expected index 58deecf89..f889df6f9 100644 --- a/tests/cross-compile/cpp-resource-reflection.slang.32.expected +++ b/tests/cross-compile/cpp-resource-reflection.slang.32.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "thing3", - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "constantBuffer", "elementType": { @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -27,7 +27,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -35,12 +35,12 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] }, "containerVarLayout": { - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, "elementVarLayout": { "type": { @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -61,7 +61,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -69,17 +69,17 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 0} } } }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 4, "size": 8}, + "binding": {"kind": "uniform", "offset": 4, "size": 8, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -92,7 +92,7 @@ standard output = { }, { "name": "tex", - "binding": {"kind": "uniform", "offset": 12, "size": 4}, + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "texture2D" @@ -100,7 +100,7 @@ standard output = { }, { "name": "sampler", - "binding": {"kind": "uniform", "offset": 16, "size": 4}, + "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 0}, "type": { "kind": "samplerState" } @@ -125,7 +125,7 @@ standard output = { }, { "name": "thing", - "binding": {"kind": "uniform", "offset": 0, "size": 12}, + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 0}, "type": { "kind": "struct", "name": "Thing", @@ -136,7 +136,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -144,7 +144,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -152,14 +152,14 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] } }, { "name": "thing2", - "binding": {"kind": "uniform", "offset": 12, "size": 12}, + "binding": {"kind": "uniform", "offset": 12, "size": 12, "elementStride": 0}, "type": { "kind": "struct", "name": "Thing", @@ -170,7 +170,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -178,7 +178,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -186,7 +186,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] } diff --git a/tests/cross-compile/cpp-resource-reflection.slang.64.expected b/tests/cross-compile/cpp-resource-reflection.slang.64.expected index 4ded43e3e..7499756d2 100644 --- a/tests/cross-compile/cpp-resource-reflection.slang.64.expected +++ b/tests/cross-compile/cpp-resource-reflection.slang.64.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "thing3", - "binding": {"kind": "uniform", "offset": 0, "size": 8}, + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0}, "type": { "kind": "constantBuffer", "elementType": { @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -27,7 +27,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -35,12 +35,12 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] }, "containerVarLayout": { - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, "elementVarLayout": { "type": { @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -61,7 +61,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -69,17 +69,17 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 0} } } }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 8, "size": 16}, + "binding": {"kind": "uniform", "offset": 8, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -92,7 +92,7 @@ standard output = { }, { "name": "tex", - "binding": {"kind": "uniform", "offset": 24, "size": 8}, + "binding": {"kind": "uniform", "offset": 24, "size": 8, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "texture2D", @@ -104,7 +104,7 @@ standard output = { }, { "name": "sampler", - "binding": {"kind": "uniform", "offset": 32, "size": 8}, + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 0}, "type": { "kind": "samplerState" } @@ -129,7 +129,7 @@ standard output = { }, { "name": "thing", - "binding": {"kind": "uniform", "offset": 0, "size": 12}, + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 0}, "type": { "kind": "struct", "name": "Thing", @@ -140,7 +140,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -148,7 +148,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -156,14 +156,14 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] } }, { "name": "thing2", - "binding": {"kind": "uniform", "offset": 12, "size": 12}, + "binding": {"kind": "uniform", "offset": 12, "size": 12, "elementStride": 0}, "type": { "kind": "struct", "name": "Thing", @@ -174,7 +174,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -182,7 +182,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "c", @@ -190,7 +190,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} } ] } diff --git a/tests/cuda/cuda-reflection.slang.expected b/tests/cuda/cuda-reflection.slang.expected index 636bcedce..a6eeda092 100644 --- a/tests/cuda/cuda-reflection.slang.expected +++ b/tests/cuda/cuda-reflection.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "cb", - "binding": {"kind": "uniform", "offset": 0, "size": 8}, + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0}, "type": { "kind": "constantBuffer", "elementType": { @@ -28,7 +28,7 @@ standard output = { "kind": "scalar", "scalarType": "float64" }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, { "name": "b", @@ -36,13 +36,13 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 8, "size": 1} + "binding": {"kind": "uniform", "offset": 8, "size": 1, "elementStride": 0} } ] }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 16} }, { "name": "c", @@ -50,7 +50,7 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 16, "size": 1} + "binding": {"kind": "uniform", "offset": 16, "size": 1, "elementStride": 0} }, { "name": "d", @@ -63,7 +63,7 @@ standard output = { "scalarType": "float16" } }, - "binding": {"kind": "uniform", "offset": 20, "size": 24} + "binding": {"kind": "uniform", "offset": 20, "size": 24, "elementStride": 0} }, { "name": "e", @@ -71,12 +71,12 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 44, "size": 1} + "binding": {"kind": "uniform", "offset": 44, "size": 1, "elementStride": 0} } ] }, "containerVarLayout": { - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, "elementVarLayout": { "type": { @@ -98,7 +98,7 @@ standard output = { "kind": "scalar", "scalarType": "float64" }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, { "name": "b", @@ -106,13 +106,13 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 8, "size": 1} + "binding": {"kind": "uniform", "offset": 8, "size": 1, "elementStride": 0} } ] }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 16} }, { "name": "c", @@ -120,7 +120,7 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 16, "size": 1} + "binding": {"kind": "uniform", "offset": 16, "size": 1, "elementStride": 0} }, { "name": "d", @@ -133,7 +133,7 @@ standard output = { "scalarType": "float16" } }, - "binding": {"kind": "uniform", "offset": 20, "size": 24} + "binding": {"kind": "uniform", "offset": 20, "size": 24, "elementStride": 0} }, { "name": "e", @@ -141,17 +141,17 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 44, "size": 1} + "binding": {"kind": "uniform", "offset": 44, "size": 1, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} } } }, { "name": "sb", - "binding": {"kind": "uniform", "offset": 8, "size": 16}, + "binding": {"kind": "uniform", "offset": 8, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -175,7 +175,7 @@ standard output = { "kind": "scalar", "scalarType": "float64" }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, { "name": "b", @@ -183,13 +183,13 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 8, "size": 1} + "binding": {"kind": "uniform", "offset": 8, "size": 1, "elementStride": 0} } ] }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 16} }, { "name": "c", @@ -197,7 +197,7 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 16, "size": 1} + "binding": {"kind": "uniform", "offset": 16, "size": 1, "elementStride": 0} }, { "name": "d", @@ -210,7 +210,7 @@ standard output = { "scalarType": "float16" } }, - "binding": {"kind": "uniform", "offset": 20, "size": 24} + "binding": {"kind": "uniform", "offset": 20, "size": 24, "elementStride": 0} }, { "name": "e", @@ -218,7 +218,7 @@ standard output = { "kind": "scalar", "scalarType": "uint8" }, - "binding": {"kind": "uniform", "offset": 44, "size": 1} + "binding": {"kind": "uniform", "offset": 44, "size": 1, "elementStride": 0} } ] } diff --git a/tests/metal/nested-parameter-block-reflection.slang b/tests/metal/nested-parameter-block-reflection.slang index a294755da..91c07b9c8 100644 --- a/tests/metal/nested-parameter-block-reflection.slang +++ b/tests/metal/nested-parameter-block-reflection.slang @@ -6,13 +6,13 @@ // CHECK: "binding": {"kind": "constantBuffer", "index": 0}, // CHECK:"name": "pdata", -// CHECK:"binding": {"kind": "uniform", "offset": 0, "size": 16} +// CHECK:"binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} // CHECK:"name": "tex", // Since we will apply MetalArgumentBufferTier2, 'tex' here will just be a uniform. // The pdata is a nested parameter block, so it will be a 64-bit device pointer which take // 8 bytes. So the offset of `tex` will be 8 bytes. -// CHECK:"binding": {"kind": "uniform", "offset": 8, "size": 8} +// CHECK:"binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} // Check that there will be only two bindings. diff --git a/tests/metal/simple-compute.slang b/tests/metal/simple-compute.slang index d70d37f5c..c2ff16685 100644 --- a/tests/metal/simple-compute.slang +++ b/tests/metal/simple-compute.slang @@ -18,10 +18,10 @@ ParameterBlock<MyBlock> block2; // REFLECT: "elementVarLayout": { // REFLECT: "name": "b1", -// REFLECT: "binding": {"kind": "uniform", "offset": 0, "size": 8} +// REFLECT: "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} // REFLECT: "name": "b2", -// REFLECT: "binding": {"kind": "uniform", "offset": 8, "size": 8} +// REFLECT: "binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} // REFLECT: "binding": {"kind": "metalArgumentBufferElement", "index": 0, "count": 2} diff --git a/tests/metal/vector-argument-buffer-layout.slang b/tests/metal/vector-argument-buffer-layout.slang index 8b74e90d3..5e45e3a01 100644 --- a/tests/metal/vector-argument-buffer-layout.slang +++ b/tests/metal/vector-argument-buffer-layout.slang @@ -9,9 +9,9 @@ //CHECK: "dir" -//CHECK: "binding": {"kind": "uniform", "offset": 0, "size": 16} +//CHECK: "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} //CHECK: "color" -//CHECK: "binding": {"kind": "uniform", "offset": 16, "size": 16} +//CHECK: "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 4} struct Params { diff --git a/tests/reflection/acceleration-structure.slang b/tests/reflection/acceleration-structure.slang index cfb7d232b..cbff7784d 100644 --- a/tests/reflection/acceleration-structure.slang +++ b/tests/reflection/acceleration-structure.slang @@ -1,6 +1,6 @@ //TEST(64-bit):REFLECTION(filecheck=CHECK): -target cuda -// CHECK: "binding": {"kind": "uniform", "offset": 0, "size": 8}, +// CHECK: "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0}, uniform RaytracingAccelerationStructure accel; [numthreads(1,1,1)] diff --git a/tests/reflection/actual-global.slang.expected b/tests/reflection/actual-global.slang.expected index bef1a05d9..44180c133 100644 --- a/tests/reflection/actual-global.slang.expected +++ b/tests/reflection/actual-global.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "regularGlobal", - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "int32" @@ -14,7 +14,7 @@ standard output = { }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 8, "size": 16}, + "binding": {"kind": "uniform", "offset": 8, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", diff --git a/tests/reflection/arrays.hlsl.expected b/tests/reflection/arrays.hlsl.expected index 3e0bd6723..0a2d2e43a 100644 --- a/tests/reflection/arrays.hlsl.expected +++ b/tests/reflection/arrays.hlsl.expected @@ -18,7 +18,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -31,7 +31,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 148} + "binding": {"kind": "uniform", "offset": 16, "size": 148, "elementStride": 16} }, { "name": "y", @@ -39,7 +39,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 164, "size": 4} + "binding": {"kind": "uniform", "offset": 164, "size": 4, "elementStride": 0} } ] }, @@ -56,7 +56,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -69,7 +69,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 148} + "binding": {"kind": "uniform", "offset": 16, "size": 148, "elementStride": 16} }, { "name": "y", @@ -77,11 +77,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 164, "size": 4} + "binding": {"kind": "uniform", "offset": 164, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 168} + "binding": {"kind": "uniform", "offset": 0, "size": 168, "elementStride": 0} } } }, diff --git a/tests/reflection/attribute.slang.expected b/tests/reflection/attribute.slang.expected index 665d0b367..664613aef 100644 --- a/tests/reflection/attribute.slang.expected +++ b/tests/reflection/attribute.slang.expected @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -35,7 +35,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "userAttribs": [ { "name": "DefaultValue", @@ -71,7 +71,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -87,7 +87,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "userAttribs": [ { "name": "DefaultValue", @@ -109,7 +109,7 @@ standard output = { } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, @@ -128,7 +128,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "z", @@ -144,7 +144,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "userAttribs": [ { "name": "DefaultValue", @@ -180,7 +180,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "z", @@ -196,7 +196,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "userAttribs": [ { "name": "DefaultValue", @@ -218,7 +218,7 @@ standard output = { } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, @@ -232,7 +232,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "int32" @@ -240,7 +240,7 @@ standard output = { }, { "name": "param3", - "binding": {"kind": "uniform", "offset": 16, "size": 4}, + "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 0}, "type": { "kind": "struct", "name": "D", @@ -251,7 +251,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ], "userAttribs": [ @@ -274,7 +274,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 20, "size": 4}, + "binding": {"kind": "uniform", "offset": 20, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "int32" @@ -308,7 +308,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "float32" @@ -324,7 +324,7 @@ standard output = { ] } ], - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "float32" diff --git a/tests/reflection/binding-gl.hlsl.expected b/tests/reflection/binding-gl.hlsl.expected index 67df7c267..7e9a17125 100644 --- a/tests/reflection/binding-gl.hlsl.expected +++ b/tests/reflection/binding-gl.hlsl.expected @@ -18,7 +18,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -31,7 +31,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 160} + "binding": {"kind": "uniform", "offset": 16, "size": 160, "elementStride": 16} }, { "name": "y", @@ -39,7 +39,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 176, "size": 4} + "binding": {"kind": "uniform", "offset": 176, "size": 4, "elementStride": 0} } ] }, @@ -56,7 +56,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -69,7 +69,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 160} + "binding": {"kind": "uniform", "offset": 16, "size": 160, "elementStride": 16} }, { "name": "y", @@ -77,11 +77,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 176, "size": 4} + "binding": {"kind": "uniform", "offset": 176, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 192} + "binding": {"kind": "uniform", "offset": 0, "size": 192, "elementStride": 0} } } }, diff --git a/tests/reflection/binding-push-constant-gl.hlsl.expected b/tests/reflection/binding-push-constant-gl.hlsl.expected index 7321c5fac..89a8b5dcd 100644 --- a/tests/reflection/binding-push-constant-gl.hlsl.expected +++ b/tests/reflection/binding-push-constant-gl.hlsl.expected @@ -18,7 +18,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -31,7 +31,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 160} + "binding": {"kind": "uniform", "offset": 16, "size": 160, "elementStride": 16} }, { "name": "y", @@ -39,7 +39,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 176, "size": 4} + "binding": {"kind": "uniform", "offset": 176, "size": 4, "elementStride": 0} } ] }, @@ -56,7 +56,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -69,7 +69,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 16, "size": 160} + "binding": {"kind": "uniform", "offset": 16, "size": 160, "elementStride": 16} }, { "name": "y", @@ -77,11 +77,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 176, "size": 4} + "binding": {"kind": "uniform", "offset": 176, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 192} + "binding": {"kind": "uniform", "offset": 0, "size": 192, "elementStride": 0} } } }, @@ -100,7 +100,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "pushY", @@ -108,7 +108,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, @@ -126,7 +126,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "pushY", @@ -134,11 +134,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, diff --git a/tests/reflection/buffer-layout.slang.1.expected b/tests/reflection/buffer-layout.slang.1.expected index be59f888f..642cbd680 100644 --- a/tests/reflection/buffer-layout.slang.1.expected +++ b/tests/reflection/buffer-layout.slang.1.expected @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -33,7 +33,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -41,11 +41,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 0} }, { "name": "b", @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 32, "size": 4} + "binding": {"kind": "uniform", "offset": 32, "size": 4, "elementStride": 0} }, { "name": "c", @@ -70,7 +70,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 48, "size": 32} + "binding": {"kind": "uniform", "offset": 48, "size": 32, "elementStride": 16} }, { "name": "d", @@ -78,7 +78,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 80, "size": 4} + "binding": {"kind": "uniform", "offset": 80, "size": 4, "elementStride": 0} } ] }, @@ -96,7 +96,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -110,7 +110,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -118,11 +118,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 0} }, { "name": "b", @@ -130,7 +130,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 32, "size": 4} + "binding": {"kind": "uniform", "offset": 32, "size": 4, "elementStride": 0} }, { "name": "c", @@ -147,7 +147,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 48, "size": 32} + "binding": {"kind": "uniform", "offset": 48, "size": 32, "elementStride": 16} }, { "name": "d", @@ -155,11 +155,11 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 80, "size": 4} + "binding": {"kind": "uniform", "offset": 80, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 96} + "binding": {"kind": "uniform", "offset": 0, "size": 96, "elementStride": 0} } } }, @@ -180,7 +180,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -194,7 +194,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -202,11 +202,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 4, "size": 8} + "binding": {"kind": "uniform", "offset": 4, "size": 8, "elementStride": 0} }, { "name": "b", @@ -214,7 +214,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "c", @@ -231,7 +231,7 @@ standard output = { }, "uniformStride": 8 }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 8} }, { "name": "d", @@ -239,7 +239,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 32, "size": 4} + "binding": {"kind": "uniform", "offset": 32, "size": 4, "elementStride": 0} } ] } diff --git a/tests/reflection/buffer-layout.slang.expected b/tests/reflection/buffer-layout.slang.expected index 84a3e4b49..d37f94ea6 100644 --- a/tests/reflection/buffer-layout.slang.expected +++ b/tests/reflection/buffer-layout.slang.expected @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -33,7 +33,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -41,11 +41,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 16, "size": 8} + "binding": {"kind": "uniform", "offset": 16, "size": 8, "elementStride": 0} }, { "name": "b", @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 24, "size": 4} + "binding": {"kind": "uniform", "offset": 24, "size": 4, "elementStride": 0} }, { "name": "c", @@ -70,7 +70,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 32, "size": 24} + "binding": {"kind": "uniform", "offset": 32, "size": 24, "elementStride": 16} }, { "name": "d", @@ -78,7 +78,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 56, "size": 4} + "binding": {"kind": "uniform", "offset": 56, "size": 4, "elementStride": 0} } ] }, @@ -96,7 +96,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -110,7 +110,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -118,11 +118,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 16, "size": 8} + "binding": {"kind": "uniform", "offset": 16, "size": 8, "elementStride": 0} }, { "name": "b", @@ -130,7 +130,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 24, "size": 4} + "binding": {"kind": "uniform", "offset": 24, "size": 4, "elementStride": 0} }, { "name": "c", @@ -147,7 +147,7 @@ standard output = { }, "uniformStride": 16 }, - "binding": {"kind": "uniform", "offset": 32, "size": 24} + "binding": {"kind": "uniform", "offset": 32, "size": 24, "elementStride": 16} }, { "name": "d", @@ -155,11 +155,11 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 56, "size": 4} + "binding": {"kind": "uniform", "offset": 56, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 60} + "binding": {"kind": "uniform", "offset": 0, "size": 60, "elementStride": 0} } } }, @@ -180,7 +180,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "a", @@ -194,7 +194,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "y", @@ -202,11 +202,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 4, "size": 8} + "binding": {"kind": "uniform", "offset": 4, "size": 8, "elementStride": 0} }, { "name": "b", @@ -214,7 +214,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "c", @@ -231,7 +231,7 @@ standard output = { }, "uniformStride": 8 }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 8} }, { "name": "d", @@ -239,7 +239,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 32, "size": 4} + "binding": {"kind": "uniform", "offset": 32, "size": 4, "elementStride": 0} } ] } diff --git a/tests/reflection/cross-compile.slang.expected b/tests/reflection/cross-compile.slang.expected index 2cd77fee2..b37be7f2a 100644 --- a/tests/reflection/cross-compile.slang.expected +++ b/tests/reflection/cross-compile.slang.expected @@ -45,7 +45,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} } ] }, @@ -66,11 +66,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} } } } diff --git a/tests/reflection/global-type-params.slang.expected b/tests/reflection/global-type-params.slang.expected index 07180b7ea..a20cd9f10 100644 --- a/tests/reflection/global-type-params.slang.expected +++ b/tests/reflection/global-type-params.slang.expected @@ -107,7 +107,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "v", @@ -119,7 +119,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 4} }, { "name": "w", @@ -131,7 +131,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 16} + "binding": {"kind": "uniform", "offset": 32, "size": 16, "elementStride": 4} } ] }, @@ -152,7 +152,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "v", @@ -164,7 +164,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 16} + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 4} }, { "name": "w", @@ -176,11 +176,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 16} + "binding": {"kind": "uniform", "offset": 32, "size": 16, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} } } } diff --git a/tests/reflection/matrix-layout.slang.1.expected b/tests/reflection/matrix-layout.slang.1.expected index e471f060c..cfa997cb3 100644 --- a/tests/reflection/matrix-layout.slang.1.expected +++ b/tests/reflection/matrix-layout.slang.1.expected @@ -23,7 +23,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} }, { "name": "ab", @@ -36,7 +36,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 48, "size": 48} + "binding": {"kind": "uniform", "offset": 48, "size": 48, "elementStride": 0} }, { "name": "ac", @@ -49,7 +49,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 96, "size": 60} + "binding": {"kind": "uniform", "offset": 96, "size": 60, "elementStride": 0} } ] }, @@ -71,7 +71,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} }, { "name": "ab", @@ -84,7 +84,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 48, "size": 48} + "binding": {"kind": "uniform", "offset": 48, "size": 48, "elementStride": 0} }, { "name": "ac", @@ -97,11 +97,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 96, "size": 60} + "binding": {"kind": "uniform", "offset": 96, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 156} + "binding": {"kind": "uniform", "offset": 0, "size": 156, "elementStride": 0} } } }, @@ -130,7 +130,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} }, { "name": "bb", @@ -143,7 +143,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 48, "size": 48} + "binding": {"kind": "uniform", "offset": 48, "size": 48, "elementStride": 0} }, { "name": "bc", @@ -156,11 +156,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 96, "size": 60} + "binding": {"kind": "uniform", "offset": 96, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 156} + "binding": {"kind": "uniform", "offset": 0, "size": 156, "elementStride": 0} } ] }, @@ -188,7 +188,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 48} + "binding": {"kind": "uniform", "offset": 0, "size": 48, "elementStride": 0} }, { "name": "bb", @@ -201,7 +201,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 48, "size": 48} + "binding": {"kind": "uniform", "offset": 48, "size": 48, "elementStride": 0} }, { "name": "bc", @@ -214,15 +214,15 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 96, "size": 60} + "binding": {"kind": "uniform", "offset": 96, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 156} + "binding": {"kind": "uniform", "offset": 0, "size": 156, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 156} + "binding": {"kind": "uniform", "offset": 0, "size": 156, "elementStride": 0} } } } diff --git a/tests/reflection/matrix-layout.slang.expected b/tests/reflection/matrix-layout.slang.expected index c42b1bfec..c3f5fb092 100644 --- a/tests/reflection/matrix-layout.slang.expected +++ b/tests/reflection/matrix-layout.slang.expected @@ -23,7 +23,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 60} + "binding": {"kind": "uniform", "offset": 0, "size": 60, "elementStride": 0} }, { "name": "ab", @@ -36,7 +36,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 64, "size": 48} + "binding": {"kind": "uniform", "offset": 64, "size": 48, "elementStride": 0} }, { "name": "ac", @@ -49,7 +49,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 112, "size": 60} + "binding": {"kind": "uniform", "offset": 112, "size": 60, "elementStride": 0} } ] }, @@ -71,7 +71,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 60} + "binding": {"kind": "uniform", "offset": 0, "size": 60, "elementStride": 0} }, { "name": "ab", @@ -84,7 +84,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 64, "size": 48} + "binding": {"kind": "uniform", "offset": 64, "size": 48, "elementStride": 0} }, { "name": "ac", @@ -97,11 +97,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 112, "size": 60} + "binding": {"kind": "uniform", "offset": 112, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 172} + "binding": {"kind": "uniform", "offset": 0, "size": 172, "elementStride": 0} } } }, @@ -130,7 +130,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 60} + "binding": {"kind": "uniform", "offset": 0, "size": 60, "elementStride": 0} }, { "name": "bb", @@ -143,7 +143,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 64, "size": 48} + "binding": {"kind": "uniform", "offset": 64, "size": 48, "elementStride": 0} }, { "name": "bc", @@ -156,11 +156,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 112, "size": 60} + "binding": {"kind": "uniform", "offset": 112, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 172} + "binding": {"kind": "uniform", "offset": 0, "size": 172, "elementStride": 0} } ] }, @@ -188,7 +188,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 60} + "binding": {"kind": "uniform", "offset": 0, "size": 60, "elementStride": 0} }, { "name": "bb", @@ -201,7 +201,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 64, "size": 48} + "binding": {"kind": "uniform", "offset": 64, "size": 48, "elementStride": 0} }, { "name": "bc", @@ -214,15 +214,15 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 112, "size": 60} + "binding": {"kind": "uniform", "offset": 112, "size": 60, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 172} + "binding": {"kind": "uniform", "offset": 0, "size": 172, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 172} + "binding": {"kind": "uniform", "offset": 0, "size": 172, "elementStride": 0} } } } diff --git a/tests/reflection/mix-explicit-and-implicit-spaces.slang.expected b/tests/reflection/mix-explicit-and-implicit-spaces.slang.expected index 3bf9fc3ec..2bf966610 100644 --- a/tests/reflection/mix-explicit-and-implicit-spaces.slang.expected +++ b/tests/reflection/mix-explicit-and-implicit-spaces.slang.expected @@ -19,7 +19,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -40,11 +40,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } }, @@ -63,7 +63,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -84,11 +84,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } }, @@ -107,7 +107,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -128,11 +128,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } } diff --git a/tests/reflection/multi-file.hlsl.expected b/tests/reflection/multi-file.hlsl.expected index 804e5874f..2b916d5a2 100644 --- a/tests/reflection/multi-file.hlsl.expected +++ b/tests/reflection/multi-file.hlsl.expected @@ -45,7 +45,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "vertexCB", @@ -53,7 +53,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "vertexCC", @@ -65,7 +65,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "vertexCD", @@ -77,7 +77,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, @@ -98,7 +98,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "vertexCB", @@ -106,7 +106,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "vertexCC", @@ -118,7 +118,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "vertexCD", @@ -130,11 +130,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 40} + "binding": {"kind": "uniform", "offset": 0, "size": 40, "elementStride": 0} } } }, @@ -179,7 +179,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "fragmentCB", @@ -187,7 +187,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "fragmentCC", @@ -199,7 +199,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "fragmentCD", @@ -211,7 +211,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, @@ -232,7 +232,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "fragmentCB", @@ -240,7 +240,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "fragmentCC", @@ -252,7 +252,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "fragmentCD", @@ -264,11 +264,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 40} + "binding": {"kind": "uniform", "offset": 0, "size": 40, "elementStride": 0} } } }, @@ -313,7 +313,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "sharedCB", @@ -321,7 +321,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "sharedCC", @@ -333,7 +333,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "sharedCD", @@ -345,7 +345,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, @@ -366,7 +366,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "sharedCB", @@ -374,7 +374,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "sharedCC", @@ -386,7 +386,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 16, "size": 12} + "binding": {"kind": "uniform", "offset": 16, "size": 12, "elementStride": 4} }, { "name": "sharedCD", @@ -398,11 +398,11 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 32, "size": 8} + "binding": {"kind": "uniform", "offset": 32, "size": 8, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 40} + "binding": {"kind": "uniform", "offset": 0, "size": 40, "elementStride": 0} } } }, diff --git a/tests/reflection/parameter-block-explicit-space.slang.expected b/tests/reflection/parameter-block-explicit-space.slang.expected index 347f0fd5c..9d4d2d609 100644 --- a/tests/reflection/parameter-block-explicit-space.slang.expected +++ b/tests/reflection/parameter-block-explicit-space.slang.expected @@ -23,7 +23,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "at1", @@ -87,7 +87,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "at1", @@ -133,7 +133,7 @@ standard output = { "bindings": [ {"kind": "shaderResource", "index": 0, "count": 2}, {"kind": "samplerState", "index": 0}, - {"kind": "uniform", "offset": 0, "size": 16} + {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} ] } } @@ -157,7 +157,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "bt", @@ -205,7 +205,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 16} + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 4} }, { "name": "bt", @@ -235,7 +235,7 @@ standard output = { "bindings": [ {"kind": "shaderResource", "index": 0}, {"kind": "samplerState", "index": 0}, - {"kind": "uniform", "offset": 0, "size": 16} + {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} ] } } diff --git a/tests/reflection/ptr/ptr-generic.slang.expected b/tests/reflection/ptr/ptr-generic.slang.expected index e2473db42..1a4c8acfa 100644 --- a/tests/reflection/ptr/ptr-generic.slang.expected +++ b/tests/reflection/ptr/ptr-generic.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "genericPtr", - "binding": {"kind": "uniform", "offset": 0, "size": 8}, + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0}, "type": { "kind": "pointer", "valueType": "GenericStruct" @@ -14,7 +14,7 @@ standard output = { }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 8, "size": 16}, + "binding": {"kind": "uniform", "offset": 8, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", diff --git a/tests/reflection/ptr/ptr-global.slang.expected b/tests/reflection/ptr/ptr-global.slang.expected index 1a6c15a7e..d040027d5 100644 --- a/tests/reflection/ptr/ptr-global.slang.expected +++ b/tests/reflection/ptr/ptr-global.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "inputBuffer", - "binding": {"kind": "uniform", "offset": 0, "size": 16}, + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -21,7 +21,7 @@ standard output = { "kind": "pointer", "valueType": "int" }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, { "name": "regularGlobal2", @@ -29,7 +29,7 @@ standard output = { "kind": "pointer", "valueType": "int" }, - "binding": {"kind": "uniform", "offset": 8, "size": 8} + "binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} }, { "name": "regularGlobal3", @@ -37,7 +37,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 16, "size": 4} + "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 0} } ] } @@ -45,7 +45,7 @@ standard output = { }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 16, "size": 16}, + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", diff --git a/tests/reflection/ptr/ptr-self-reference.slang.expected b/tests/reflection/ptr/ptr-self-reference.slang.expected index 81745fb20..ed704579f 100644 --- a/tests/reflection/ptr/ptr-self-reference.slang.expected +++ b/tests/reflection/ptr/ptr-self-reference.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "inputBuffer", - "binding": {"kind": "uniform", "offset": 0, "size": 16}, + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -21,7 +21,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "next", @@ -29,7 +29,7 @@ standard output = { "kind": "pointer", "valueType": "SomeStruct" }, - "binding": {"kind": "uniform", "offset": 8, "size": 8} + "binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} } ] } @@ -37,7 +37,7 @@ standard output = { }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 16, "size": 16}, + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", diff --git a/tests/reflection/ptr/ptr-struct.slang.expected b/tests/reflection/ptr/ptr-struct.slang.expected index 3ae17416c..71e495dd7 100644 --- a/tests/reflection/ptr/ptr-struct.slang.expected +++ b/tests/reflection/ptr/ptr-struct.slang.expected @@ -6,7 +6,7 @@ standard output = { "parameters": [ { "name": "inputBuffer", - "binding": {"kind": "uniform", "offset": 0, "size": 16}, + "binding": {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", @@ -21,7 +21,7 @@ standard output = { "kind": "pointer", "valueType": "int" }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} }, { "name": "ptrInt2", @@ -29,7 +29,7 @@ standard output = { "kind": "pointer", "valueType": "int" }, - "binding": {"kind": "uniform", "offset": 8, "size": 8} + "binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} }, { "name": "anInt", @@ -37,7 +37,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 16, "size": 4} + "binding": {"kind": "uniform", "offset": 16, "size": 4, "elementStride": 0} }, { "name": "another", @@ -51,7 +51,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -59,7 +59,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} }, { "name": "ptrC", @@ -67,11 +67,11 @@ standard output = { "kind": "pointer", "valueType": "int" }, - "binding": {"kind": "uniform", "offset": 8, "size": 8} + "binding": {"kind": "uniform", "offset": 8, "size": 8, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 24, "size": 16} + "binding": {"kind": "uniform", "offset": 24, "size": 16, "elementStride": 0} }, { "name": "anotherPtr", @@ -79,7 +79,7 @@ standard output = { "kind": "pointer", "valueType": "AnotherStruct" }, - "binding": {"kind": "uniform", "offset": 40, "size": 8} + "binding": {"kind": "uniform", "offset": 40, "size": 8, "elementStride": 0} } ] } @@ -87,7 +87,7 @@ standard output = { }, { "name": "outputBuffer", - "binding": {"kind": "uniform", "offset": 16, "size": 16}, + "binding": {"kind": "uniform", "offset": 16, "size": 16, "elementStride": 0}, "type": { "kind": "resource", "baseShape": "structuredBuffer", diff --git a/tests/reflection/reflect-imported-code.hlsl.expected b/tests/reflection/reflect-imported-code.hlsl.expected index 8a906d0f7..ce67919c9 100644 --- a/tests/reflection/reflect-imported-code.hlsl.expected +++ b/tests/reflection/reflect-imported-code.hlsl.expected @@ -41,7 +41,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -58,11 +58,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } }, @@ -103,7 +103,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -120,11 +120,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } } diff --git a/tests/reflection/reflect-static.slang.expected b/tests/reflection/reflect-static.slang.expected index e7d5aa356..df3288a6f 100644 --- a/tests/reflection/reflect-static.slang.expected +++ b/tests/reflection/reflect-static.slang.expected @@ -44,7 +44,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -52,7 +52,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, @@ -70,7 +70,7 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "b", @@ -78,11 +78,11 @@ standard output = { "kind": "scalar", "scalarType": "int32" }, - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, diff --git a/tests/reflection/reflection0.hlsl.expected b/tests/reflection/reflection0.hlsl.expected index f435aa829..e1712e616 100644 --- a/tests/reflection/reflection0.hlsl.expected +++ b/tests/reflection/reflection0.hlsl.expected @@ -41,7 +41,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, @@ -58,11 +58,11 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} } } } diff --git a/tests/reflection/resource-in-cbuffer.hlsl.expected b/tests/reflection/resource-in-cbuffer.hlsl.expected index f85a5fb59..3eef66d06 100644 --- a/tests/reflection/resource-in-cbuffer.hlsl.expected +++ b/tests/reflection/resource-in-cbuffer.hlsl.expected @@ -26,7 +26,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "myTexture", @@ -50,7 +50,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "mySampler", @@ -78,7 +78,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 12} + "binding": {"kind": "uniform", "offset": 0, "size": 12, "elementStride": 4} }, { "name": "myTexture", @@ -102,7 +102,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} }, { "name": "mySampler", @@ -116,7 +116,7 @@ standard output = { "bindings": [ {"kind": "shaderResource", "index": 0}, {"kind": "samplerState", "index": 0}, - {"kind": "uniform", "offset": 0, "size": 16} + {"kind": "uniform", "offset": 0, "size": 16, "elementStride": 0} ] } } diff --git a/tests/reflection/structured-buffer.slang.expected b/tests/reflection/structured-buffer.slang.expected index 54842d8f0..b65e8e1d2 100644 --- a/tests/reflection/structured-buffer.slang.expected +++ b/tests/reflection/structured-buffer.slang.expected @@ -52,7 +52,7 @@ standard output = { "scalarType": "float32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 4} }, { "name": "b", @@ -60,7 +60,7 @@ standard output = { "kind": "scalar", "scalarType": "float32" }, - "binding": {"kind": "uniform", "offset": 8, "size": 4} + "binding": {"kind": "uniform", "offset": 8, "size": 4, "elementStride": 0} }, { "name": "c", @@ -68,7 +68,7 @@ standard output = { "kind": "scalar", "scalarType": "uint32" }, - "binding": {"kind": "uniform", "offset": 12, "size": 4} + "binding": {"kind": "uniform", "offset": 12, "size": 4, "elementStride": 0} } ] } diff --git a/tests/reflection/used-parameters.slang.expected b/tests/reflection/used-parameters.slang.expected index 59b1ae14d..33846f8af 100644 --- a/tests/reflection/used-parameters.slang.expected +++ b/tests/reflection/used-parameters.slang.expected @@ -23,7 +23,7 @@ standard output = { "scalarType": "uint32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 4} } ] }, @@ -45,11 +45,11 @@ standard output = { "scalarType": "uint32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, @@ -72,7 +72,7 @@ standard output = { "scalarType": "uint32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 4} } ] }, @@ -94,11 +94,11 @@ standard output = { "scalarType": "uint32" } }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 4} } ] }, - "binding": {"kind": "uniform", "offset": 0, "size": 8} + "binding": {"kind": "uniform", "offset": 0, "size": 8, "elementStride": 0} } } }, @@ -272,7 +272,7 @@ standard output = { }, { "name": "UsedUniform", - "binding": {"kind": "uniform", "offset": 0, "size": 4}, + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "uint32" @@ -280,7 +280,7 @@ standard output = { }, { "name": "UnusedUniform", - "binding": {"kind": "uniform", "offset": 4, "size": 4}, + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0}, "type": { "kind": "scalar", "scalarType": "uint32" @@ -377,11 +377,11 @@ standard output = { }, { "name": "UsedUniform", - "binding": {"kind": "uniform", "offset": 0, "size": 4} + "binding": {"kind": "uniform", "offset": 0, "size": 4, "elementStride": 0} }, { "name": "UnusedUniform", - "binding": {"kind": "uniform", "offset": 4, "size": 4} + "binding": {"kind": "uniform", "offset": 4, "size": 4, "elementStride": 0} } ] } |
