ccpr: Use primitive restart feature on ARM

Bug: skia:
Change-Id: Ia7ab55f8b6ecdd674762f5197d35e8db58f07c01
Reviewed-on: https://skia-review.googlesource.com/98180
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp b/src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp
index d78f28a..abe8880 100644
--- a/src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp
+++ b/src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp
@@ -528,18 +528,17 @@
             continue;  // Atlas failed to allocate.
         }
 
-        GrCCPathProcessor coverProc(flushState->resourceProvider(),
-                                    sk_ref_sp(batch.fAtlas->textureProxy()), this->getFillType(),
-                                    *flushState->gpu()->caps()->shaderCaps());
+        GrCCPathProcessor pathProc(flushState->resourceProvider(),
+                                   sk_ref_sp(batch.fAtlas->textureProxy()), this->getFillType());
 
-        GrMesh mesh(GrPrimitiveType::kTriangles);
+        GrMesh mesh(GrCCPathProcessor::MeshPrimitiveType(flushState->caps()));
         mesh.setIndexedInstanced(fCCPR->fPerFlushIndexBuffer.get(),
-                                 GrCCPathProcessor::kPerInstanceIndexCount,
+                                 GrCCPathProcessor::NumIndicesPerInstance(flushState->caps()),
                                  fCCPR->fPerFlushInstanceBuffer.get(),
                                  batch.fEndInstanceIdx - baseInstance, baseInstance);
         mesh.setVertexData(fCCPR->fPerFlushVertexBuffer.get());
 
-        flushState->rtCommandBuffer()->draw(pipeline, coverProc, &mesh, nullptr, 1, this->bounds());
+        flushState->rtCommandBuffer()->draw(pipeline, pathProc, &mesh, nullptr, 1, this->bounds());
     }
 
     SkASSERT(baseInstance == fBaseInstance + fInstanceCount - fNumSkippedInstances);