R600/SI: Handle VCC in SIRegisterInfo::getPhysRegSubReg()

This fixes a crash in an ocl conformance test.  The test requries
register spilling and is too big to include.
R600/SI: Use eliminateFrameIndex() to expand SGPR spill pseudos

This will simplify the SGPR spilling and also allow us to use
MachineFrameInfo for calculating offsets, which should be more
reliable than our custom code.

This fixes a crash in some cases where a register would be spilled
in a branch such that the VGPR defined for spilling did not dominate
all the uses when restoring.

This fixes a crash in an ocl conformance test.  The test requries
register spilling and is too big to include.
R600/SI: Remove unused SGPR spilling code
R600/SI: Make sure SCRATCH_WAVE_OFFSET is added as Live-In to the function

This fixes a crash in an ocl conformance test.
R600/SI: Teach moveToVALU how to handle more S_LOAD_* instructions
Fix grammatical error in diagnostic.
Simplify this logic now that -W can't be applied to remarks. No functionality change.
Explicitly pass ownership of the MemoryBuffer to AddNewSourceBuffer using std::unique_ptr