<!DOCTYPE html>
<html>
<meta charset=utf-8>
<meta name="timeout" content="long">
<title>Lots of local variables.</title>
<script src="js/test-harness.js"></script>
<script src="../js/webgpu-functions.js"></script>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script>
const whlslTests = {};

whlslTests.lotsOfLocalVariables = async () =>
{
    let src = "int sum() {\n";
    src += "    int i = 0;\n";
    let target = 0;
    const numVars = 50;
    for (let i = 0; i < numVars; i++) {
        src += `   i = ${i};\n`;
        src += `   int V${i} = (i + 3) * (i + 3);\n`;
        target += (i + 3) * (i + 3);
    }
    src += "    int result = 0;\n";
    for (let i = 0; i < numVars; i++) {
        src += `    result += V${i};\n`;
    }
    src += "    return result;\n";
    src += "}";
    let program = src;
    assert_equals(await callIntFunction(program, "sum", []), target);
}

runTests(whlslTests);
</script>
</html>

