1cb93a386Sopenharmony_ci/*#pragma settings RewriteMatrixComparisons*/
2cb93a386Sopenharmony_ci
3cb93a386Sopenharmony_ci// This is patterned on MatrixEquality.sksl.
4cb93a386Sopenharmony_ciuniform half4 colorGreen, colorRed;
5cb93a386Sopenharmony_ciuniform half2x2 testHalf2x2;
6cb93a386Sopenharmony_ciuniform float2x2 testFloat2x2;
7cb93a386Sopenharmony_ciuniform half3x3 testHalf3x3;
8cb93a386Sopenharmony_ciuniform float4x2 testFloat4x2;
9cb93a386Sopenharmony_ci
10cb93a386Sopenharmony_cibool test_equality() {
11cb93a386Sopenharmony_ci    bool ok = true;
12cb93a386Sopenharmony_ci    ok = ok && testHalf2x2 == half2x2(1,2,3,4);
13cb93a386Sopenharmony_ci    ok = ok && testFloat2x2 == half2x2(5,6,7,8);
14cb93a386Sopenharmony_ci    ok = ok && testHalf2x2 != half2x2(123);
15cb93a386Sopenharmony_ci    ok = ok && testFloat2x2 != half2x2(456);
16cb93a386Sopenharmony_ci    ok = ok && testHalf3x3 == half3x3(1,2,3,4,5,6,7,8,9);
17cb93a386Sopenharmony_ci    ok = ok && testFloat4x2 != float4x2(1,2,3,4,5,6,7,8);
18cb93a386Sopenharmony_ci    return ok;
19cb93a386Sopenharmony_ci}
20cb93a386Sopenharmony_ci
21cb93a386Sopenharmony_cihalf4 main(float2 coords) {
22cb93a386Sopenharmony_ci    return test_equality() ? colorGreen : colorRed;
23cb93a386Sopenharmony_ci}
24