xref: /aosp_15_r20/external/skia/resources/sksl/intrinsics/MatrixCompMultES3.sksl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workeruniform half4 colorGreen, colorRed;
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 coords) {
4*c8dee2aaSAndroid Build Coastguard Worker    const float2x3 f23 = matrixCompMult(float2x3(4), float2x3(5));
5*c8dee2aaSAndroid Build Coastguard Worker    const half3x2 h32 = matrixCompMult(half3x2(5), half3x2(3));
6*c8dee2aaSAndroid Build Coastguard Worker    half2x4 h24 = matrixCompMult(half2x4(9, 9, 9, 9, 9, 9, 9, 9),
7*c8dee2aaSAndroid Build Coastguard Worker                                 half2x4(colorRed, colorGreen));
8*c8dee2aaSAndroid Build Coastguard Worker    half4x2 h42 = matrixCompMult(half4x2(1, 2, 3, 4, 5, 6, 7, 8),
9*c8dee2aaSAndroid Build Coastguard Worker                                 half4x2(colorRed, colorGreen));
10*c8dee2aaSAndroid Build Coastguard Worker    const float3x4 f34 = matrixCompMult(float3x4(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12),
11*c8dee2aaSAndroid Build Coastguard Worker                                        float3x4(12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1));
12*c8dee2aaSAndroid Build Coastguard Worker    float4x3 f43 = matrixCompMult(float4x3(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12),
13*c8dee2aaSAndroid Build Coastguard Worker                                  float4x3(12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1));
14*c8dee2aaSAndroid Build Coastguard Worker    return (f23 == float2x3(20) &&
15*c8dee2aaSAndroid Build Coastguard Worker            h32 == half3x2(15) &&
16*c8dee2aaSAndroid Build Coastguard Worker            h24 == half2x4(9, 0, 0, 9, 0, 9, 0, 9) &&
17*c8dee2aaSAndroid Build Coastguard Worker            h42 == half4x2(1, 0, 0, 4, 0, 6, 0, 8) &&
18*c8dee2aaSAndroid Build Coastguard Worker            f34 == float3x4(12, 22, 30, 36, 40, 42, 42, 40, 36, 30, 22, 12) &&
19*c8dee2aaSAndroid Build Coastguard Worker            f43 == float4x3(12, 22, 30, 36, 40, 42, 42, 40, 36, 30, 22, 12)) ? colorGreen
20*c8dee2aaSAndroid Build Coastguard Worker                                                                             : colorRed;
21*c8dee2aaSAndroid Build Coastguard Worker}
22