xref: /aosp_15_r20/external/skia/tests/sksl/intrinsics/Inversesqrt.glsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker
2*c8dee2aaSAndroid Build Coastguard Workerout vec4 sk_FragColor;
3*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 inputVal;
4*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 expected;
5*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 colorGreen;
6*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 colorRed;
7*c8dee2aaSAndroid Build Coastguard Workervec4 main() {
8*c8dee2aaSAndroid Build Coastguard Worker    const vec4 negativeVal = vec4(-1.0, -4.0, -16.0, -64.0);
9*c8dee2aaSAndroid Build Coastguard Worker    return ((((((((((inversesqrt(inputVal.x) == expected.x && inversesqrt(inputVal.xy) == expected.xy) && inversesqrt(inputVal.xyz) == expected.xyz) && inversesqrt(inputVal) == expected) && 1.0 == expected.x) && vec2(1.0, 0.5) == expected.xy) && vec3(1.0, 0.5, 0.25) == expected.xyz) && vec4(1.0, 0.5, 0.25, 0.125) == expected) && inversesqrt(-1.0) == expected.x) && inversesqrt(vec2(-1.0, -4.0)) == expected.xy) && inversesqrt(vec3(-1.0, -4.0, -16.0)) == expected.xyz) && inversesqrt(negativeVal) == expected ? colorGreen : colorRed;
10*c8dee2aaSAndroid Build Coastguard Worker}
11