Clear the symbol map between each test.

This way we could, for example, test function replacement properly.

Actually slows down tests because it spends more time correctly
determining the function boundaries.
Spend a bit less time in Read_Instruction on load.
Speed up MIPSGetInstruction() by 35%.

It's not that hot, but gets called a lot when loading modules / running
tests.  Well, and also interpreter.

Some of the previous checks were just not necessary (we never have Rese in
the tables, for example, and let's just not.)
Avoid overwriting io thread results.

Just block until it's done so that things are synchronous.
Synchronize IO operations before any seek.

To prevent it from seeking before the operation.
Allow two threads to read from a file at once.

It just happens in order, rather than failing with an error (async busy.)
Async operations still fail when used in this way, however.
Correct error code for reads into a bad pointer.

Per tests this is generally -1.
Don't clear js.afterOp in WriteExit*().

It needs to be handled in each exit, not just the first one.

Fixes #5587.
Stop reporting null thread args with size.

Must've been a mistake in the test, can no longer reproduce the crash.
Allow fast bone mtx loads w/o software skinning.
Always flush bone matrices when morph is enabled.

Fixes graphical glitches in Shadow of Destiny and LittleBigPlanet with
software skinning enabled.  Maybe the other games in #5304.
Flush if morphing, even if only weight changed.

Fixes more graphical glitches that happen when software skinning is enabled.
vertexjit: Implement Morph pos/nrm variants on x86.
Cut down on locking in DEBUG_LOG.

Reduces GenericLog() from 13.8% to 1.5% in Where Is My Heart?, will
probably help other games to a lesser extent.
Merge pull request #5585 from unknownbrackets/perf

Improve performance when running tests / fix function replacement
Merge pull request #5595 from unknownbrackets/vertexjit

vertexjit: Implement Morph pos/nrm variants on x86
Merge pull request #5592 from unknownbrackets/debugger

Don't clear js.afterOp in WriteExit*()
Merge pull request #5591 from unknownbrackets/io-thread

Handle concurrent sync io operations better
Merge pull request #5594 from unknownbrackets/gpu-minor

Fix some software skinning glitches
Merge pull request #5590 from unknownbrackets/xbox

Merge more parts of #4716