SkMatrix44 clarifications and clean-ups

Fixed row/col major bug and added comments to the
header.

Made SkMatrix::I() thread safe using constexpr.

Added a test set3x3RowMajorf().

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2098583002

Review-Url: https://codereview.chromium.org/2098583002
diff --git a/tests/ColorSpaceTest.cpp b/tests/ColorSpaceTest.cpp
index 853bdce..442ed3d 100644
--- a/tests/ColorSpaceTest.cpp
+++ b/tests/ColorSpaceTest.cpp
@@ -101,7 +101,7 @@
 
     // Create an sRGB color space by value
     SkMatrix44 srgbToxyzD50(SkMatrix44::kUninitialized_Constructor);
-    srgbToxyzD50.set3x3ColMajorf(g_sRGB_XYZ);
+    srgbToxyzD50.set3x3RowMajorf(g_sRGB_XYZ);
     sk_sp<SkColorSpace> rgbColorSpace = SkColorSpace::NewRGB(SkColorSpace::kSRGB_GammaNamed,
                                                              srgbToxyzD50);
     REPORTER_ASSERT(r, rgbColorSpace == namedColorSpace);
diff --git a/tests/Matrix44Test.cpp b/tests/Matrix44Test.cpp
index f4b6783..75086b6 100644
--- a/tests/Matrix44Test.cpp
+++ b/tests/Matrix44Test.cpp
@@ -484,6 +484,23 @@
     }
 }
 
+static void test_set_3x3(skiatest::Reporter* r) {
+    static float vals[9] = { 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, };
+
+    SkMatrix44 mat(SkMatrix44::kUninitialized_Constructor);
+    mat.set3x3RowMajorf(vals);
+
+    REPORTER_ASSERT(r, 1.0f == mat.getFloat(0, 0));
+    REPORTER_ASSERT(r, 2.0f == mat.getFloat(0, 1));
+    REPORTER_ASSERT(r, 3.0f == mat.getFloat(0, 2));
+    REPORTER_ASSERT(r, 4.0f == mat.getFloat(1, 0));
+    REPORTER_ASSERT(r, 5.0f == mat.getFloat(1, 1));
+    REPORTER_ASSERT(r, 6.0f == mat.getFloat(1, 2));
+    REPORTER_ASSERT(r, 7.0f == mat.getFloat(2, 0));
+    REPORTER_ASSERT(r, 8.0f == mat.getFloat(2, 1));
+    REPORTER_ASSERT(r, 9.0f == mat.getFloat(2, 2));
+}
+
 static void test_set_row_col_major(skiatest::Reporter* reporter) {
     SkMatrix44 a(SkMatrix44::kUninitialized_Constructor);
     SkMatrix44 b(SkMatrix44::kUninitialized_Constructor);
@@ -916,6 +933,7 @@
     test_transpose(reporter);
     test_get_set_double(reporter);
     test_set_row_col_major(reporter);
+    test_set_3x3(reporter);
     test_translate(reporter);
     test_scale(reporter);
     test_map2(reporter);