Revert "Revert "Make DashOp a non-legacy GrMeshDrawOp.""

This reverts commit beae8a9faa2afcdbeeec96e658db7e113a4fa1c9.

Clean revert of revert.

Change-Id: Ibb486bf3411ed347b560fc110a2cfbb0e0caa4f2
Reviewed-on: https://skia-review.googlesource.com/22730
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/ops/GrDashLinePathRenderer.cpp b/src/gpu/ops/GrDashLinePathRenderer.cpp
index cafe247..a364d92 100644
--- a/src/gpu/ops/GrDashLinePathRenderer.cpp
+++ b/src/gpu/ops/GrDashLinePathRenderer.cpp
@@ -46,16 +46,12 @@
     }
     SkPoint pts[2];
     SkAssertResult(args.fShape->asLine(pts, nullptr));
-    std::unique_ptr<GrLegacyMeshDrawOp> op = GrDashOp::MakeDashLineOp(
-            args.fPaint.getColor(), *args.fViewMatrix, pts, aaMode, args.fShape->style());
+    std::unique_ptr<GrDrawOp> op =
+            GrDashOp::MakeDashLineOp(std::move(args.fPaint), *args.fViewMatrix, pts, aaMode,
+                                     args.fShape->style(), args.fUserStencilSettings);
     if (!op) {
         return false;
     }
-
-    GrPipelineBuilder pipelineBuilder(std::move(args.fPaint), args.fAAType);
-    pipelineBuilder.setUserStencil(args.fUserStencilSettings);
-
-    args.fRenderTargetContext->addLegacyMeshDrawOp(
-            std::move(pipelineBuilder), *args.fClip, std::move(op));
+    args.fRenderTargetContext->addDrawOp(*args.fClip, std::move(op));
     return true;
 }