When converting runtime SkSL to FP SkSL, use default settings

Anything related to caps should be resolved in the second compile.
However, when calling toPipelineStage, the settings stored in the
base Program are used, so we need to inject them at that point.

This also removes the cache of specialized programs. We only hit
that code path when we're about to do a full compile, including
generating SkSL, turning that into GLSL, etc. The specialization
is implicitly cached as part of the entire program for common
cases, so the second level isn't that useful.

Change-Id: I53bc54b0611951e1d97278d59881308c6b152090
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/259162
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
4 files changed