Merge from Dolphin's x86-64 emitter

Had to re-add x86-32 support with some tweaks but seems to work fine. Can generate slightly smaller code due to using some special EAX-only short-form encodings and some other tricks, and adds a whole bunch more instructions.

While this kind of merge is not strictly allowed due to the GPL2 vs GPL2+ license difference, the authors of this emitter are in agreement that these particular files are dual licensed so it's OK. This is not the first such merge.

It does a few things that will make further merges cleaner like renaming JIT to DYNA_REC locally in the cpp file.

Also includes a bonus commit that is not strictly related (MIPSTables flag improvements) but ended up here due to a mistake. Could pull it out.

This probably needs some more testing before merge but works fine so far.
This reverts ec8f0804912eb12b1dc4be24201eadee409bda97 from #556.

-[Unknown]