move subrun creation to GrTextBlob::Make

Change-Id: Iee920e3751e067ff3b86ed6713b279fc2437fd14
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/381477
Reviewed-by: Brian Osman <brianosman@google.com>
diff --git a/bench/GlyphQuadFillBench.cpp b/bench/GlyphQuadFillBench.cpp
index 3a82bfb..2ef7b73 100644
--- a/bench/GlyphQuadFillBench.cpp
+++ b/bench/GlyphQuadFillBench.cpp
@@ -42,22 +42,17 @@
         builder.drawTextUTF8(paint, font, gText, len, {100, 100});
         auto glyphRunList = builder.useGlyphRunList();
         SkASSERT(!glyphRunList.empty());
-        fBlob = GrTextBlob::Make(glyphRunList, view);
         SkSurfaceProps props;
         if (canvas) { canvas->getProps(&props); }
+
         auto colorSpace = SkColorSpace::MakeSRGB();
         SkGlyphRunListPainter painter{props, kUnknown_SkColorType,
                                       colorSpace.get(), SkStrikeCache::GlobalStrikeCache()};
-
-        GrSDFTControl control{false, props.isUseDeviceIndependentFonts(), 256, 256};
-        const SkPoint drawOrigin = glyphRunList.origin();
-        const SkPaint& drawPaint = glyphRunList.paint();
-
         SkMatrix drawMatrix = view;
+        const SkPoint drawOrigin = glyphRunList.origin();
         drawMatrix.preTranslate(drawOrigin.x(), drawOrigin.y());
-        for (auto& glyphRun : glyphRunList) {
-            painter.processGlyphRun(glyphRun, drawMatrix, drawPaint, control, fBlob.get());
-        }
+        GrSDFTControl control{false, props.isUseDeviceIndependentFonts(), 256, 256};
+        fBlob = GrTextBlob::Make(glyphRunList, drawMatrix, control, &painter);
 
         SkASSERT(!fBlob->subRunList().isEmpty());
         GrAtlasSubRun* subRun = fBlob->subRunList().front().testingOnly_atlasSubRun();