Move creation of AAQuadIndexBuffer to GrResourceProvider

This CL also increases the AAQuadIndexBuffer's size and centralizes the handling of index buffer constants.

Change-Id: I4fb679a1c5e4076cf249b612f798e9bf5a38cd0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/251244
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
diff --git a/src/gpu/ops/GrRegionOp.cpp b/src/gpu/ops/GrRegionOp.cpp
index 6d48a33..5f301a2 100644
--- a/src/gpu/ops/GrRegionOp.cpp
+++ b/src/gpu/ops/GrRegionOp.cpp
@@ -18,9 +18,6 @@
 #include "src/gpu/ops/GrMeshDrawOp.h"
 #include "src/gpu/ops/GrSimpleMeshDrawOpHelper.h"
 
-static const int kVertsPerInstance = 4;
-static const int kIndicesPerInstance = 6;
-
 static sk_sp<GrGeometryProcessor> make_gp(const GrShaderCaps* shaderCaps,
                                           const SkMatrix& viewMatrix,
                                           bool wideColor) {
@@ -113,14 +110,17 @@
         if (!numRects) {
             return;
         }
-        sk_sp<const GrGpuBuffer> indexBuffer = target->resourceProvider()->refQuadIndexBuffer();
+        auto indexBuffer = target->resourceProvider()->refNonAAQuadIndexBuffer();
         if (!indexBuffer) {
             SkDebugf("Could not allocate indices\n");
             return;
         }
         PatternHelper helper(target, GrPrimitiveType::kTriangles, gp->vertexStride(),
-                             std::move(indexBuffer), kVertsPerInstance, kIndicesPerInstance,
-                             numRects);
+                             std::move(indexBuffer),
+                             GrResourceProvider::NumVertsPerNonAAQuad(),
+                             GrResourceProvider::NumIndicesPerNonAAQuad(),
+                             numRects,
+                             GrResourceProvider::MaxNumNonAAQuads());
         GrVertexWriter vertices{helper.vertices()};
         if (!vertices.fPtr) {
             SkDebugf("Could not allocate vertices\n");