Rework stable function calls.

Trying to use magic offset values ended up causing issues in
other parts of the code, which rightly assume that positions are
bounded within the program text.

Now we have a stable pointer, which always tracks `this` except
in cases of `clone` where it preserves the cloned call's value.
This is simpler and more directly maps to the problem I am
trying to solve.

Bug: b/328051548
Change-Id: I5606959dafd8e0d1dfe81e935a0fa2cc53f611f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/883096
Commit-Queue: Nathan Sanchez <nathanasanchez@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Nathan Sanchez <nathanasanchez@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
7 files changed