SkVector4 as ctype for half4

Use in GrColorMatrixFragmentProcessor.

Also make GrColorMatrixFragmentProcessor::Make() call
SkMatrix44::set4x4().


9bf803677ea133368178e1eb23e120dd823da151

Bug: skia:8962
Change-Id: I2476f4af03b4e43cc843e6eda28673d1c2454acc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/217496
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
diff --git a/src/sksl/SkSLCPPCodeGenerator.cpp b/src/sksl/SkSLCPPCodeGenerator.cpp
index 1ef7c43..350fcaf 100644
--- a/src/sksl/SkSLCPPCodeGenerator.cpp
+++ b/src/sksl/SkSLCPPCodeGenerator.cpp
@@ -207,6 +207,12 @@
                 fFormatArgs.push_back(cppCode + ".fB");
                 fFormatArgs.push_back(cppCode + ".fA");
                 break;
+            case Layout::CType::kSkVector4:
+                fFormatArgs.push_back(cppCode + ".fData[0]");
+                fFormatArgs.push_back(cppCode + ".fData[1]");
+                fFormatArgs.push_back(cppCode + ".fData[2]");
+                fFormatArgs.push_back(cppCode + ".fData[3]");
+                break;
             case Layout::CType::kSkRect: // fall through
             case Layout::CType::kDefault:
                 fFormatArgs.push_back(cppCode + ".left()");