Use the fixed slot-range when pushing and storing lvalues.

Rather than breaking up lvalue writes into multiple single-slot
pushes and stores, we now write the entire range in one go.
Previously, we would rely on the peephole optimizer to fuse these
reads and writes, but this didn't work when unsliceable swizzles
were involved.

Change-Id: I2313d5dc226e7d83452f41af3dfa874b2166e9c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/647042
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
14 files changed