1struct CBO_1
2{
3    float4 a;
4    float4 b;
5    float4 c;
6    float4 d;
7};
8
9ConstantBuffer<CBO_1> cbo[2][4] : register(b4, space0);
10cbuffer PushMe
11{
12    float4 push_a : packoffset(c0);
13    float4 push_b : packoffset(c1);
14    float4 push_c : packoffset(c2);
15    float4 push_d : packoffset(c3);
16};
17
18
19static float4 FragColor;
20
21struct SPIRV_Cross_Output
22{
23    float4 FragColor : SV_Target0;
24};
25
26void frag_main()
27{
28    FragColor = cbo[1][2].a;
29    FragColor += cbo[1][2].b;
30    FragColor += cbo[1][2].c;
31    FragColor += cbo[1][2].d;
32    FragColor += push_a;
33    FragColor += push_b;
34    FragColor += push_c;
35    FragColor += push_d;
36}
37
38SPIRV_Cross_Output main()
39{
40    frag_main();
41    SPIRV_Cross_Output stage_output;
42    stage_output.FragColor = FragColor;
43    return stage_output;
44}
45