Reland "More optimizations for CropToRect, for axis-aligned quads that have not been inverted"
Reland "More optimizations for CropToRect, for axis-aligned quads that have not been inverted"

This reverts commit 0437f0f5d89d494199287825335b06b45c4428d9.

Reason for revert: layout tests have been suppressed

Original change's description:
> Revert "More optimizations for CropToRect, for axis-aligned quads that have not been inverted"
> 
> This reverts commit 88a64b4696d5a01e611e69d594088c0ca5667037.
> 
> Reason for revert: Chrome layout tests
> 
> Original change's description:
> > More optimizations for CropToRect, for axis-aligned quads that have not been inverted
> > 
> > Prior to CropToRect(), GrRTC::crop_filled_rect only operated on SkRects. The
> > quad cropping code generalized the optimization to any axis-aligned quad, but
> > a consequence of this is the code had to be robust to flips and 90 degree
> > rotations. While it can handle more cases, it has lead to a 1-10% performance
> > regression on cropped-rectangle-heavy perf tests in chromium.
> > 
> > This change brings back the simplest cropping solution when the axis-aligned
> > quads have not been flipped/rotated, but the general version still exists for
> > the other class of quads as well.
> > 
> > Bug: chromium:980608
> > Change-Id: I83d71075cacc3d849fd9aac6436ea3244a0ae4b9
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225724
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> > Auto-Submit: Michael Ludwig <cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> 
> TBR=bsalomon@google.com,robertphillips@google.com,cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com
> 
> Change-Id: I428cbefa5985c6160df0460d38b0698b43d289de
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: chromium:980608
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225733
> Reviewed-by: Michael Ludwig <cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com>
> Commit-Queue: Michael Ludwig <cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com>

TBR=bsalomon@google.com,robertphillips@google.com,cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com

Change-Id: Ibef8e521f45111b3307731966e19ef66824567e2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:980608
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/226177
Reviewed-by: Michael Ludwig <cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com>
Commit-Queue: Michael Ludwig <cb1f3dd24de0f0b611b26bc28bec758a551d9b7d@google.com>

HalCanary/skia-hc,HalCanary/skia-hc,google/skia,HalCanary/skia-hc,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,HalCanary/skia-hc,google/skia,google/skia,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,google/skia,HalCanary/skia-hc,google/skia,aosp-mirror/platform_external_skia,google/skia,HalCanary/skia-hc,google/skia,HalCanary/skia-hc,google/skia,HalCanary/skia-hc,google/skia,google/skia,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,aosp-mirror/platform_external_skia,HalCanary/skia-hc,HalCanary/skia-hc