RetroArch/reference/opt/shaders-hlsl/asm/comp/control-flow-hints.asm.comp
libretroadmin da29639d70 Squashed 'deps/SPIRV-Cross/' content from commit f3a75d1d4b
git-subtree-dir: deps/SPIRV-Cross
git-subtree-split: f3a75d1d4ba6b559d5c89550f800a518baad522d
2023-01-20 18:00:31 +01:00

42 lines
1.3 KiB
Plaintext

RWByteAddressBuffer bar : register(u0);
RWByteAddressBuffer foo : register(u1);
void comp_main()
{
bar.Store4(0, asuint(asfloat(foo.Load4(0))));
bar.Store4(16, asuint(asfloat(foo.Load4(16))));
bar.Store4(32, asuint(asfloat(foo.Load4(32))));
bar.Store4(48, asuint(asfloat(foo.Load4(48))));
bar.Store4(64, asuint(asfloat(foo.Load4(64))));
bar.Store4(80, asuint(asfloat(foo.Load4(80))));
bar.Store4(96, asuint(asfloat(foo.Load4(96))));
bar.Store4(112, asuint(asfloat(foo.Load4(112))));
bar.Store4(128, asuint(asfloat(foo.Load4(128))));
bar.Store4(144, asuint(asfloat(foo.Load4(144))));
bar.Store4(160, asuint(asfloat(foo.Load4(160))));
bar.Store4(176, asuint(asfloat(foo.Load4(176))));
bar.Store4(192, asuint(asfloat(foo.Load4(192))));
bar.Store4(208, asuint(asfloat(foo.Load4(208))));
bar.Store4(224, asuint(asfloat(foo.Load4(224))));
bar.Store4(240, asuint(asfloat(foo.Load4(240))));
[loop]
for (int _137 = 0; _137 < 16; )
{
bar.Store4((15 - _137) * 16 + 0, asuint(asfloat(foo.Load4(_137 * 16 + 0))));
_137++;
continue;
}
[branch]
if (asfloat(bar.Load(160)) > 10.0f)
{
foo.Store4(320, asuint(5.0f.xxxx));
}
foo.Store4(320, asuint(20.0f.xxxx));
}
[numthreads(1, 1, 1)]
void main()
{
comp_main();
}