summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/bindings/array-of-struct-of-resource.hlsl6
-rw-r--r--tests/bindings/binding0.hlsl8
-rw-r--r--tests/bindings/binding1.hlsl19
-rw-r--r--tests/bindings/explicit-binding.hlsl20
-rw-r--r--tests/bindings/glsl-parameter-blocks.slang3
-rw-r--r--tests/bindings/glsl-parameter-blocks.slang.glsl41
-rw-r--r--tests/bindings/multi-file-extra.hlsl32
-rw-r--r--tests/bindings/multi-file.hlsl66
-rw-r--r--tests/bindings/multiple-parameter-blocks.slang2
-rw-r--r--tests/bindings/packoffset.hlsl13
-rw-r--r--tests/bindings/parameter-blocks.slang6
-rw-r--r--tests/bindings/resources-in-cbuffer.hlsl32
-rw-r--r--tests/bindings/targets-and-uavs-structure.hlsl5
-rw-r--r--tests/bindings/targets-and-uavs.hlsl7
-rw-r--r--tests/bugs/gh-103.slang8
-rw-r--r--tests/bugs/gh-333.slang12
-rw-r--r--tests/bugs/implicit-conversion-binary-op.hlsl2
-rw-r--r--tests/bugs/split-nested-types.hlsl17
-rw-r--r--tests/bugs/split-nested-types.slang4
-rw-r--r--tests/bugs/vec-init-list.hlsl8
-rw-r--r--tests/hlsl/dxsdk/AdaptiveTessellationCS40/Render.hlsl7
-rw-r--r--tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_PS.hlsl9
-rw-r--r--tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_VS.hlsl7
-rw-r--r--tests/hlsl/dxsdk/CascadedShadowMaps11/RenderCascadeShadow.hlsl6
-rw-r--r--tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial02/Tutorial02.fx5
-rw-r--r--tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial03/Tutorial03.fx5
-rw-r--r--tests/hlsl/dxsdk/DynamicShaderLinkage11/DynamicShaderLinkage11_VS.hlsl7
-rw-r--r--tests/hlsl/dxsdk/MultithreadedRendering11/MultithreadedRendering11_VS.hlsl8
-rw-r--r--tests/hlsl/dxsdk/OIT11/SceneVS.hlsl6
-rw-r--r--tests/hlsl/dxsdk/VarianceShadows11/RenderVarianceShadow.hlsl4
-rw-r--r--tests/hlsl/simple/allow-uav-conditional.hlsl4
-rw-r--r--tests/hlsl/simple/compute-numthreads.hlsl4
-rw-r--r--tests/hlsl/simple/literal-typing.hlsl4
-rw-r--r--tests/ir/factorial.slang12
-rw-r--r--tests/ir/loop.slang12
-rw-r--r--tests/parser/cast-precedence.hlsl7
36 files changed, 361 insertions, 57 deletions
diff --git a/tests/bindings/array-of-struct-of-resource.hlsl b/tests/bindings/array-of-struct-of-resource.hlsl
index 71492ef49..8ba71c7a3 100644
--- a/tests/bindings/array-of-struct-of-resource.hlsl
+++ b/tests/bindings/array-of-struct-of-resource.hlsl
@@ -27,11 +27,15 @@ float4 main() : SV_Target
#else
+#define a _SV04testL0
+#define b _SV04testL1
+#define s _SV01s
+
Texture2D a[2];
Texture2D b[2];
SamplerState s;
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
return use(a[0],s)
+ use(b[0],s)
diff --git a/tests/bindings/binding0.hlsl b/tests/bindings/binding0.hlsl
index 9ca092562..fcd7e7b54 100644
--- a/tests/bindings/binding0.hlsl
+++ b/tests/bindings/binding0.hlsl
@@ -8,6 +8,12 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define C _SV022SLANG_parameterGroup_C
+#define t _SV01t
+#define s _SV01s
+#define c _SV022SLANG_ParameterGroup_C1c
+
#endif
float4 use(float4 val) { return val; };
@@ -21,7 +27,7 @@ cbuffer C R(: register(b0))
float c;
}
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
return use(t,s) + use(c);
} \ No newline at end of file
diff --git a/tests/bindings/binding1.hlsl b/tests/bindings/binding1.hlsl
index 879a19816..adc06edaa 100644
--- a/tests/bindings/binding1.hlsl
+++ b/tests/bindings/binding1.hlsl
@@ -15,15 +15,22 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define tB _SV02tB
+#define sB _SV02sB
+
+#define C1 _SV023SLANG_parameterGroup_C1
+#define c1 _SV023SLANG_ParameterGroup_C12c1
+
#endif
float4 use(float4 val) { return val; };
float4 use(Texture2D t, SamplerState s) { return t.Sample(s, 0.0); }
-Texture2D t0 R(: register(t0));
-Texture2D t1 R(: register(t1));
-SamplerState s0 R(: register(s0));
-SamplerState s1 R(: register(s1));
+Texture2D tA R(: register(t0));
+Texture2D tB R(: register(t1));
+SamplerState sA R(: register(s0));
+SamplerState sB R(: register(s1));
cbuffer C0 R(: register(b0))
{
@@ -35,7 +42,7 @@ cbuffer C1 R(: register(b1))
float c1;
}
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
- return use(t1,s1) + use(c1);
+ return use(tB,sB) + use(c1);
} \ No newline at end of file
diff --git a/tests/bindings/explicit-binding.hlsl b/tests/bindings/explicit-binding.hlsl
index 313f5a091..758be959b 100644
--- a/tests/bindings/explicit-binding.hlsl
+++ b/tests/bindings/explicit-binding.hlsl
@@ -7,6 +7,24 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define CA _SV023SLANG_parameterGroup_CA
+#define ca _SV023SLANG_ParameterGroup_CA2ca
+
+#define CB _SV023SLANG_parameterGroup_CB
+#define cb _SV023SLANG_ParameterGroup_CB2cb
+
+#define CC _SV023SLANG_parameterGroup_CC
+#define cc _SV023SLANG_ParameterGroup_CC2cc
+
+#define sa _SV02sa
+#define sb _SV02sb
+#define sc _SV02sc
+
+#define ta _SV02ta
+#define tb _SV02tb
+#define tc _SV02tc
+
#endif
float4 use(float4 val) { return val; };
@@ -46,7 +64,7 @@ cbuffer CC : register(b9)
float cc;
}
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
// Go ahead and use everything in this case:
return use(ta, sa) + use(ca)
diff --git a/tests/bindings/glsl-parameter-blocks.slang b/tests/bindings/glsl-parameter-blocks.slang
index 48eacbb0f..d356df775 100644
--- a/tests/bindings/glsl-parameter-blocks.slang
+++ b/tests/bindings/glsl-parameter-blocks.slang
@@ -1,9 +1,6 @@
#version 450 core
//TEST:CROSS_COMPILE: -profile ps_5_0 -entry main -target spirv-assembly
-// Note: disabled because the translation of `Texture2D.Sample()`
-// requires handling of local variables with resource types in the IR.
-
struct Test
{
float4 a;
diff --git a/tests/bindings/glsl-parameter-blocks.slang.glsl b/tests/bindings/glsl-parameter-blocks.slang.glsl
index d05eea485..b65ee0e49 100644
--- a/tests/bindings/glsl-parameter-blocks.slang.glsl
+++ b/tests/bindings/glsl-parameter-blocks.slang.glsl
@@ -1,39 +1,56 @@
//TEST_IGNORE_FILE:
#version 450 core
-struct _ST04Test
+#define Test _ST04Test
+#define a _SV04Test1a
+
+#define gTest _SV05gTestL0
+#define gTest_t _SV05gTestL1
+#define gTest_s _SV05gTestL2
+
+#define ParameterBlock_gTest _S1
+
+#define main_result _S2
+#define uv _S3
+
+#define temp_uv _S4
+#define temp_a _S5
+#define temp_sample _S6
+#define temp_add _S7
+
+struct Test
{
vec4 a;
};
layout(binding = 0, set = 1)
-uniform _S1
+uniform ParameterBlock_gTest
{
- _ST04Test _SV05gTestL0;
+ Test gTest;
};
layout(binding = 1, set = 1)
-uniform texture2D _SV05gTestL1;
+uniform texture2D gTest_t;
layout(binding = 2, set = 1)
-uniform sampler _SV05gTestL2;
+uniform sampler gTest_s;
layout(location = 0)
-out vec4 _S2;
+out vec4 main_result;
layout(location = 0)
-in vec2 _S3;
+in vec2 uv;
void main()
{
- vec2 _S4 = _S3;
+ vec2 temp_uv = uv;
- vec4 _S5 = _SV05gTestL0.a;
+ vec4 temp_a = gTest.a;
- vec4 _S6 = texture(sampler2D(_SV05gTestL1, _SV05gTestL2), _S4);
+ vec4 temp_sample = texture(sampler2D(gTest_t, gTest_s), temp_uv);
- vec4 _S7 = _S5 + _S6;
- _S2 = _S7;
+ vec4 temp_add = temp_a + temp_sample;
+ main_result = temp_add;
return;
}
diff --git a/tests/bindings/multi-file-extra.hlsl b/tests/bindings/multi-file-extra.hlsl
index 7852d7c48..8bf8be414 100644
--- a/tests/bindings/multi-file-extra.hlsl
+++ b/tests/bindings/multi-file-extra.hlsl
@@ -9,6 +9,36 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define sharedC _SV028SLANG_parameterGroup_sharedC
+#define sharedCA _SV028SLANG_ParameterGroup_sharedC8sharedCA
+#define sharedCB _SV028SLANG_ParameterGroup_sharedC8sharedCB
+#define sharedCC _SV028SLANG_ParameterGroup_sharedC8sharedCC
+#define sharedCD _SV028SLANG_ParameterGroup_sharedC8sharedCD
+
+#define vertexC _SV028SLANG_parameterGroup_vertexC
+#define vertexCA _SV028SLANG_ParameterGroup_vertexC8vertexCA
+#define vertexCB _SV028SLANG_ParameterGroup_vertexC8vertexCB
+#define vertexCC _SV028SLANG_ParameterGroup_vertexC8vertexCC
+#define vertexCD _SV028SLANG_ParameterGroup_vertexC8vertexCD
+
+#define fragmentC _SV030SLANG_parameterGroup_fragmentC
+#define fragmentCA _SV030SLANG_ParameterGroup_fragmentC10fragmentCA
+#define fragmentCB _SV030SLANG_ParameterGroup_fragmentC10fragmentCB
+#define fragmentCC _SV030SLANG_ParameterGroup_fragmentC10fragmentCC
+#define fragmentCD _SV030SLANG_ParameterGroup_fragmentC10fragmentCD
+
+#define sharedS _SV07sharedS
+#define sharedT _SV07sharedT
+#define sharedTV _SV08sharedTV
+#define sharedTF _SV08sharedTF
+
+#define vertexS _SV07vertexS
+#define vertexT _SV07vertexT
+
+#define fragmentS _SV09fragmentS
+#define fragmentT _SV09fragmentT
+
#endif
float4 use(float val) { return val; };
@@ -48,7 +78,7 @@ Texture2D sharedTV R(: register(t2));
Texture2D sharedTF R(: register(t3));
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
// Go ahead and use everything here, just to make sure things got placed correctly
return use(sharedT, sharedS)
diff --git a/tests/bindings/multi-file.hlsl b/tests/bindings/multi-file.hlsl
index 4038ea3ca..bc00b0f69 100644
--- a/tests/bindings/multi-file.hlsl
+++ b/tests/bindings/multi-file.hlsl
@@ -10,6 +10,36 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define sharedC _SV028SLANG_parameterGroup_sharedC
+#define sharedCA _SV028SLANG_ParameterGroup_sharedC8sharedCA
+#define sharedCB _SV028SLANG_ParameterGroup_sharedC8sharedCB
+#define sharedCC _SV028SLANG_ParameterGroup_sharedC8sharedCC
+#define sharedCD _SV028SLANG_ParameterGroup_sharedC8sharedCD
+
+#define vertexC _SV028SLANG_parameterGroup_vertexC
+#define vertexCA _SV028SLANG_ParameterGroup_vertexC8vertexCA
+#define vertexCB _SV028SLANG_ParameterGroup_vertexC8vertexCB
+#define vertexCC _SV028SLANG_ParameterGroup_vertexC8vertexCC
+#define vertexCD _SV028SLANG_ParameterGroup_vertexC8vertexCD
+
+#define fragmentC _SV030SLANG_parameterGroup_fragmentC
+#define fragmentCA _SV030SLANG_ParameterGroup_fragmentC10fragmentCA
+#define fragmentCB _SV030SLANG_ParameterGroup_fragmentC10fragmentCB
+#define fragmentCC _SV030SLANG_ParameterGroup_fragmentC10fragmentCC
+#define fragmentCD _SV030SLANG_ParameterGroup_fragmentC10fragmentCD
+
+#define sharedS _SV07sharedS
+#define sharedT _SV07sharedT
+#define sharedTV _SV08sharedTV
+#define sharedTF _SV08sharedTF
+
+#define vertexS _SV07vertexS
+#define vertexT _SV07vertexT
+
+#define fragmentS _SV09fragmentS
+#define fragmentT _SV09fragmentT
+
#endif
float4 use(float val) { return val; };
@@ -18,8 +48,8 @@ float4 use(float3 val) { return float4(val,0.0); };
float4 use(float4 val) { return val; };
float4 use(Texture2D t, SamplerState s)
{
- // This is the vertex shader, so we can't do implicit-gradient sampling
- return t.SampleGrad(s, 0.0, 0.0, 0.0);
+ // This is the vertex shader, so we can't do implicit-gradient sampling
+ return t.SampleGrad(s, 0.0, 0.0, 0.0);
}
// Start with some parameters that will appear in both shaders
@@ -27,10 +57,10 @@ Texture2D sharedT R(: register(t0));
SamplerState sharedS R(: register(s0));
cbuffer sharedC R(: register(b0))
{
- float3 sharedCA R(: packoffset(c0));
- float sharedCB R(: packoffset(c0.w));
- float3 sharedCC R(: packoffset(c1));
- float2 sharedCD R(: packoffset(c2));
+ float3 sharedCA R(: packoffset(c0));
+ float sharedCB R(: packoffset(c0.w));
+ float3 sharedCC R(: packoffset(c1));
+ float2 sharedCD R(: packoffset(c2));
}
// Then some parameters specific to this shader
@@ -41,10 +71,10 @@ Texture2D vertexT R(: register(t1));
SamplerState vertexS R(: register(s1));
cbuffer vertexC R(: register(b1))
{
- float3 vertexCA R(: packoffset(c0));
- float vertexCB R(: packoffset(c0.w));
- float3 vertexCC R(: packoffset(c1));
- float2 vertexCD R(: packoffset(c2));
+ float3 vertexCA R(: packoffset(c0));
+ float vertexCB R(: packoffset(c0.w));
+ float3 vertexCC R(: packoffset(c1));
+ float2 vertexCD R(: packoffset(c2));
}
// And end with some shared parameters again
@@ -52,13 +82,13 @@ Texture2D sharedTV R(: register(t2));
Texture2D sharedTF R(: register(t3));
-float4 main() : SV_Position
+float4 main() : SV_POSITION
{
- // Go ahead and use everything here, just to make sure things got placed correctly
- return use(sharedT, sharedS)
- + use(sharedCD)
- + use(vertexT, vertexS)
- + use(vertexCD)
- + use(sharedTV, vertexS)
- ;
+ // Go ahead and use everything here, just to make sure things got placed correctly
+ return use(sharedT, sharedS)
+ + use(sharedCD)
+ + use(vertexT, vertexS)
+ + use(vertexCD)
+ + use(sharedTV, vertexS)
+ ;
} \ No newline at end of file
diff --git a/tests/bindings/multiple-parameter-blocks.slang b/tests/bindings/multiple-parameter-blocks.slang
index 2b0a38c1c..96a78316a 100644
--- a/tests/bindings/multiple-parameter-blocks.slang
+++ b/tests/bindings/multiple-parameter-blocks.slang
@@ -37,7 +37,7 @@ Texture2D _SV02p1L0 : register(t0, space1);
Texture2D _SV02p1L1[4] : register(t1, space1);
SamplerState _SV02p1L2 : register(s0, space1);
-float4 main(float v : V) : SV_Target
+float4 main(float v : V) : SV_TARGET
{
return use(_SV01pL0, _SV01pL2)
+ use(_SV01pL1[int(v)], _SV01pL2)
diff --git a/tests/bindings/packoffset.hlsl b/tests/bindings/packoffset.hlsl
index 69cebdc40..5b8650a9b 100644
--- a/tests/bindings/packoffset.hlsl
+++ b/tests/bindings/packoffset.hlsl
@@ -7,6 +7,17 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define CA _SV023SLANG_parameterGroup_CAL0
+#define ca _SV023SLANG_ParameterGroup_CA2ca
+#define cb _SV023SLANG_ParameterGroup_CA2cb
+#define cc _SV023SLANG_ParameterGroup_CA2cc
+#define cd _SV023SLANG_ParameterGroup_CA2cd
+#define ce _SV023SLANG_ParameterGroup_CA2ce
+
+#define ta _SV023SLANG_parameterGroup_CAL1
+#define sa _SV023SLANG_parameterGroup_CAL2
+
#endif
float4 use(float val) { return val; };
@@ -27,7 +38,7 @@ cbuffer CA R(: register(b0))
SamplerState sa R(: register(s0));
}
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
// Go ahead and use everything in this case:
return use(ta, sa)
diff --git a/tests/bindings/parameter-blocks.slang b/tests/bindings/parameter-blocks.slang
index ae5d9a647..62503e49b 100644
--- a/tests/bindings/parameter-blocks.slang
+++ b/tests/bindings/parameter-blocks.slang
@@ -26,11 +26,15 @@ float4 main(float v : V) : SV_Target
#else
+#define t _SV01pL0
+#define ta _SV01pL1
+#define s _SV01pL2
+
Texture2D t : register(t0, space0);
Texture2D ta[4] : register(t1, space0);
SamplerState s : register(s0, space0);
-float4 main(float v : V) : SV_Target
+float4 main(float v : V) : SV_TARGET
{
return use(ta[int(v)], s)
+ use(t, s);
diff --git a/tests/bindings/resources-in-cbuffer.hlsl b/tests/bindings/resources-in-cbuffer.hlsl
index 647e64c32..5706bd39c 100644
--- a/tests/bindings/resources-in-cbuffer.hlsl
+++ b/tests/bindings/resources-in-cbuffer.hlsl
@@ -8,6 +8,36 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define CA _SV023SLANG_parameterGroup_CAL0
+#define caa _SV023SLANG_ParameterGroup_CA3caa
+#define cab _SV023SLANG_ParameterGroup_CA3cab
+#define cac _SV023SLANG_ParameterGroup_CA3cac
+#define cad _SV023SLANG_ParameterGroup_CA3cad
+#define cae _SV023SLANG_ParameterGroup_CA3cae
+#define ta _SV023SLANG_parameterGroup_CAL1
+#define sa _SV023SLANG_parameterGroup_CAL2
+
+#define CB _SV023SLANG_parameterGroup_CBL0
+#define cba _SV023SLANG_ParameterGroup_CB3cba
+#define cbb _SV023SLANG_ParameterGroup_CB3cbb
+#define cbc _SV023SLANG_ParameterGroup_CB3cbc
+#define cbd _SV023SLANG_ParameterGroup_CB3cbd
+#define cbe _SV023SLANG_ParameterGroup_CB3cbe
+#define tbx _SV023SLANG_parameterGroup_CBL1
+#define tby _SV023SLANG_parameterGroup_CBL2
+#define sb _SV023SLANG_parameterGroup_CBL3
+
+#define CC _SV023SLANG_parameterGroup_CCL0
+#define cca _SV023SLANG_ParameterGroup_CC3cca
+#define ccb _SV023SLANG_ParameterGroup_CC3ccb
+#define ccc _SV023SLANG_ParameterGroup_CC3ccc
+#define ccd _SV023SLANG_ParameterGroup_CC3ccd
+#define cce _SV023SLANG_ParameterGroup_CC3cce
+#define tc _SV023SLANG_parameterGroup_CCL1
+#define scx _SV023SLANG_parameterGroup_CCL2
+#define scy _SV023SLANG_parameterGroup_CCL3
+
#endif
float4 use(float val) { return val; };
@@ -54,7 +84,7 @@ cbuffer CC R(: register(b2))
SamplerState scy R(: register(s3));
}
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
// Go ahead and use everything in this case:
return use(ta, sa)
diff --git a/tests/bindings/targets-and-uavs-structure.hlsl b/tests/bindings/targets-and-uavs-structure.hlsl
index 6c9ee0340..359083069 100644
--- a/tests/bindings/targets-and-uavs-structure.hlsl
+++ b/tests/bindings/targets-and-uavs-structure.hlsl
@@ -7,6 +7,11 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define Foo _ST03Foo
+#define v _SV03Foo1v
+#define fooBuffer _SV09fooBuffer
+
#endif
float4 use(float val) { return val; };
diff --git a/tests/bindings/targets-and-uavs.hlsl b/tests/bindings/targets-and-uavs.hlsl
index ad0d84e5c..24efa418c 100644
--- a/tests/bindings/targets-and-uavs.hlsl
+++ b/tests/bindings/targets-and-uavs.hlsl
@@ -9,6 +9,11 @@
#define R(X) /**/
#else
#define R(X) X
+
+#define Foo _ST03Foo
+#define v _SV03Foo1v
+#define fooBuffer _SV09fooBuffer
+
#endif
float4 use(float val) { return val; };
@@ -22,7 +27,7 @@ struct Foo { float2 v; };
// This should be allocated a register *after* the render target
RWStructuredBuffer<Foo> fooBuffer R(: register(u1));
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
return use(fooBuffer[12].v);
} \ No newline at end of file
diff --git a/tests/bugs/gh-103.slang b/tests/bugs/gh-103.slang
index b89f38098..5d271d508 100644
--- a/tests/bugs/gh-103.slang
+++ b/tests/bugs/gh-103.slang
@@ -2,6 +2,12 @@
// Ensure that matrix-times-scalar works
+#ifndef __SLANG__
+#define C _SV022SLANG_parameterGroup_C
+#define a _SV022SLANG_ParameterGroup_C1a
+#define b _SV022SLANG_ParameterGroup_C1b
+#endif
+
float4x4 doIt(float4x4 a, float b)
{
return a * b;
@@ -13,7 +19,7 @@ cbuffer C
float b;
};
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
return doIt(a, b)[0];
}
diff --git a/tests/bugs/gh-333.slang b/tests/bugs/gh-333.slang
index fdc478950..5a0a5769f 100644
--- a/tests/bugs/gh-333.slang
+++ b/tests/bugs/gh-333.slang
@@ -2,6 +2,16 @@
// Ensure declaration order in output is correct
+#ifndef __SLANG__
+#define A _ST01A
+#define x _SV01A1x
+#define B _ST01B
+#define y _SV01B1y
+#define C _SV022SLANG_parameterGroup_CL0
+#define a _SV022SLANG_ParameterGroup_C1a
+#define b _SV022SLANG_ParameterGroup_C1b
+#endif
+
struct A
{
float x;
@@ -19,7 +29,7 @@ cbuffer C
B b;
};
-float4 main() : SV_Target
+float4 main() : SV_TARGET
{
return a.x;
}
diff --git a/tests/bugs/implicit-conversion-binary-op.hlsl b/tests/bugs/implicit-conversion-binary-op.hlsl
index 75ff737da..b9a558474 100644
--- a/tests/bugs/implicit-conversion-binary-op.hlsl
+++ b/tests/bugs/implicit-conversion-binary-op.hlsl
@@ -10,7 +10,7 @@
float4 main(
float4 a : A,
uint4 b : B
- ) : SV_Target
+ ) : SV_TARGET
{
return a * b;
}
diff --git a/tests/bugs/split-nested-types.hlsl b/tests/bugs/split-nested-types.hlsl
index 0a8a8f9ff..8216a4e36 100644
--- a/tests/bugs/split-nested-types.hlsl
+++ b/tests/bugs/split-nested-types.hlsl
@@ -4,11 +4,24 @@
import split_nested_types;
#else
+#define A _ST01A
+#define x _SV01A1x
+
+#define B _ST01B
+#define y _SV01B1y
+
+#define M _ST01M
+#define a _SV01M1a
+#define b _SV01M1b
+
+#define C _SV022SLANG_parameterGroup_CL0
+#define m _SV022SLANG_ParameterGroup_C1m
+
struct A { int x; };
struct B { float y; };
-struct C { Texture2D t; SamplerState s; };
+struct CC { Texture2D t; SamplerState s; };
struct M
{
@@ -23,7 +36,7 @@ cbuffer C
M m;
}
-float4 main() : SV_target
+float4 main() : SV_TARGET
{
return m.b.y;
}
diff --git a/tests/bugs/split-nested-types.slang b/tests/bugs/split-nested-types.slang
index ccf95d906..3bd4e239f 100644
--- a/tests/bugs/split-nested-types.slang
+++ b/tests/bugs/split-nested-types.slang
@@ -4,11 +4,11 @@ struct A { int x; };
struct B { float y; };
-struct C { Texture2D t; SamplerState s; };
+struct CC { Texture2D t; SamplerState s; };
struct M
{
A a;
B b;
- C c;
+ CC c;
};
diff --git a/tests/bugs/vec-init-list.hlsl b/tests/bugs/vec-init-list.hlsl
index be1bc5c6f..d9d0b83f9 100644
--- a/tests/bugs/vec-init-list.hlsl
+++ b/tests/bugs/vec-init-list.hlsl
@@ -2,6 +2,14 @@
// Check handling of initializer list for vector
+#ifndef __SLANG__
+
+#define C _SV022SLANG_parameterGroup_C
+#define a _SV022SLANG_ParameterGroup_C1a
+#define SV_Position SV_POSITION
+
+#endif
+
cbuffer C : register(b0)
{
float4 a;
diff --git a/tests/hlsl/dxsdk/AdaptiveTessellationCS40/Render.hlsl b/tests/hlsl/dxsdk/AdaptiveTessellationCS40/Render.hlsl
index bb05c82fd..73eeb8f81 100644
--- a/tests/hlsl/dxsdk/AdaptiveTessellationCS40/Render.hlsl
+++ b/tests/hlsl/dxsdk/AdaptiveTessellationCS40/Render.hlsl
@@ -1,4 +1,11 @@
//TEST(smoke):COMPARE_HLSL:-no-mangle -profile vs_4_0 -entry RenderBaseVS -profile ps_4_0 -entry RenderPS -target dxbc-assembly
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#endif
+
+
//--------------------------------------------------------------------------------------
// File: Render.hlsl
//
diff --git a/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_PS.hlsl b/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_PS.hlsl
index 09c5dcc7e..d119653a9 100644
--- a/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_PS.hlsl
+++ b/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_PS.hlsl
@@ -1,4 +1,13 @@
//TEST:COMPARE_HLSL:-no-mangle -target dxbc-assembly -profile ps_4_0 -entry PSMain
+
+#ifndef __SLANG__
+#define cbPerFrame _SV031SLANG_parameterGroup_cbPerFrame
+#define g_vLightDir _SV031SLANG_ParameterGroup_cbPerFrame11g_vLightDir
+#define g_fAmbient _SV031SLANG_ParameterGroup_cbPerFrame10g_fAmbient
+#define g_samLinear _SV011g_samLinear
+#define g_txDiffuse _SV011g_txDiffuse
+#endif
+
//--------------------------------------------------------------------------------------
// File: BasicHLSL11_PS.hlsl
//
diff --git a/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_VS.hlsl b/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_VS.hlsl
index cb2c1b950..6d854a83b 100644
--- a/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_VS.hlsl
+++ b/tests/hlsl/dxsdk/BasicHLSL11/BasicHLSL11_VS.hlsl
@@ -1,4 +1,11 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VSMain
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#define g_mWorld _SV032SLANG_ParameterGroup_cbPerObject8g_mWorld
+#endif
+
//--------------------------------------------------------------------------------------
// File: BasicHLSL11_VS.hlsl
//
diff --git a/tests/hlsl/dxsdk/CascadedShadowMaps11/RenderCascadeShadow.hlsl b/tests/hlsl/dxsdk/CascadedShadowMaps11/RenderCascadeShadow.hlsl
index 3b4d32a0d..0f3b851df 100644
--- a/tests/hlsl/dxsdk/CascadedShadowMaps11/RenderCascadeShadow.hlsl
+++ b/tests/hlsl/dxsdk/CascadedShadowMaps11/RenderCascadeShadow.hlsl
@@ -1,4 +1,10 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VSMain -entry VSMainPancake
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#endif
+
//--------------------------------------------------------------------------------------
// File: RenderCascadeShadow.hlsl
//
diff --git a/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial02/Tutorial02.fx b/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial02/Tutorial02.fx
index 941e001b3..e4b44b3d1 100644
--- a/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial02/Tutorial02.fx
+++ b/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial02/Tutorial02.fx
@@ -1,4 +1,9 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VS -profile ps_4_0 -entry PS
+
+#ifndef __SLANG__
+#define SV_Target SV_TARGET
+#endif
+
//--------------------------------------------------------------------------------------
// File: Tutorial02.fx
//
diff --git a/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial03/Tutorial03.fx b/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial03/Tutorial03.fx
index 941e001b3..e4b44b3d1 100644
--- a/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial03/Tutorial03.fx
+++ b/tests/hlsl/dxsdk/Direct3D11Tutorials/Tutorial03/Tutorial03.fx
@@ -1,4 +1,9 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VS -profile ps_4_0 -entry PS
+
+#ifndef __SLANG__
+#define SV_Target SV_TARGET
+#endif
+
//--------------------------------------------------------------------------------------
// File: Tutorial02.fx
//
diff --git a/tests/hlsl/dxsdk/DynamicShaderLinkage11/DynamicShaderLinkage11_VS.hlsl b/tests/hlsl/dxsdk/DynamicShaderLinkage11/DynamicShaderLinkage11_VS.hlsl
index 800dbf3b3..80f7c452a 100644
--- a/tests/hlsl/dxsdk/DynamicShaderLinkage11/DynamicShaderLinkage11_VS.hlsl
+++ b/tests/hlsl/dxsdk/DynamicShaderLinkage11/DynamicShaderLinkage11_VS.hlsl
@@ -1,4 +1,11 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VSMain
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#define g_mWorld _SV032SLANG_ParameterGroup_cbPerObject8g_mWorld
+#endif
+
//--------------------------------------------------------------------------------------
// File: DynamicShaderLinkage11_VS.hlsl
//
diff --git a/tests/hlsl/dxsdk/MultithreadedRendering11/MultithreadedRendering11_VS.hlsl b/tests/hlsl/dxsdk/MultithreadedRendering11/MultithreadedRendering11_VS.hlsl
index 0d8d32ffa..c2239293e 100644
--- a/tests/hlsl/dxsdk/MultithreadedRendering11/MultithreadedRendering11_VS.hlsl
+++ b/tests/hlsl/dxsdk/MultithreadedRendering11/MultithreadedRendering11_VS.hlsl
@@ -1,4 +1,12 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VSMain
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorld _SV032SLANG_ParameterGroup_cbPerObject8g_mWorld
+#define cbPerScene _SV031SLANG_parameterGroup_cbPerScene
+#define g_mViewProj _SV031SLANG_ParameterGroup_cbPerScene11g_mViewProj
+#endif
+
//--------------------------------------------------------------------------------------
// File: MultithreadedRendering11_VS.hlsl
//
diff --git a/tests/hlsl/dxsdk/OIT11/SceneVS.hlsl b/tests/hlsl/dxsdk/OIT11/SceneVS.hlsl
index 2f985d1d1..b361df0d6 100644
--- a/tests/hlsl/dxsdk/OIT11/SceneVS.hlsl
+++ b/tests/hlsl/dxsdk/OIT11/SceneVS.hlsl
@@ -1,4 +1,10 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry SceneVS
+
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#endif
+
//-----------------------------------------------------------------------------
// File: SceneVS.hlsl
//
diff --git a/tests/hlsl/dxsdk/VarianceShadows11/RenderVarianceShadow.hlsl b/tests/hlsl/dxsdk/VarianceShadows11/RenderVarianceShadow.hlsl
index 9837bf299..af5ba6343 100644
--- a/tests/hlsl/dxsdk/VarianceShadows11/RenderVarianceShadow.hlsl
+++ b/tests/hlsl/dxsdk/VarianceShadows11/RenderVarianceShadow.hlsl
@@ -1,5 +1,9 @@
//TEST:COMPARE_HLSL: -target dxbc-assembly -profile vs_4_0 -entry VSMain -profile ps_4_0 -entry PSMain
+#ifndef __SLANG__
+#define cbPerObject _SV032SLANG_parameterGroup_cbPerObject
+#define g_mWorldViewProjection _SV032SLANG_ParameterGroup_cbPerObject22g_mWorldViewProjection
+#endif
//--------------------------------------------------------------------------------------
// Globals
diff --git a/tests/hlsl/simple/allow-uav-conditional.hlsl b/tests/hlsl/simple/allow-uav-conditional.hlsl
index 1526244a2..3f12c9be8 100644
--- a/tests/hlsl/simple/allow-uav-conditional.hlsl
+++ b/tests/hlsl/simple/allow-uav-conditional.hlsl
@@ -2,6 +2,10 @@
// Check output for `[allow_uav_conditional]`
+#ifndef __SLANG__
+#define gBuffer _SV07gBuffer
+#endif
+
RWStructuredBuffer<uint> gBuffer : register(u0);
[numthreads(16,1,1)]
diff --git a/tests/hlsl/simple/compute-numthreads.hlsl b/tests/hlsl/simple/compute-numthreads.hlsl
index ba18a8d16..4f3291671 100644
--- a/tests/hlsl/simple/compute-numthreads.hlsl
+++ b/tests/hlsl/simple/compute-numthreads.hlsl
@@ -2,6 +2,10 @@
// Confirm that we properly pass along the `numthreads` attribute on an entry point.
+#ifndef __SLANG__
+#define b _SV01b
+#endif
+
RWStructuredBuffer<float> b;
[numthreads(32,1,1)]
diff --git a/tests/hlsl/simple/literal-typing.hlsl b/tests/hlsl/simple/literal-typing.hlsl
index 359b875f9..48ea5b2cb 100644
--- a/tests/hlsl/simple/literal-typing.hlsl
+++ b/tests/hlsl/simple/literal-typing.hlsl
@@ -17,6 +17,10 @@ Bad foo(int x) { Bad b; b.bad = x; return b; }
// we either respect the suffix and call the right overload,
// or ignore it and call the wrong one.
+#ifndef __SLANG__
+#define b _SV01b
+#endif
+
RWStructuredBuffer<uint> b;
[numthreads(32,1,1)]
void main(uint3 tid : SV_DispatchThreadID)
diff --git a/tests/ir/factorial.slang b/tests/ir/factorial.slang
index 0ceff29bd..76653f055 100644
--- a/tests/ir/factorial.slang
+++ b/tests/ir/factorial.slang
@@ -1,4 +1,14 @@
-//TEST:EVAL:
+//TEST_DISABLED:EVAL:
+
+// Note: This test has been disabled as part of introducing
+// the IR-level type system, because it changes the overall
+// structure of IR moduels quite a bit, and no user code
+// actually relies on the serialized IR or VM.
+//
+// This test should ideally be re-enabled once work is
+// done to revamp the serialized bytecode format into
+// something more essential to the compiler (e.g., for
+// modular separate compilation).
StructuredBuffer<int> input;
RWStructuredBuffer<int> output;
diff --git a/tests/ir/loop.slang b/tests/ir/loop.slang
index ddbd7ecb0..32eb41f1b 100644
--- a/tests/ir/loop.slang
+++ b/tests/ir/loop.slang
@@ -1,4 +1,14 @@
-//TEST:SIMPLE:-dump-ir -profile cs_5_0 -entry main
+//TEST_DISABLED:SIMPLE:-dump-ir -profile cs_5_0 -entry main
+
+// Note: disabling this test for now because
+// the actual IR that gets dumped is not very
+// stable with code generation changes going on,
+// and we already have more significant tests
+// that stress the IR functionality.
+//
+// We should consider removing this test, or
+// else work to ensure that "canonical" IR
+// output is more consistent.
#define GROUP_THREAD_COUNT 64
diff --git a/tests/parser/cast-precedence.hlsl b/tests/parser/cast-precedence.hlsl
index d5d0b0322..33cb5983c 100644
--- a/tests/parser/cast-precedence.hlsl
+++ b/tests/parser/cast-precedence.hlsl
@@ -3,6 +3,13 @@
// Confirm that type-cast expressions parse with
// the appropriate precedence.
+#ifndef __SLANG__
+#define C _SV022SLANG_parameterGroup_C
+#define a _SV022SLANG_ParameterGroup_C1a
+#define b _SV022SLANG_ParameterGroup_C1b
+#define SV_Position SV_POSITION
+#endif
+
cbuffer C : register(b0)
{
float a;