JIT: some more integer optimizations

This isn't that heavily tested so it could probably use a JMC pass or two and a sanity check by some other eyes
Well, on the PSP you see sequences like this:

```asm
lui t0, 0x0000
ori t0, t0, 0x0020
lw t1, 0(t0)
lw t2, 0(t0)
```

The relocation, at least with MIPS, is broken into two - HI and LO.  R_MIPS_HI16 updates the lui (load upper immediate, which clears the lower bits to 0) and R_MIPS_LO16 updates the ori (or immediate.)

Since the final address is a dynamic address, it has to relocate even though the address is basically base + 0x20 (as you see above.)  The final, relocated address then might look like this:

```asm
lui t0, 0x0800 ; <-- 0x0800 was added by relocation
ori t0, t0, 0x4020 ; <-- 0x4000 was added by relocation
lw t1, 0(t0)
lw t2, 0(t0)
```

I'm not sure how relocation works on Wii/GC/etc. or on PowerPC in general, though...

-[Unknown]