xref: /aosp_15_r20/external/skia/tests/sksl/shared/NumberCasts.hlsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerstatic float4 sk_FragColor;
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Workerstruct SPIRV_Cross_Output
4*c8dee2aaSAndroid Build Coastguard Worker{
5*c8dee2aaSAndroid Build Coastguard Worker    float4 sk_FragColor : SV_Target0;
6*c8dee2aaSAndroid Build Coastguard Worker};
7*c8dee2aaSAndroid Build Coastguard Worker
8*c8dee2aaSAndroid Build Coastguard Workerfloat4 main(float2 _18)
9*c8dee2aaSAndroid Build Coastguard Worker{
10*c8dee2aaSAndroid Build Coastguard Worker    bool3 B = bool3(false, false, false);
11*c8dee2aaSAndroid Build Coastguard Worker    B.x = true;
12*c8dee2aaSAndroid Build Coastguard Worker    B.y = true;
13*c8dee2aaSAndroid Build Coastguard Worker    B.z = true;
14*c8dee2aaSAndroid Build Coastguard Worker    float3 F = 0.0f.xxx;
15*c8dee2aaSAndroid Build Coastguard Worker    F.x = 1.230000019073486328125f;
16*c8dee2aaSAndroid Build Coastguard Worker    F.y = 0.0f;
17*c8dee2aaSAndroid Build Coastguard Worker    F.z = 1.0f;
18*c8dee2aaSAndroid Build Coastguard Worker    int3 I = int3(0, 0, 0);
19*c8dee2aaSAndroid Build Coastguard Worker    I.x = 1;
20*c8dee2aaSAndroid Build Coastguard Worker    I.y = 1;
21*c8dee2aaSAndroid Build Coastguard Worker    I.z = 1;
22*c8dee2aaSAndroid Build Coastguard Worker    bool _64 = false;
23*c8dee2aaSAndroid Build Coastguard Worker    if (B.x)
24*c8dee2aaSAndroid Build Coastguard Worker    {
25*c8dee2aaSAndroid Build Coastguard Worker        _64 = B.y;
26*c8dee2aaSAndroid Build Coastguard Worker    }
27*c8dee2aaSAndroid Build Coastguard Worker    else
28*c8dee2aaSAndroid Build Coastguard Worker    {
29*c8dee2aaSAndroid Build Coastguard Worker        _64 = false;
30*c8dee2aaSAndroid Build Coastguard Worker    }
31*c8dee2aaSAndroid Build Coastguard Worker    bool _69 = false;
32*c8dee2aaSAndroid Build Coastguard Worker    if (_64)
33*c8dee2aaSAndroid Build Coastguard Worker    {
34*c8dee2aaSAndroid Build Coastguard Worker        _69 = B.z;
35*c8dee2aaSAndroid Build Coastguard Worker    }
36*c8dee2aaSAndroid Build Coastguard Worker    else
37*c8dee2aaSAndroid Build Coastguard Worker    {
38*c8dee2aaSAndroid Build Coastguard Worker        _69 = false;
39*c8dee2aaSAndroid Build Coastguard Worker    }
40*c8dee2aaSAndroid Build Coastguard Worker    return float4((F.x * F.y) * F.z, float(_69), 0.0f, float((I.x * I.y) * I.z));
41*c8dee2aaSAndroid Build Coastguard Worker}
42*c8dee2aaSAndroid Build Coastguard Worker
43*c8dee2aaSAndroid Build Coastguard Workervoid frag_main()
44*c8dee2aaSAndroid Build Coastguard Worker{
45*c8dee2aaSAndroid Build Coastguard Worker    float2 _14 = 0.0f.xx;
46*c8dee2aaSAndroid Build Coastguard Worker    sk_FragColor = main(_14);
47*c8dee2aaSAndroid Build Coastguard Worker}
48*c8dee2aaSAndroid Build Coastguard Worker
49*c8dee2aaSAndroid Build Coastguard WorkerSPIRV_Cross_Output main()
50*c8dee2aaSAndroid Build Coastguard Worker{
51*c8dee2aaSAndroid Build Coastguard Worker    frag_main();
52*c8dee2aaSAndroid Build Coastguard Worker    SPIRV_Cross_Output stage_output;
53*c8dee2aaSAndroid Build Coastguard Worker    stage_output.sk_FragColor = sk_FragColor;
54*c8dee2aaSAndroid Build Coastguard Worker    return stage_output;
55*c8dee2aaSAndroid Build Coastguard Worker}
56