summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.yml3
-rw-r--r--prelude/slang-cuda-prelude.h85
-rw-r--r--source/slang/slang-reflection-json.cpp6
-rw-r--r--source/slang/slang-type-layout.cpp8
-rw-r--r--tests/bindings/hlsl-to-vulkan-array.hlsl.expected8
-rw-r--r--tests/bindings/hlsl-to-vulkan-global.hlsl.expected8
-rw-r--r--tests/bindings/hlsl-to-vulkan-shift-implicit.hlsl.expected14
-rw-r--r--tests/bindings/hlsl-to-vulkan-shift.hlsl.expected14
-rw-r--r--tests/bugs/gh-7441.slang74
-rw-r--r--tests/cross-compile/cpp-resource-reflection.slang.32.expected40
-rw-r--r--tests/cross-compile/cpp-resource-reflection.slang.64.expected40
-rw-r--r--tests/cuda/cuda-reflection.slang.expected44
-rw-r--r--tests/metal/nested-parameter-block-reflection.slang4
-rw-r--r--tests/metal/simple-compute.slang4
-rw-r--r--tests/metal/vector-argument-buffer-layout.slang4
-rw-r--r--tests/reflection/acceleration-structure.slang2
-rw-r--r--tests/reflection/actual-global.slang.expected4
-rw-r--r--tests/reflection/arrays.hlsl.expected14
-rw-r--r--tests/reflection/attribute.slang.expected32
-rw-r--r--tests/reflection/binding-gl.hlsl.expected14
-rw-r--r--tests/reflection/binding-push-constant-gl.hlsl.expected24
-rw-r--r--tests/reflection/buffer-layout.slang.1.expected44
-rw-r--r--tests/reflection/buffer-layout.slang.expected44
-rw-r--r--tests/reflection/cross-compile.slang.expected6
-rw-r--r--tests/reflection/global-type-params.slang.expected14
-rw-r--r--tests/reflection/matrix-layout.slang.1.expected32
-rw-r--r--tests/reflection/matrix-layout.slang.expected32
-rw-r--r--tests/reflection/mix-explicit-and-implicit-spaces.slang.expected18
-rw-r--r--tests/reflection/multi-file.hlsl.expected54
-rw-r--r--tests/reflection/parameter-block-explicit-space.slang.expected12
-rw-r--r--tests/reflection/ptr/ptr-generic.slang.expected4
-rw-r--r--tests/reflection/ptr/ptr-global.slang.expected10
-rw-r--r--tests/reflection/ptr/ptr-self-reference.slang.expected8
-rw-r--r--tests/reflection/ptr/ptr-struct.slang.expected20
-rw-r--r--tests/reflection/reflect-imported-code.hlsl.expected12
-rw-r--r--tests/reflection/reflect-static.slang.expected10
-rw-r--r--tests/reflection/reflection0.hlsl.expected6
-rw-r--r--tests/reflection/resource-in-cbuffer.hlsl.expected10
-rw-r--r--tests/reflection/structured-buffer.slang.expected6
-rw-r--r--tests/reflection/used-parameters.slang.expected20
40 files changed, 469 insertions, 339 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 72c1f2cce..c563f91d6 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -343,7 +343,8 @@ jobs:
Get-ChildItem -Path "$SITE_PACKAGES\slangpy" | ForEach-Object { Write-Host "$($_.Name) - Last Modified: $($_.LastWriteTime)" }
Write-Host "Running pytest on slangpy tests..."
$env:PYTHONPATH = "$SITE_PACKAGES"
- python -m pytest "$SITE_PACKAGES\slangpy\tests" -v
+ # Disable some slangpy tests temporarily. This should be enabled back when https://github.com/shader-slang/slangpy/issues/274 is closed.
+ python -m pytest "$SITE_PACKAGES\slangpy\tests" -v -k "not (test_nested_structs and DeviceType.cuda) and not (test_cursor_read_write and DeviceType.cuda) and not (test_fill_from_kernel and DeviceType.cuda) and not (test_wrap_buffer and DeviceType.cuda) and not (test_apply_changes and DeviceType.cuda) and not (test_shader_cursor and DeviceType.cuda)"
- uses: actions/upload-artifact@v4
if: steps.filter.outputs.should-run == 'true' && ! matrix.full-gpu-tests
with:
diff --git a/prelude/slang-cuda-prelude.h b/prelude/slang-cuda-prelude.h
index 3ebdbe777..178c12f5f 100644
--- a/prelude/slang-cuda-prelude.h
+++ b/prelude/slang-cuda-prelude.h
@@ -190,10 +190,65 @@ typedef size_t NonUniformResourceIndex;
template<typename T, int ROWS, int COLS>
struct Matrix;
-typedef int1 bool1;
-typedef int2 bool2;
-typedef int3 bool3;
-typedef int4 bool4;
+// Boolean vector types should follow CUDA's builtin vector alignment rules
+// Align boolX the same as charX according to CUDA spec:
+// char1/uchar1: 1-byte aligned, char2/uchar2: 2-byte aligned
+// char3/uchar3: 1-byte aligned, char4/uchar4: 4-byte aligned
+struct __align__(1) bool1
+{
+ bool x;
+
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL bool& operator[](int idx)
+ {
+ return (&x)[idx];
+ }
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL const bool& operator[](int idx) const
+ {
+ return (&x)[idx];
+ }
+};
+
+struct __align__(2) bool2
+{
+ bool x, y;
+
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL bool& operator[](int idx)
+ {
+ return (&x)[idx];
+ }
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL const bool& operator[](int idx) const
+ {
+ return (&x)[idx];
+ }
+};
+
+struct __align__(1) bool3
+{
+ bool x, y, z;
+
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL bool& operator[](int idx)
+ {
+ return (&x)[idx];
+ }
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL const bool& operator[](int idx) const
+ {
+ return (&x)[idx];
+ }
+};
+
+struct __align__(4) bool4
+{
+ bool x, y, z, w;
+
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL bool& operator[](int idx)
+ {
+ return (&x)[idx];
+ }
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL const bool& operator[](int idx) const
+ {
+ return (&x)[idx];
+ }
+};
#if SLANG_CUDA_RTC
@@ -282,6 +337,7 @@ struct __align__(4) __half4
return ((T*)(&x))[index]; \
}
SLANG_VECTOR_GET_ELEMENT(int)
+SLANG_VECTOR_GET_ELEMENT(bool)
SLANG_VECTOR_GET_ELEMENT(uint)
SLANG_VECTOR_GET_ELEMENT(short)
SLANG_VECTOR_GET_ELEMENT(ushort)
@@ -310,6 +366,7 @@ SLANG_VECTOR_GET_ELEMENT(double)
return ((T*)(x)) + index; \
}
SLANG_VECTOR_GET_ELEMENT_PTR(int)
+SLANG_VECTOR_GET_ELEMENT_PTR(bool)
SLANG_VECTOR_GET_ELEMENT_PTR(uint)
SLANG_VECTOR_GET_ELEMENT_PTR(short)
SLANG_VECTOR_GET_ELEMENT_PTR(ushort)
@@ -334,15 +391,14 @@ SLANG_VECTOR_GET_ELEMENT_PTR(__half)
_slang_vector_get_element(thisVal, i) op _slang_vector_get_element(other, i); \
return result; \
}
-#define SLANG_CUDA_VECTOR_BINARY_COMPARE_OP(T, n, op) \
- SLANG_FORCE_INLINE SLANG_CUDA_CALL bool##n operator op(T##n thisVal, T##n other) \
- { \
- bool##n result; \
- for (int i = 0; i < n; i++) \
- *_slang_vector_get_element_ptr(&result, i) = \
- (int)(_slang_vector_get_element(thisVal, i) \
- op _slang_vector_get_element(other, i)); \
- return result; \
+#define SLANG_CUDA_VECTOR_BINARY_COMPARE_OP(T, n, op) \
+ SLANG_FORCE_INLINE SLANG_CUDA_CALL bool##n operator op(T##n thisVal, T##n other) \
+ { \
+ bool##n result; \
+ for (int i = 0; i < n; i++) \
+ *_slang_vector_get_element_ptr(&result, i) = \
+ (_slang_vector_get_element(thisVal, i) op _slang_vector_get_element(other, i)); \
+ return result; \
}
#define SLANG_CUDA_VECTOR_UNARY_OP(T, n, op) \
SLANG_FORCE_INLINE SLANG_CUDA_CALL T##n operator op(T##n thisVal) \
@@ -382,6 +438,7 @@ SLANG_VECTOR_GET_ELEMENT_PTR(__half)
SLANG_CUDA_VECTOR_INT_OP(T, 4)
SLANG_CUDA_VECTOR_INT_OPS(int)
+SLANG_CUDA_VECTOR_INT_OPS(bool)
SLANG_CUDA_VECTOR_INT_OPS(uint)
SLANG_CUDA_VECTOR_INT_OPS(ushort)
SLANG_CUDA_VECTOR_INT_OPS(short)
@@ -594,6 +651,7 @@ struct GetVectorTypeImpl
GET_VECTOR_TYPE_IMPL(T, 4)
GET_VECTOR_TYPE_IMPL_N(int)
+GET_VECTOR_TYPE_IMPL_N(bool)
GET_VECTOR_TYPE_IMPL_N(uint)
GET_VECTOR_TYPE_IMPL_N(short)
GET_VECTOR_TYPE_IMPL_N(ushort)
@@ -1039,6 +1097,7 @@ SLANG_FORCE_INLINE SLANG_CUDA_CALL Matrix<__half, R, C> operator%(
SLANG_SELECT_IMPL(T, 4)
SLANG_SELECT_T(int)
+SLANG_SELECT_T(bool)
SLANG_SELECT_T(uint)
SLANG_SELECT_T(short)
SLANG_SELECT_T(ushort)
diff --git a/source/slang/slang-reflection-json.cpp b/source/slang/slang-reflection-json.cpp
index c253c4d66..26cdafa46 100644
--- a/source/slang/slang-reflection-json.cpp
+++ b/source/slang/slang-reflection-json.cpp
@@ -64,6 +64,7 @@ static void emitReflectionVarBindingInfoJSON(
SlangParameterCategory category,
SlangUInt index,
SlangUInt count,
+ SlangUInt stride,
SlangUInt space = 0)
{
if (category == SLANG_PARAMETER_CATEGORY_UNIFORM)
@@ -73,6 +74,8 @@ static void emitReflectionVarBindingInfoJSON(
writer << "\"offset\": " << index;
writer << ", ";
writer << "\"size\": " << count;
+ writer << ", ";
+ writer << "\"elementStride\": " << stride;
}
else
{
@@ -197,6 +200,7 @@ static void emitReflectionVarBindingInfoJSON(
auto index = var->getOffset(category);
auto space = var->getBindingSpace(category);
auto count = typeLayout->getSize(category);
+ auto elementStride = typeLayout->getElementStride(category);
// Query the paramater usage for the specified entry point.
// Note: both `request` and `entryPointIndex` may be invalid here, but that should just
@@ -216,7 +220,7 @@ static void emitReflectionVarBindingInfoJSON(
writer << "{";
- emitReflectionVarBindingInfoJSON(writer, category, index, count, space);
+ emitReflectionVarBindingInfoJSON(writer, category, index, count, elementStride, space);
if (usedAvailable)
{
diff --git a/source/slang/slang-type-layout.cpp b/source/slang/slang-type-layout.cpp
index 3982b579d..275a178d0 100644
--- a/source/slang/slang-type-layout.cpp
+++ b/source/slang/slang-type-layout.cpp
@@ -582,14 +582,6 @@ struct CUDALayoutRulesImpl : DefaultLayoutRulesImpl
SimpleLayoutInfo elementInfo,
size_t elementCount) override
{
- // Special case bool
- if (elementType == BaseType::Bool)
- {
- SimpleLayoutInfo fixInfo(elementInfo);
- fixInfo.size = sizeof(int32_t);
- fixInfo.alignment = sizeof(int32_t);
- return GetVectorLayout(BaseType::Int, fixInfo, elementCount);
- }
const auto elementSize = elementInfo.size.getFiniteValue();
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}
}
]
}