1617a3babSopenharmony_ci#version 450 core
2617a3babSopenharmony_ci
3617a3babSopenharmony_ci#extension GL_EXT_spirv_intrinsics: enable
4617a3babSopenharmony_ci
5617a3babSopenharmony_cispirv_instruction (set = "GLSL.std.450", id = 35) // modf
6617a3babSopenharmony_cifloat modf(float x, spirv_by_reference float i);
7617a3babSopenharmony_ci
8617a3babSopenharmony_cilayout(location = 0) in float floatIn;
9617a3babSopenharmony_cilayout(location = 0) out vec2 vec2Out;
10617a3babSopenharmony_cilayout(location = 1) out float floatOut;
11617a3babSopenharmony_ci
12617a3babSopenharmony_civoid func(spirv_by_reference float f)
13617a3babSopenharmony_ci{
14617a3babSopenharmony_ci    f = 0.5;
15617a3babSopenharmony_ci}
16617a3babSopenharmony_ci
17617a3babSopenharmony_civoid main()
18617a3babSopenharmony_ci{
19617a3babSopenharmony_ci    vec2Out.x = modf(floatIn, vec2Out.y);
20617a3babSopenharmony_ci    func(floatOut);
21617a3babSopenharmony_ci}
22