[PowerPC] Add JMP_SLOT relocation definitions

This will be required by upcoming patches for LLDB support.

Patch by Justin Hibbits!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214284 91177308-0d34-0410-b5e6-96231b3b80d8
[MCJIT] Fix the ARM BR24 relocation in RuntimeDyldMachO.

We now (1) correctly decode the branch immediate, (2) modify the immediate to
corretly treat it as PC-rel, and (3) properly populate the stub entry.
Previously we had been doing each of these wrong.

<rdar://problem/17750739>



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214285 91177308-0d34-0410-b5e6-96231b3b80d8
Allow setcc (sext setcc) [0|1] [eq|ne] -> setcc

The cases where the inner setcc was directly compared
was handled, but not if the setcc type needs to be promoted
when comparing.

Remove redundant R600 handling of a subset of cases the existing
function handles.
Minor cleanup
XXX - Disable SGPR live range pass
Skeleton machine pass for using read2 / write2
R600/SI: Implement shouldScheduleAdjacent
R600/SI: Mark some stuff as readonly
Make getNamedOperandIdx readonly
Add note to documentation about machine node chains.

I've been assuming chain operands were always the first operand,
since the documentation says this. I was confused about why they
were missing after instruction selection. Apparently the convention
changes to using the last operand for MachineSDNodes and I've never
noticed before.
R600/SI: Implement areLoadsFromSameBasePtr

This currently has a noticable effect on the kernel argument loads.
LDS and global loads are more problematic, I think because of how copies
are currently inserted to ensure that the address is a VGPR.
Update tests for areLoadsFromSameBasePtr
R600: Increase nearby load scheduling threshold.

This partially fixes weird looking load scheduling
in memcpy test. The load clustering doesn't seem
particularly smart, but this method seems to be partially
deprecated so it might not be worth trying to fix.
XXX - Fix typo and incomplete comment
R600: Add subtarget property for LDS bank size.

Need to find out which GPUs are 16 and which are 32.
XXX - "Implement" shouldClusterLoads
XXX - debug
XXX - Enable misched
XXX - Slightly less dumb implementation of shouldClusterLoads
XXX - Play with shouldClusterLoads