xref: /aosp_15_r20/external/skia/tests/sksl/shared/ForLoopMultipleInitES3.hlsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1cbuffer _UniformBuffer : register(b0, space0)
2{
3    float4 _7_colorGreen : packoffset(c0);
4    float4 _7_colorRed : packoffset(c1);
5};
6
7
8static float4 sk_FragColor;
9
10struct SPIRV_Cross_Output
11{
12    float4 sk_FragColor : SV_Target0;
13};
14
15float4 main(float2 _21)
16{
17    float sumA = 0.0f;
18    float sumB = 0.0f;
19    float a = 0.0f;
20    float b = 10.0f;
21    for (;;)
22    {
23        bool _42 = false;
24        if (a < 10.0f)
25        {
26            _42 = b > 0.0f;
27        }
28        else
29        {
30            _42 = false;
31        }
32        if (_42)
33        {
34            sumA += a;
35            sumB += b;
36            a += 1.0f;
37            b -= 1.0f;
38            continue;
39        }
40        else
41        {
42            break;
43        }
44    }
45    bool _63 = false;
46    if (sumA != 45.0f)
47    {
48        _63 = true;
49    }
50    else
51    {
52        _63 = sumB != 55.0f;
53    }
54    if (_63)
55    {
56        return _7_colorRed;
57    }
58    int sumC = 0;
59    for (int c = 0; c < 10; c++)
60    {
61        sumC += c;
62    }
63    if (sumC != 45)
64    {
65        return _7_colorRed;
66    }
67    float sumE = 0.0f;
68    float _100[2] = { 0.0f, 10.0f };
69    float d[2] = _100;
70    float _108[4] = { 1.0f, 2.0f, 3.0f, 4.0f };
71    float e[4] = _108;
72    for (; d[0] < d[1]; d[0] += 1.0f)
73    {
74        sumE += e[0];
75    }
76    if (sumE != 10.0f)
77    {
78        return _7_colorRed;
79    }
80    for (;;)
81    {
82        break;
83    }
84    for (;;)
85    {
86        return _7_colorGreen;
87    }
88}
89
90void frag_main()
91{
92    float2 _17 = 0.0f.xx;
93    sk_FragColor = main(_17);
94}
95
96SPIRV_Cross_Output main()
97{
98    frag_main();
99    SPIRV_Cross_Output stage_output;
100    stage_output.sk_FragColor = sk_FragColor;
101    return stage_output;
102}
103