Refactor and fix ExecutionContext::invokeFunc{,Few}()
Summary:
The only functional change in this diff is to stop saving the
possibly-dirty, pre-VMRegAnchor value of vmsp() in the pushed VM state,
and instead save the SP after running fixup work.
If tl_regState was clean coming in, this has the same effect. If
tl_regState was dirty coming in, this saves a different value that we
never use in this function, and which we will never use again outside
this function since we'll have to run fixups again.
Also refactor a bunch of the copypasta.
Reviewed By: markw65
Differential Revision:
D2774953
fb-gh-sync-id:
276d2a3a0662e01973e1489e5f40ecbfd7b8ded9