diff options
Diffstat (limited to 'tests/reflection')
| -rw-r--r-- | tests/reflection/thread-group-size.hlsl.expected | 1 | ||||
| -rw-r--r-- | tests/reflection/vertex-input-semantics.hlsl | 33 | ||||
| -rw-r--r-- | tests/reflection/vertex-input-semantics.hlsl.expected | 152 |
3 files changed, 186 insertions, 0 deletions
diff --git a/tests/reflection/thread-group-size.hlsl.expected b/tests/reflection/thread-group-size.hlsl.expected index d139c5b64..a41c66248 100644 --- a/tests/reflection/thread-group-size.hlsl.expected +++ b/tests/reflection/thread-group-size.hlsl.expected @@ -24,6 +24,7 @@ standard output = { "bindings": [ ], + "semanticName": "SV_DISPATCHTHREADID", "type": { "kind": "vector", "elementCount": 3, diff --git a/tests/reflection/vertex-input-semantics.hlsl b/tests/reflection/vertex-input-semantics.hlsl new file mode 100644 index 000000000..87a8431bc --- /dev/null +++ b/tests/reflection/vertex-input-semantics.hlsl @@ -0,0 +1,33 @@ +//TEST:REFLECTION:-profile vs_4_0 -target hlsl + +// Confirm that we can generate reflection info for +// vertex shader input parameters, including those +// that have semantics, and including nesting +// via struct types. + +struct X +{ + float4 x0; + float4 x1; +}; + +struct B +{ + int4 b0; + X b1; +}; + +struct C +{ + X c0 : CX; + int4 c1 : CY; +}; + +float4 main( + float4 a : A, + B b : B, + C c) + : SV_Position +{ + return 0.0; +}
\ No newline at end of file diff --git a/tests/reflection/vertex-input-semantics.hlsl.expected b/tests/reflection/vertex-input-semantics.hlsl.expected new file mode 100644 index 000000000..014533fdb --- /dev/null +++ b/tests/reflection/vertex-input-semantics.hlsl.expected @@ -0,0 +1,152 @@ +result code = 0 +standard error = { +} +standard output = { +{ + "parameters": [ + + ], + "entryPoints": [ + { + "name": "main", + "stage:": "vertex", + "parameters": [ + { + "name": "a", + "binding": {"kind": "vertexInput", "index": 0}, + "semanticName": "A", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "float32" + } + } + }, + { + "name": "b", + "binding": {"kind": "vertexInput", "index": 1, "count": 3}, + "semanticName": "B", + "type": { + "kind": "struct", + "fields": [ + { + "name": "b0", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "int32" + } + }, + "binding": {"kind": "vertexInput", "index": 0}, + "semanticName": "B" + }, + { + "name": "b1", + "type": { + "kind": "struct", + "fields": [ + { + "name": "x0", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "float32" + } + }, + "binding": {"kind": "vertexInput", "index": 0}, + "semanticName": "B", + "semanticIndex": 1 + }, + { + "name": "x1", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "float32" + } + }, + "binding": {"kind": "vertexInput", "index": 1}, + "semanticName": "B", + "semanticIndex": 2 + } + ] + }, + "binding": {"kind": "vertexInput", "index": 1, "count": 2}, + "semanticName": "B", + "semanticIndex": 1 + } + ] + } + }, + { + "name": "c", + "binding": {"kind": "vertexInput", "index": 4, "count": 3}, + "type": { + "kind": "struct", + "fields": [ + { + "name": "c0", + "type": { + "kind": "struct", + "fields": [ + { + "name": "x0", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "float32" + } + }, + "binding": {"kind": "vertexInput", "index": 0}, + "semanticName": "CX" + }, + { + "name": "x1", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "float32" + } + }, + "binding": {"kind": "vertexInput", "index": 1}, + "semanticName": "CX", + "semanticIndex": 1 + } + ] + }, + "binding": {"kind": "vertexInput", "index": 0, "count": 2}, + "semanticName": "CX" + }, + { + "name": "c1", + "type": { + "kind": "vector", + "elementCount": 4, + "elementType": { + "kind": "scalar", + "scalarType": "int32" + } + }, + "binding": {"kind": "vertexInput", "index": 2}, + "semanticName": "CY" + } + ] + } + } + ] + } + ] +} +} |
