HLSL: Fix #1815: Don't constant fold spec-constant array indexing.

This commit is contained in:
John Kessenich
2019-07-03 01:27:39 -06:00
parent 22683b409e
commit 4b4b41a634
4 changed files with 248 additions and 1 deletions

15
Test/hlsl.specConstant.frag Executable file
View File

@@ -0,0 +1,15 @@
[[vk::constant_id(0)]] const uint index = 2;
static const uint array[] = { 10, 20, 30, 40 };
float4 main( ) : SV_TARGET
{
float4 r;
for(uint i = 0; i < array[index]; i++)
r = i;
r += index + index;
r += 2 * index;
return r;
}