1617a3babSopenharmony_ci#version 450 core
2617a3babSopenharmony_ci
3617a3babSopenharmony_ci#extension GL_AMD_gpu_shader_half_float: enable
4617a3babSopenharmony_ci#extension GL_AMD_gpu_shader_int16: enable
5617a3babSopenharmony_ci
6617a3babSopenharmony_cilayout(location = 0) in f16vec4 if16v4;
7617a3babSopenharmony_cilayout(location = 1) in i16vec4 ii16v4;
8617a3babSopenharmony_cilayout(location = 2) in u16vec4 iu16v4;
9617a3babSopenharmony_ci
10617a3babSopenharmony_cilayout(location = 0, xfb_buffer = 0, xfb_stride = 6, xfb_offset = 0) out f16vec3 of16v3;
11617a3babSopenharmony_cilayout(location = 1, xfb_buffer = 1, xfb_stride = 6, xfb_offset = 0) out F16Out
12617a3babSopenharmony_ci{
13617a3babSopenharmony_ci    float16_t of16;
14617a3babSopenharmony_ci    f16vec2   of16v2;
15617a3babSopenharmony_ci};
16617a3babSopenharmony_ci
17617a3babSopenharmony_cilayout(location = 5, xfb_buffer = 2, xfb_stride = 6, xfb_offset = 0) out i16vec3 oi16v3;
18617a3babSopenharmony_cilayout(location = 6, xfb_buffer = 3, xfb_stride = 6, xfb_offset = 0) out I16Out
19617a3babSopenharmony_ci{
20617a3babSopenharmony_ci    uint16_t ou16;
21617a3babSopenharmony_ci    u16vec2  ou16v2;
22617a3babSopenharmony_ci};
23617a3babSopenharmony_ci
24617a3babSopenharmony_civoid main()
25617a3babSopenharmony_ci{
26617a3babSopenharmony_ci    of16v3 = if16v4.xyz;
27617a3babSopenharmony_ci    of16   = if16v4.x;
28617a3babSopenharmony_ci    of16v2 = if16v4.xy;
29617a3babSopenharmony_ci
30617a3babSopenharmony_ci    oi16v3 = ii16v4.xyz;
31617a3babSopenharmony_ci    ou16   = iu16v4.x;
32617a3babSopenharmony_ci    ou16v2 = iu16v4.xy;
33617a3babSopenharmony_ci}