xref: /aosp_15_r20/external/skia/tests/sksl/shared/Assignment.hlsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerstruct S
2*c8dee2aaSAndroid Build Coastguard Worker{
3*c8dee2aaSAndroid Build Coastguard Worker    float f;
4*c8dee2aaSAndroid Build Coastguard Worker    float af[5];
5*c8dee2aaSAndroid Build Coastguard Worker    float4 h4;
6*c8dee2aaSAndroid Build Coastguard Worker    float4 ah4[5];
7*c8dee2aaSAndroid Build Coastguard Worker};
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard Workercbuffer _UniformBuffer : register(b0, space0)
10*c8dee2aaSAndroid Build Coastguard Worker{
11*c8dee2aaSAndroid Build Coastguard Worker    float4 _20_colorGreen : packoffset(c0);
12*c8dee2aaSAndroid Build Coastguard Worker};
13*c8dee2aaSAndroid Build Coastguard Worker
14*c8dee2aaSAndroid Build Coastguard Worker
15*c8dee2aaSAndroid Build Coastguard Workerstatic float4 sk_FragColor;
16*c8dee2aaSAndroid Build Coastguard Worker
17*c8dee2aaSAndroid Build Coastguard Workerstruct SPIRV_Cross_Output
18*c8dee2aaSAndroid Build Coastguard Worker{
19*c8dee2aaSAndroid Build Coastguard Worker    float4 sk_FragColor : SV_Target0;
20*c8dee2aaSAndroid Build Coastguard Worker};
21*c8dee2aaSAndroid Build Coastguard Worker
22*c8dee2aaSAndroid Build Coastguard Workerstatic float4 globalVar = 0.0f.xxxx;
23*c8dee2aaSAndroid Build Coastguard Workerstatic S globalStruct = { 0.0f, { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, 0.0f.xxxx, { 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx } };
24*c8dee2aaSAndroid Build Coastguard Worker
25*c8dee2aaSAndroid Build Coastguard Workervoid assignToFunctionParameter_vif(out int _44, out float _45)
26*c8dee2aaSAndroid Build Coastguard Worker{
27*c8dee2aaSAndroid Build Coastguard Worker    _44 = 1;
28*c8dee2aaSAndroid Build Coastguard Worker    _45 = 1.0f;
29*c8dee2aaSAndroid Build Coastguard Worker}
30*c8dee2aaSAndroid Build Coastguard Worker
31*c8dee2aaSAndroid Build Coastguard Workervoid keepAlive_vf(float _37)
32*c8dee2aaSAndroid Build Coastguard Worker{
33*c8dee2aaSAndroid Build Coastguard Worker}
34*c8dee2aaSAndroid Build Coastguard Worker
35*c8dee2aaSAndroid Build Coastguard Workervoid keepAlive_vh(float _35)
36*c8dee2aaSAndroid Build Coastguard Worker{
37*c8dee2aaSAndroid Build Coastguard Worker}
38*c8dee2aaSAndroid Build Coastguard Worker
39*c8dee2aaSAndroid Build Coastguard Workervoid keepAlive_vi(int _41)
40*c8dee2aaSAndroid Build Coastguard Worker{
41*c8dee2aaSAndroid Build Coastguard Worker}
42*c8dee2aaSAndroid Build Coastguard Worker
43*c8dee2aaSAndroid Build Coastguard Workerfloat4 main(float2 _50)
44*c8dee2aaSAndroid Build Coastguard Worker{
45*c8dee2aaSAndroid Build Coastguard Worker    int i = 0;
46*c8dee2aaSAndroid Build Coastguard Worker    int4 i4 = int4(1, 2, 3, 4);
47*c8dee2aaSAndroid Build Coastguard Worker    float3x3 f3x3 = float3x3(float3(1.0f, 2.0f, 3.0f), float3(4.0f, 5.0f, 6.0f), float3(7.0f, 8.0f, 9.0f));
48*c8dee2aaSAndroid Build Coastguard Worker    float4 x = 0.0f.xxxx;
49*c8dee2aaSAndroid Build Coastguard Worker    x.w = 0.0f;
50*c8dee2aaSAndroid Build Coastguard Worker    x = float4(0.0f.xx.y, 0.0f.xx.x, x.z, x.w);
51*c8dee2aaSAndroid Build Coastguard Worker    int ai[1] = { 0 };
52*c8dee2aaSAndroid Build Coastguard Worker    ai[0] = 0;
53*c8dee2aaSAndroid Build Coastguard Worker    int4 ai4[1] = { int4(0, 0, 0, 0) };
54*c8dee2aaSAndroid Build Coastguard Worker    ai4[0] = int4(1, 2, 3, 4);
55*c8dee2aaSAndroid Build Coastguard Worker    float3x3 ah3x3[1] = { float3x3(0.0f.xxx, 0.0f.xxx, 0.0f.xxx) };
56*c8dee2aaSAndroid Build Coastguard Worker    ah3x3[0] = float3x3(float3(1.0f, 2.0f, 3.0f), float3(4.0f, 5.0f, 6.0f), float3(7.0f, 8.0f, 9.0f));
57*c8dee2aaSAndroid Build Coastguard Worker    float4 af4[1] = { 0.0f.xxxx };
58*c8dee2aaSAndroid Build Coastguard Worker    af4[0].x = 0.0f;
59*c8dee2aaSAndroid Build Coastguard Worker    af4[0] = float4(1.0f.xxxx.z, 1.0f.xxxx.x, 1.0f.xxxx.w, 1.0f.xxxx.y);
60*c8dee2aaSAndroid Build Coastguard Worker    S s = { 0.0f, { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f }, 0.0f.xxxx, { 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx, 0.0f.xxxx } };
61*c8dee2aaSAndroid Build Coastguard Worker    s.f = 0.0f;
62*c8dee2aaSAndroid Build Coastguard Worker    s.af[1] = 0.0f;
63*c8dee2aaSAndroid Build Coastguard Worker    s.h4 = float4(9.0f.xxx.y, 9.0f.xxx.z, 9.0f.xxx.x, s.h4.w);
64*c8dee2aaSAndroid Build Coastguard Worker    s.ah4[2] = float4(s.ah4[2].x, 5.0f.xx.x, s.ah4[2].z, 5.0f.xx.y);
65*c8dee2aaSAndroid Build Coastguard Worker    globalVar = 0.0f.xxxx;
66*c8dee2aaSAndroid Build Coastguard Worker    globalStruct.f = 0.0f;
67*c8dee2aaSAndroid Build Coastguard Worker    int _118 = 0;
68*c8dee2aaSAndroid Build Coastguard Worker    float _123 = f3x3[0].x;
69*c8dee2aaSAndroid Build Coastguard Worker    assignToFunctionParameter_vif(_118, _123);
70*c8dee2aaSAndroid Build Coastguard Worker    f3x3[0].x = _123;
71*c8dee2aaSAndroid Build Coastguard Worker    float l = 0.0f;
72*c8dee2aaSAndroid Build Coastguard Worker    ai[0] += ai4[0].x;
73*c8dee2aaSAndroid Build Coastguard Worker    s.f = 1.0f;
74*c8dee2aaSAndroid Build Coastguard Worker    s.af[0] = 2.0f;
75*c8dee2aaSAndroid Build Coastguard Worker    s.h4 = 1.0f.xxxx;
76*c8dee2aaSAndroid Build Coastguard Worker    s.ah4[0] = 2.0f.xxxx;
77*c8dee2aaSAndroid Build Coastguard Worker    float repeat = 1.0f;
78*c8dee2aaSAndroid Build Coastguard Worker    repeat = 1.0f;
79*c8dee2aaSAndroid Build Coastguard Worker    float _142 = af4[0].x;
80*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vf(_142);
81*c8dee2aaSAndroid Build Coastguard Worker    af4[0].x = _142;
82*c8dee2aaSAndroid Build Coastguard Worker    float _148 = ah3x3[0][0].x;
83*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vh(_148);
84*c8dee2aaSAndroid Build Coastguard Worker    ah3x3[0][0].x = _148;
85*c8dee2aaSAndroid Build Coastguard Worker    int _152 = i;
86*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vi(_152);
87*c8dee2aaSAndroid Build Coastguard Worker    i = _152;
88*c8dee2aaSAndroid Build Coastguard Worker    int _157 = i4.y;
89*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vi(_157);
90*c8dee2aaSAndroid Build Coastguard Worker    i4.y = _157;
91*c8dee2aaSAndroid Build Coastguard Worker    int _162 = ai[0];
92*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vi(_162);
93*c8dee2aaSAndroid Build Coastguard Worker    ai[0] = _162;
94*c8dee2aaSAndroid Build Coastguard Worker    int _168 = ai4[0].x;
95*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vi(_168);
96*c8dee2aaSAndroid Build Coastguard Worker    ai4[0].x = _168;
97*c8dee2aaSAndroid Build Coastguard Worker    float _173 = x.y;
98*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vh(_173);
99*c8dee2aaSAndroid Build Coastguard Worker    x.y = _173;
100*c8dee2aaSAndroid Build Coastguard Worker    float _178 = s.f;
101*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vf(_178);
102*c8dee2aaSAndroid Build Coastguard Worker    s.f = _178;
103*c8dee2aaSAndroid Build Coastguard Worker    float _182 = l;
104*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vh(_182);
105*c8dee2aaSAndroid Build Coastguard Worker    l = _182;
106*c8dee2aaSAndroid Build Coastguard Worker    float _188 = f3x3[0].x;
107*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vf(_188);
108*c8dee2aaSAndroid Build Coastguard Worker    f3x3[0].x = _188;
109*c8dee2aaSAndroid Build Coastguard Worker    float _192 = repeat;
110*c8dee2aaSAndroid Build Coastguard Worker    keepAlive_vf(_192);
111*c8dee2aaSAndroid Build Coastguard Worker    repeat = _192;
112*c8dee2aaSAndroid Build Coastguard Worker    return _20_colorGreen;
113*c8dee2aaSAndroid Build Coastguard Worker}
114*c8dee2aaSAndroid Build Coastguard Worker
115*c8dee2aaSAndroid Build Coastguard Workervoid frag_main()
116*c8dee2aaSAndroid Build Coastguard Worker{
117*c8dee2aaSAndroid Build Coastguard Worker    float2 _30 = 0.0f.xx;
118*c8dee2aaSAndroid Build Coastguard Worker    float4 _32 = main(_30);
119*c8dee2aaSAndroid Build Coastguard Worker    sk_FragColor = _32;
120*c8dee2aaSAndroid Build Coastguard Worker}
121*c8dee2aaSAndroid Build Coastguard Worker
122*c8dee2aaSAndroid Build Coastguard WorkerSPIRV_Cross_Output main()
123*c8dee2aaSAndroid Build Coastguard Worker{
124*c8dee2aaSAndroid Build Coastguard Worker    frag_main();
125*c8dee2aaSAndroid Build Coastguard Worker    SPIRV_Cross_Output stage_output;
126*c8dee2aaSAndroid Build Coastguard Worker    stage_output.sk_FragColor = sk_FragColor;
127*c8dee2aaSAndroid Build Coastguard Worker    return stage_output;
128*c8dee2aaSAndroid Build Coastguard Worker}
129