Factor out commonly-used target code from the GlobalISelEmitter tests into a GlobalISelEmitterCommon.td file. This is still tested by the original GlobalISelEmitter.td test.
This reduces the amount of boilerplate code necessary for writing tests for the GlobalISelEmitter.
I don't have many strong opinions on how this is split up, so if there's a better way to do it, I'm happy to change it. I tried to keep it to things like types which people would expect to have by default.