R600/SI: Rework MUBUF store instructions

The lowering of stores is now mostly handled in the tablegen files.  No
more BUFFER_STORE nodes I generated during legalization.
R600/SI: Add support for global loads
R600/SI: Fixup CopyToReg register class in PostprocessISelDAG()

The CopyToReg nodes will sometimes try to copy a value from a VGPR to an
SGPR.  This kind of copy is not possible, so we need to detect
VGPR->SGPR copies and do something else.  The current strategy is to
replace these copies with VGPR->VGPR copies and hope that all the users
of CopyToReg can accept VGPRs as arguments.
R600/SI: Handle nodes with glue results correctly SITargetLowering::foldOperands()
R600/SI: Handle REG_SEQUENCE in fitsRegClass()
R600/SI: Adjust some instructions' out register class after ISel

This is necessary to avoid generating VGPR to SGPR copies in some
cases.
R600/SI: Custom lower i64 sign_extend
R600/SI: Add a calling convention for compute shaders
R600/SI: Add support for work item and work group intrinsics