Avoid calling GetPointer() multiple times in a row
armjit: Fix BKPT on simple exits.

If we get lucky and write a single-op destination address, we only emit
one op.  So we have to check the next op before overwriting.
Merge pull request #7216 from chinhodado/patch-1

Avoid calling GetPointer() multiple times in a row
Fix FakeJit, start preparing a little for ARM64
Fix to VFPU register allocation. Fixes #7174

GetFreeXRegs(_,_,true) invalidates registers it can see on spill,
but it can't see all the registers in the array due to how we call it
so we have to invalidate the rest ourselves.  Not doing so can get it
to use the same register twice.
Merge pull request #7217 from hilesaz/master

Fix to VFPU register allocation. Fixes #7174
Typos
Trivial IR implementation (extract instructions into a block, then compile out of that).

Has issues with replacements.
JIT IR: Skip already-compiled delay slots more elegantly than "-1". Solve the ReplaceJalTo problem.
Jit IR: Fix mac build, update ARM code too (untested)
Debug build buildfix on mac (not very pretty)
JIT IR: Some more work on IR processing
Jit IR: Make it possible to show IR blocks in the jit viewer
Get rid of the "compiling" flag.
Follow plain jumps in the IR extractor

Disassembly gets confused though, that needs fixing (together with proxy blocks)
Aggressively inline across jal / jr ra. Will need limiting heuristics to prevent code bloat...
Undelete an accidentally deleted optimization (immbranch)
Add way to print some block bloat stats. Disable block joining for now.
Play around with shuffling around load/store instructions.

Should let us get much better use out of LDMIA/STMIA on ARM.
Correct instruction counting, minor prep