Revert "Wrap page index packing in helper methods."
This reverts commit cb93a20d9a961219bad674d6c168bfde03a16246.
Reason for revert: Still seeing some corruption issues with Chrome text that may be related to this.
Original change's description:
> Wrap page index packing in helper methods.
>
> Also simplifies the shaders if we know there's only one atlas texture.
>
> Change-Id: I81063d423fd56cf91caee83ba9eae9d988aa249b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266566
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
TBR=jvanverth@google.com,herb@google.com,brianosman@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I031f27c07929b1f66581ed8e94e1056d9107bf75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266633
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
diff --git a/src/gpu/text/GrTextBlob.cpp b/src/gpu/text/GrTextBlob.cpp
index df9862d..c5f8797 100644
--- a/src/gpu/text/GrTextBlob.cpp
+++ b/src/gpu/text/GrTextBlob.cpp
@@ -253,8 +253,17 @@
// We pack the 2bit page index in the low bit of the u and v texture coords
uint32_t pageIndex = glyph->pageIndex();
- std::tie(u0, v0) = GrDrawOpAtlas::PackIndexInTexCoords(u0, v0, pageIndex);
- std::tie(u1, v1) = GrDrawOpAtlas::PackIndexInTexCoords(u1, v1, pageIndex);
+ SkASSERT(pageIndex < 4);
+ uint16_t uBit = (pageIndex >> 1u) & 0x1u;
+ uint16_t vBit = pageIndex & 0x1u;
+ u0 <<= 1u;
+ u0 |= uBit;
+ v0 <<= 1u;
+ v0 |= vBit;
+ u1 <<= 1u;
+ u1 |= uBit;
+ v1 <<= 1u;
+ v1 |= vBit;
textureCoords[0] = u0;
textureCoords[1] = v0;