Factor some common code to reduce compile size.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168143 91177308-0d34-0410-b5e6-96231b3b80d8
[DebugInfo] Generate address ranges for compile units even if .debug_aranges is present: it is often the case that .debug_aranges section contains ranges only for a small subset of compile units. Test cases will be added in separate commits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168144 91177308-0d34-0410-b5e6-96231b3b80d8
Constant::IsThreadDependent(): Use dyn_cast<Constant> instead of cast

It turns out that the operands of a Constant are not always themselves
Constant. For example, one of the operands of BlockAddress is
BasicBlock, which is not a Constant.

This should fix the dragonegg-x86_64-linux-gcc-4.6-test build which
broke in r168037.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168147 91177308-0d34-0410-b5e6-96231b3b80d8
Add R_ARM_TARGET1 relocation to MCJIT and ensure that the runtime dyld reads
all symbols during object loading, not just global ones.

This fixes JIT execution of code using llvm.global_ctors with internal
linkage constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168148 91177308-0d34-0410-b5e6-96231b3b80d8
Add MCJIT test case for running global constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168149 91177308-0d34-0410-b5e6-96231b3b80d8
Add myself as the code owner for a bunch of stuff.

Notably, I'm reviewing this stuff already, and this makes it clear I'm
on the hook for it.

I'm relying on Eric Christopher and Michael Spencer to help with Support
when there are platform specific issues, but Chris wants a single point
of contact, and I'm happy with that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168164 91177308-0d34-0410-b5e6-96231b3b80d8
Update credits file regarding SROA work... Also include my other primary
email address for completeness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168165 91177308-0d34-0410-b5e6-96231b3b80d8
Add the Erlang/HiPE calling convention, patch by Yiannis Tsiouris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168166 91177308-0d34-0410-b5e6-96231b3b80d8
llvm/test/CodeGen/X86/hipe-cc*.ll: Add explicit -mcpu, or they don't expect to pass on Atom.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168171 91177308-0d34-0410-b5e6-96231b3b80d8
Work around a layering violation from Target to CodeGen.

Technically this is still a layering violation but it's header-only which makes
it less harmful. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168173 91177308-0d34-0410-b5e6-96231b3b80d8
SimplifyCFG: Don't assume non-null ScalarTargetTransformInfo.

Patch by Pekka Jääskeläinen!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168176 91177308-0d34-0410-b5e6-96231b3b80d8
Finally add myself to the credits.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168178 91177308-0d34-0410-b5e6-96231b3b80d8
Adding new tests to test lli's pseudo-remote feature (-remote-mcjit).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168180 91177308-0d34-0410-b5e6-96231b3b80d8
Fix PR14361: wrong simplification of A+B==B+A.  You may think that the old logic
replaced by this patch is equivalent to the new logic, but you'd be wrong, and
that's exactly where the bug was.  There's a similar bug in instsimplify which
manifests itself as instsimplify failing to simplify this, rather than doing it
wrong, see next commit.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168181 91177308-0d34-0410-b5e6-96231b3b80d8
move irrelevant attribution.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168182 91177308-0d34-0410-b5e6-96231b3b80d8
Factor out the final FADD that's common to multiple code paths in the visitLog* functions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168183 91177308-0d34-0410-b5e6-96231b3b80d8
Using const cast to alleviate a warning.

A PR is being filed to address some code issues here.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168185 91177308-0d34-0410-b5e6-96231b3b80d8
InstructionSimplify should be able to simplify A+B==B+A to 'true'
but wasn't due to the same logic bug that caused PR14361.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168186 91177308-0d34-0410-b5e6-96231b3b80d8

ReleaseNotes.html updates reflecting PPC64 Elf Linux efforts and progress.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168189 91177308-0d34-0410-b5e6-96231b3b80d8
Remove conditions from 'else if' that were guaranteed by preceding 'if'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168191 91177308-0d34-0410-b5e6-96231b3b80d8