xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/Trunc.hlsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1cbuffer _UniformBuffer : register(b0, space0)
2{
3    float4 _7_testInputs : packoffset(c0);
4    float4 _7_colorGreen : packoffset(c1);
5    float4 _7_colorRed : packoffset(c2);
6};
7
8
9static float4 sk_FragColor;
10
11struct SPIRV_Cross_Output
12{
13    float4 sk_FragColor : SV_Target0;
14};
15
16float4 main(float2 _21)
17{
18    bool _44 = false;
19    if (trunc(_7_testInputs.x) == (-1.0f))
20    {
21        float2 _36 = trunc(_7_testInputs.xy);
22        _44 = all(bool2(_36.x == float2(-1.0f, 0.0f).x, _36.y == float2(-1.0f, 0.0f).y));
23    }
24    else
25    {
26        _44 = false;
27    }
28    bool _56 = false;
29    if (_44)
30    {
31        float3 _47 = trunc(_7_testInputs.xyz);
32        _56 = all(bool3(_47.x == float3(-1.0f, 0.0f, 0.0f).x, _47.y == float3(-1.0f, 0.0f, 0.0f).y, _47.z == float3(-1.0f, 0.0f, 0.0f).z));
33    }
34    else
35    {
36        _56 = false;
37    }
38    bool _67 = false;
39    if (_56)
40    {
41        float4 _59 = trunc(_7_testInputs);
42        _67 = all(bool4(_59.x == float4(-1.0f, 0.0f, 0.0f, 2.0f).x, _59.y == float4(-1.0f, 0.0f, 0.0f, 2.0f).y, _59.z == float4(-1.0f, 0.0f, 0.0f, 2.0f).z, _59.w == float4(-1.0f, 0.0f, 0.0f, 2.0f).w));
43    }
44    else
45    {
46        _67 = false;
47    }
48    float4 _68 = 0.0f.xxxx;
49    if (_67)
50    {
51        _68 = _7_colorGreen;
52    }
53    else
54    {
55        _68 = _7_colorRed;
56    }
57    return _68;
58}
59
60void frag_main()
61{
62    float2 _17 = 0.0f.xx;
63    sk_FragColor = main(_17);
64}
65
66SPIRV_Cross_Output main()
67{
68    frag_main();
69    SPIRV_Cross_Output stage_output;
70    stage_output.sk_FragColor = sk_FragColor;
71    return stage_output;
72}
73