Implement sweep gradient layout

Add an FP that implements the sweep gradient effect and updates
SkSweepGradient to use the new system if possible.

Bug: skia:
Change-Id: I3f65da01afafae54c45848a6a78fd758f65eb4a6
Reviewed-on: https://skia-review.googlesource.com/148806
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/gradients/GrGradientShader.cpp b/src/gpu/gradients/GrGradientShader.cpp
index c277997..50a4c8a 100644
--- a/src/gpu/gradients/GrGradientShader.cpp
+++ b/src/gpu/gradients/GrGradientShader.cpp
@@ -12,6 +12,7 @@
 
 #include "GrLinearGradientLayout.h"
 #include "GrRadialGradientLayout.h"
+#include "GrSweepGradientLayout.h"
 
 #include "GrSingleIntervalGradientColorizer.h"
 
@@ -137,4 +138,9 @@
     return make_gradient(shader,args, GrRadialGradientLayout::Make(shader, args));
 }
 
+std::unique_ptr<GrFragmentProcessor> MakeSweep(const SkSweepGradient& shader,
+                                               const GrFPArgs& args) {
+    return make_gradient(shader,args, GrSweepGradientLayout::Make(shader, args));
+}
+
 }