Add support for immutable data in SkRP.

SkRP programs will no longer contain stages which fill in constant-
variable slots. Instead, we now have an `store_immutable_value`
instruction which fills in a slot with the desired value at
program-initialization time, but does not emit a Raster Pipeline
stage.

Change-Id: I1a8ead0f995dfa9a4b04e2aae41d1fc4246fff90
Bug: skia:14386
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/711823
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
45 files changed