1cb93a386Sopenharmony_ci 2cb93a386Sopenharmony_ciout vec4 sk_FragColor; 3cb93a386Sopenharmony_ciuniform vec4 colorRed; 4cb93a386Sopenharmony_ciuniform vec4 colorGreen; 5cb93a386Sopenharmony_ciuniform vec4 testInputs; 6cb93a386Sopenharmony_cifloat fn_hh4(vec4 v) { 7cb93a386Sopenharmony_ci for (int x = 1;x <= 2; ++x) { 8cb93a386Sopenharmony_ci return v.x; 9cb93a386Sopenharmony_ci } 10cb93a386Sopenharmony_ci} 11cb93a386Sopenharmony_civec4 main() { 12cb93a386Sopenharmony_ci vec4 v = testInputs; 13cb93a386Sopenharmony_ci v = vec4(0.0, v.zyx); 14cb93a386Sopenharmony_ci v = vec4(0.0, 0.0, v.xw); 15cb93a386Sopenharmony_ci v = vec4(1.0, 1.0, v.wx); 16cb93a386Sopenharmony_ci v = vec4(v.zy, 1.0, 1.0); 17cb93a386Sopenharmony_ci v = vec4(v.xx, 1.0, 1.0); 18cb93a386Sopenharmony_ci v = v.wzwz; 19cb93a386Sopenharmony_ci v = vec3(fn_hh4(v), 123.0, 456.0).yyzz; 20cb93a386Sopenharmony_ci v = vec3(fn_hh4(v), 123.0, 456.0).yyzz; 21cb93a386Sopenharmony_ci v = vec4(123.0, 456.0, 456.0, fn_hh4(v)); 22cb93a386Sopenharmony_ci v = vec4(123.0, 456.0, 456.0, fn_hh4(v)); 23cb93a386Sopenharmony_ci v = vec3(fn_hh4(v), 123.0, 456.0).yxxz; 24cb93a386Sopenharmony_ci v = vec3(fn_hh4(v), 123.0, 456.0).yxxz; 25cb93a386Sopenharmony_ci v = vec4(1.0, 1.0, 2.0, 3.0); 26cb93a386Sopenharmony_ci v = vec4(colorRed.xyz, 1.0); 27cb93a386Sopenharmony_ci v = vec4(colorRed.x, 1.0, colorRed.yz); 28cb93a386Sopenharmony_ci v.wzyx = v; 29cb93a386Sopenharmony_ci v.xw = v.yz; 30cb93a386Sopenharmony_ci v.zyx = vec3(v.ww, 1.0); 31cb93a386Sopenharmony_ci return v == vec4(1.0) ? colorGreen : colorRed; 32cb93a386Sopenharmony_ci} 33