1617a3babSopenharmony_ci#version 450 2617a3babSopenharmony_ci 3617a3babSopenharmony_ciin float inf; 4617a3babSopenharmony_ciin flat ivec4 ini4; 5617a3babSopenharmony_ciout vec4 outf4; 6617a3babSopenharmony_ci 7617a3babSopenharmony_cifloat Test1(int bound) 8617a3babSopenharmony_ci{ 9617a3babSopenharmony_ci float r = 0; 10617a3babSopenharmony_ci for (int x=0; x<bound; ++x) 11617a3babSopenharmony_ci r += 0.5; 12617a3babSopenharmony_ci return r; 13617a3babSopenharmony_ci} 14617a3babSopenharmony_ci 15617a3babSopenharmony_cifloat Test2(int bound) 16617a3babSopenharmony_ci{ 17617a3babSopenharmony_ci if (bound > 2) 18617a3babSopenharmony_ci return Test1(bound); 19617a3babSopenharmony_ci else 20617a3babSopenharmony_ci return float(bound * 2 + 21617a3babSopenharmony_ci ini4.y * ini4.z + 22617a3babSopenharmony_ci ini4.x); 23617a3babSopenharmony_ci} 24617a3babSopenharmony_ci 25617a3babSopenharmony_civoid main() 26617a3babSopenharmony_ci{ 27617a3babSopenharmony_ci outf4 = vec4(Test1(int(inf)) + 28617a3babSopenharmony_ci Test2(int(inf))); 29617a3babSopenharmony_ci} 30