xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/MaxInt.hlsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workercbuffer _UniformBuffer : register(b0, space0)
2*c8dee2aaSAndroid Build Coastguard Worker{
3*c8dee2aaSAndroid Build Coastguard Worker    float4 _7_testInputs : packoffset(c0);
4*c8dee2aaSAndroid Build Coastguard Worker    float4 _7_colorGreen : packoffset(c1);
5*c8dee2aaSAndroid Build Coastguard Worker    float4 _7_colorRed : packoffset(c2);
6*c8dee2aaSAndroid Build Coastguard Worker};
7*c8dee2aaSAndroid Build Coastguard Worker
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workerstatic float4 sk_FragColor;
10*c8dee2aaSAndroid Build Coastguard Worker
11*c8dee2aaSAndroid Build Coastguard Workerstruct SPIRV_Cross_Output
12*c8dee2aaSAndroid Build Coastguard Worker{
13*c8dee2aaSAndroid Build Coastguard Worker    float4 sk_FragColor : SV_Target0;
14*c8dee2aaSAndroid Build Coastguard Worker};
15*c8dee2aaSAndroid Build Coastguard Worker
16*c8dee2aaSAndroid Build Coastguard Workerfloat4 main(float2 _21)
17*c8dee2aaSAndroid Build Coastguard Worker{
18*c8dee2aaSAndroid Build Coastguard Worker    float4 _32 = _7_testInputs * 100.0f;
19*c8dee2aaSAndroid Build Coastguard Worker    int4 _41 = int4(int(_32.x), int(_32.y), int(_32.z), int(_32.w));
20*c8dee2aaSAndroid Build Coastguard Worker    int4 intValues = _41;
21*c8dee2aaSAndroid Build Coastguard Worker    float4 _46 = _7_colorGreen * 100.0f;
22*c8dee2aaSAndroid Build Coastguard Worker    int4 _55 = int4(int(_46.x), int(_46.y), int(_46.z), int(_46.w));
23*c8dee2aaSAndroid Build Coastguard Worker    int4 intGreen = _55;
24*c8dee2aaSAndroid Build Coastguard Worker    int4 expectedA = int4(50, 50, 75, 225);
25*c8dee2aaSAndroid Build Coastguard Worker    int4 expectedB = int4(0, 100, 75, 225);
26*c8dee2aaSAndroid Build Coastguard Worker    int _67 = _41.x;
27*c8dee2aaSAndroid Build Coastguard Worker    bool _79 = false;
28*c8dee2aaSAndroid Build Coastguard Worker    if (max(_67, 50) == 50)
29*c8dee2aaSAndroid Build Coastguard Worker    {
30*c8dee2aaSAndroid Build Coastguard Worker        int2 _71 = max(_41.xy, int2(50, 50));
31*c8dee2aaSAndroid Build Coastguard Worker        _79 = all(bool2(_71.x == int4(50, 50, 75, 225).xy.x, _71.y == int4(50, 50, 75, 225).xy.y));
32*c8dee2aaSAndroid Build Coastguard Worker    }
33*c8dee2aaSAndroid Build Coastguard Worker    else
34*c8dee2aaSAndroid Build Coastguard Worker    {
35*c8dee2aaSAndroid Build Coastguard Worker        _79 = false;
36*c8dee2aaSAndroid Build Coastguard Worker    }
37*c8dee2aaSAndroid Build Coastguard Worker    bool _90 = false;
38*c8dee2aaSAndroid Build Coastguard Worker    if (_79)
39*c8dee2aaSAndroid Build Coastguard Worker    {
40*c8dee2aaSAndroid Build Coastguard Worker        int3 _82 = max(_41.xyz, int3(50, 50, 50));
41*c8dee2aaSAndroid Build Coastguard Worker        _90 = all(bool3(_82.x == int4(50, 50, 75, 225).xyz.x, _82.y == int4(50, 50, 75, 225).xyz.y, _82.z == int4(50, 50, 75, 225).xyz.z));
42*c8dee2aaSAndroid Build Coastguard Worker    }
43*c8dee2aaSAndroid Build Coastguard Worker    else
44*c8dee2aaSAndroid Build Coastguard Worker    {
45*c8dee2aaSAndroid Build Coastguard Worker        _90 = false;
46*c8dee2aaSAndroid Build Coastguard Worker    }
47*c8dee2aaSAndroid Build Coastguard Worker    bool _98 = false;
48*c8dee2aaSAndroid Build Coastguard Worker    if (_90)
49*c8dee2aaSAndroid Build Coastguard Worker    {
50*c8dee2aaSAndroid Build Coastguard Worker        int4 _93 = max(_41, int4(50, 50, 50, 50));
51*c8dee2aaSAndroid Build Coastguard Worker        _98 = all(bool4(_93.x == int4(50, 50, 75, 225).x, _93.y == int4(50, 50, 75, 225).y, _93.z == int4(50, 50, 75, 225).z, _93.w == int4(50, 50, 75, 225).w));
52*c8dee2aaSAndroid Build Coastguard Worker    }
53*c8dee2aaSAndroid Build Coastguard Worker    else
54*c8dee2aaSAndroid Build Coastguard Worker    {
55*c8dee2aaSAndroid Build Coastguard Worker        _98 = false;
56*c8dee2aaSAndroid Build Coastguard Worker    }
57*c8dee2aaSAndroid Build Coastguard Worker    bool _102 = false;
58*c8dee2aaSAndroid Build Coastguard Worker    if (_98)
59*c8dee2aaSAndroid Build Coastguard Worker    {
60*c8dee2aaSAndroid Build Coastguard Worker        _102 = true;
61*c8dee2aaSAndroid Build Coastguard Worker    }
62*c8dee2aaSAndroid Build Coastguard Worker    else
63*c8dee2aaSAndroid Build Coastguard Worker    {
64*c8dee2aaSAndroid Build Coastguard Worker        _102 = false;
65*c8dee2aaSAndroid Build Coastguard Worker    }
66*c8dee2aaSAndroid Build Coastguard Worker    bool _108 = false;
67*c8dee2aaSAndroid Build Coastguard Worker    if (_102)
68*c8dee2aaSAndroid Build Coastguard Worker    {
69*c8dee2aaSAndroid Build Coastguard Worker        _108 = all(bool2(int2(50, 50).x == int4(50, 50, 75, 225).xy.x, int2(50, 50).y == int4(50, 50, 75, 225).xy.y));
70*c8dee2aaSAndroid Build Coastguard Worker    }
71*c8dee2aaSAndroid Build Coastguard Worker    else
72*c8dee2aaSAndroid Build Coastguard Worker    {
73*c8dee2aaSAndroid Build Coastguard Worker        _108 = false;
74*c8dee2aaSAndroid Build Coastguard Worker    }
75*c8dee2aaSAndroid Build Coastguard Worker    bool _115 = false;
76*c8dee2aaSAndroid Build Coastguard Worker    if (_108)
77*c8dee2aaSAndroid Build Coastguard Worker    {
78*c8dee2aaSAndroid Build Coastguard Worker        _115 = all(bool3(int3(50, 50, 75).x == int4(50, 50, 75, 225).xyz.x, int3(50, 50, 75).y == int4(50, 50, 75, 225).xyz.y, int3(50, 50, 75).z == int4(50, 50, 75, 225).xyz.z));
79*c8dee2aaSAndroid Build Coastguard Worker    }
80*c8dee2aaSAndroid Build Coastguard Worker    else
81*c8dee2aaSAndroid Build Coastguard Worker    {
82*c8dee2aaSAndroid Build Coastguard Worker        _115 = false;
83*c8dee2aaSAndroid Build Coastguard Worker    }
84*c8dee2aaSAndroid Build Coastguard Worker    bool _118 = false;
85*c8dee2aaSAndroid Build Coastguard Worker    if (_115)
86*c8dee2aaSAndroid Build Coastguard Worker    {
87*c8dee2aaSAndroid Build Coastguard Worker        _118 = true;
88*c8dee2aaSAndroid Build Coastguard Worker    }
89*c8dee2aaSAndroid Build Coastguard Worker    else
90*c8dee2aaSAndroid Build Coastguard Worker    {
91*c8dee2aaSAndroid Build Coastguard Worker        _118 = false;
92*c8dee2aaSAndroid Build Coastguard Worker    }
93*c8dee2aaSAndroid Build Coastguard Worker    bool _124 = false;
94*c8dee2aaSAndroid Build Coastguard Worker    if (_118)
95*c8dee2aaSAndroid Build Coastguard Worker    {
96*c8dee2aaSAndroid Build Coastguard Worker        _124 = max(_67, _55.x) == 0;
97*c8dee2aaSAndroid Build Coastguard Worker    }
98*c8dee2aaSAndroid Build Coastguard Worker    else
99*c8dee2aaSAndroid Build Coastguard Worker    {
100*c8dee2aaSAndroid Build Coastguard Worker        _124 = false;
101*c8dee2aaSAndroid Build Coastguard Worker    }
102*c8dee2aaSAndroid Build Coastguard Worker    bool _133 = false;
103*c8dee2aaSAndroid Build Coastguard Worker    if (_124)
104*c8dee2aaSAndroid Build Coastguard Worker    {
105*c8dee2aaSAndroid Build Coastguard Worker        int2 _127 = max(_41.xy, _55.xy);
106*c8dee2aaSAndroid Build Coastguard Worker        _133 = all(bool2(_127.x == int4(0, 100, 75, 225).xy.x, _127.y == int4(0, 100, 75, 225).xy.y));
107*c8dee2aaSAndroid Build Coastguard Worker    }
108*c8dee2aaSAndroid Build Coastguard Worker    else
109*c8dee2aaSAndroid Build Coastguard Worker    {
110*c8dee2aaSAndroid Build Coastguard Worker        _133 = false;
111*c8dee2aaSAndroid Build Coastguard Worker    }
112*c8dee2aaSAndroid Build Coastguard Worker    bool _142 = false;
113*c8dee2aaSAndroid Build Coastguard Worker    if (_133)
114*c8dee2aaSAndroid Build Coastguard Worker    {
115*c8dee2aaSAndroid Build Coastguard Worker        int3 _136 = max(_41.xyz, _55.xyz);
116*c8dee2aaSAndroid Build Coastguard Worker        _142 = all(bool3(_136.x == int4(0, 100, 75, 225).xyz.x, _136.y == int4(0, 100, 75, 225).xyz.y, _136.z == int4(0, 100, 75, 225).xyz.z));
117*c8dee2aaSAndroid Build Coastguard Worker    }
118*c8dee2aaSAndroid Build Coastguard Worker    else
119*c8dee2aaSAndroid Build Coastguard Worker    {
120*c8dee2aaSAndroid Build Coastguard Worker        _142 = false;
121*c8dee2aaSAndroid Build Coastguard Worker    }
122*c8dee2aaSAndroid Build Coastguard Worker    bool _148 = false;
123*c8dee2aaSAndroid Build Coastguard Worker    if (_142)
124*c8dee2aaSAndroid Build Coastguard Worker    {
125*c8dee2aaSAndroid Build Coastguard Worker        int4 _145 = max(_41, _55);
126*c8dee2aaSAndroid Build Coastguard Worker        _148 = all(bool4(_145.x == int4(0, 100, 75, 225).x, _145.y == int4(0, 100, 75, 225).y, _145.z == int4(0, 100, 75, 225).z, _145.w == int4(0, 100, 75, 225).w));
127*c8dee2aaSAndroid Build Coastguard Worker    }
128*c8dee2aaSAndroid Build Coastguard Worker    else
129*c8dee2aaSAndroid Build Coastguard Worker    {
130*c8dee2aaSAndroid Build Coastguard Worker        _148 = false;
131*c8dee2aaSAndroid Build Coastguard Worker    }
132*c8dee2aaSAndroid Build Coastguard Worker    bool _151 = false;
133*c8dee2aaSAndroid Build Coastguard Worker    if (_148)
134*c8dee2aaSAndroid Build Coastguard Worker    {
135*c8dee2aaSAndroid Build Coastguard Worker        _151 = true;
136*c8dee2aaSAndroid Build Coastguard Worker    }
137*c8dee2aaSAndroid Build Coastguard Worker    else
138*c8dee2aaSAndroid Build Coastguard Worker    {
139*c8dee2aaSAndroid Build Coastguard Worker        _151 = false;
140*c8dee2aaSAndroid Build Coastguard Worker    }
141*c8dee2aaSAndroid Build Coastguard Worker    bool _158 = false;
142*c8dee2aaSAndroid Build Coastguard Worker    if (_151)
143*c8dee2aaSAndroid Build Coastguard Worker    {
144*c8dee2aaSAndroid Build Coastguard Worker        _158 = all(bool2(int2(0, 100).x == int4(0, 100, 75, 225).xy.x, int2(0, 100).y == int4(0, 100, 75, 225).xy.y));
145*c8dee2aaSAndroid Build Coastguard Worker    }
146*c8dee2aaSAndroid Build Coastguard Worker    else
147*c8dee2aaSAndroid Build Coastguard Worker    {
148*c8dee2aaSAndroid Build Coastguard Worker        _158 = false;
149*c8dee2aaSAndroid Build Coastguard Worker    }
150*c8dee2aaSAndroid Build Coastguard Worker    bool _165 = false;
151*c8dee2aaSAndroid Build Coastguard Worker    if (_158)
152*c8dee2aaSAndroid Build Coastguard Worker    {
153*c8dee2aaSAndroid Build Coastguard Worker        _165 = all(bool3(int3(0, 100, 75).x == int4(0, 100, 75, 225).xyz.x, int3(0, 100, 75).y == int4(0, 100, 75, 225).xyz.y, int3(0, 100, 75).z == int4(0, 100, 75, 225).xyz.z));
154*c8dee2aaSAndroid Build Coastguard Worker    }
155*c8dee2aaSAndroid Build Coastguard Worker    else
156*c8dee2aaSAndroid Build Coastguard Worker    {
157*c8dee2aaSAndroid Build Coastguard Worker        _165 = false;
158*c8dee2aaSAndroid Build Coastguard Worker    }
159*c8dee2aaSAndroid Build Coastguard Worker    bool _168 = false;
160*c8dee2aaSAndroid Build Coastguard Worker    if (_165)
161*c8dee2aaSAndroid Build Coastguard Worker    {
162*c8dee2aaSAndroid Build Coastguard Worker        _168 = true;
163*c8dee2aaSAndroid Build Coastguard Worker    }
164*c8dee2aaSAndroid Build Coastguard Worker    else
165*c8dee2aaSAndroid Build Coastguard Worker    {
166*c8dee2aaSAndroid Build Coastguard Worker        _168 = false;
167*c8dee2aaSAndroid Build Coastguard Worker    }
168*c8dee2aaSAndroid Build Coastguard Worker    float4 _169 = 0.0f.xxxx;
169*c8dee2aaSAndroid Build Coastguard Worker    if (_168)
170*c8dee2aaSAndroid Build Coastguard Worker    {
171*c8dee2aaSAndroid Build Coastguard Worker        _169 = _7_colorGreen;
172*c8dee2aaSAndroid Build Coastguard Worker    }
173*c8dee2aaSAndroid Build Coastguard Worker    else
174*c8dee2aaSAndroid Build Coastguard Worker    {
175*c8dee2aaSAndroid Build Coastguard Worker        _169 = _7_colorRed;
176*c8dee2aaSAndroid Build Coastguard Worker    }
177*c8dee2aaSAndroid Build Coastguard Worker    return _169;
178*c8dee2aaSAndroid Build Coastguard Worker}
179*c8dee2aaSAndroid Build Coastguard Worker
180*c8dee2aaSAndroid Build Coastguard Workervoid frag_main()
181*c8dee2aaSAndroid Build Coastguard Worker{
182*c8dee2aaSAndroid Build Coastguard Worker    float2 _17 = 0.0f.xx;
183*c8dee2aaSAndroid Build Coastguard Worker    sk_FragColor = main(_17);
184*c8dee2aaSAndroid Build Coastguard Worker}
185*c8dee2aaSAndroid Build Coastguard Worker
186*c8dee2aaSAndroid Build Coastguard WorkerSPIRV_Cross_Output main()
187*c8dee2aaSAndroid Build Coastguard Worker{
188*c8dee2aaSAndroid Build Coastguard Worker    frag_main();
189*c8dee2aaSAndroid Build Coastguard Worker    SPIRV_Cross_Output stage_output;
190*c8dee2aaSAndroid Build Coastguard Worker    stage_output.sk_FragColor = sk_FragColor;
191*c8dee2aaSAndroid Build Coastguard Worker    return stage_output;
192*c8dee2aaSAndroid Build Coastguard Worker}
193