Merging r155230:
------------------------------------------------------------------------
r155230 | void | 2012-04-20 13:31:44 -0700 (Fri, 20 Apr 2012) | 1 line

Modify the sh-bang to run out-of-the-box for FreeBSDes.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155231 91177308-0d34-0410-b5e6-96231b3b80d8
Inline a variable that's used only in an assert.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155306 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155307:
------------------------------------------------------------------------
r155307 | void | 2012-04-22 00:23:04 -0700 (Sun, 22 Apr 2012) | 1 line

Remove some potential warnings about variables used uninitialized.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155308 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155284:
------------------------------------------------------------------------
r155284 | chapuni | 2012-04-21 07:50:56 -0700 (Sat, 21 Apr 2012) | 1 line

CMake: Prune redundant LLVM_COMPILER_JOBS from llvm/CMakeLists.txt. HandleLLVMOptions.cmake has it.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155334 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155285:
------------------------------------------------------------------------
r155285 | chapuni | 2012-04-21 07:51:02 -0700 (Sat, 21 Apr 2012) | 1 line

CMake: Enable LLVM_COMPILER_JOBS on all MS IDEs. We don't support older environments than VS9.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155335 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155342:
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155374 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155288:
------------------------------------------------------------------------
r155288 | d0k | 2012-04-21 09:05:27 -0700 (Sat, 21 Apr 2012) | 6 lines

Remove unused PointerLikeTypeTraits for IndexListEntry.

It set NumLowBitAvailable = 3 which may not be true on all platforms.  We only
ever use 2 bits (the default) so this assumption can be safely removed

Should fix PR12612.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155375 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155286:
------------------------------------------------------------------------
r155286 | chapuni | 2012-04-21 08:31:36 -0700 (Sat, 21 Apr 2012) | 1 line

HexagonISelLowering.cpp: Reorder #includes.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155377 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155287:
------------------------------------------------------------------------
r155287 | chapuni | 2012-04-21 08:31:45 -0700 (Sat, 21 Apr 2012) | 3 lines

llvm/lib/Target: [PR12611] Add "llvm/Support/raw_ostream.h" for Debug build on MSVC.

Thanks to Andy Gibbs, to report the issue.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155378 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155466:
------------------------------------------------------------------------
r155466 | chandlerc | 2012-04-24 11:42:47 -0700 (Tue, 24 Apr 2012) | 17 lines

Fix a crash on valid (if UB) bitcode that is produced for some global
constants in C++11 mode. I have no idea why it required such particular
circumstances to get here, the code seems clearly to rely upon unchecked
assumptions.

Specifically, when we decide to form an index into a struct type, we may
have gone through (at least one) zero-length array indexing round, which
would have left the offset un-adjusted, and thus not necessarily valid
for use when indexing the struct type.

This is just an canonicalization step, so the correct thing is to refuse
to canonicalize nonsensical GEPs of this form. Implemented, and test
case added.

Fixes PR12642. Pair debugged and coded with Richard Smith. =] I credit
him with most of the debugging, and preventing me from writing the wrong
code.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155506 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155536:
------------------------------------------------------------------------
r155536 | lattner | 2012-04-24 23:37:20 -0700 (Tue, 24 Apr 2012) | 3 lines

openbsd doesn't support soname, patch by Brad Smith!


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155574 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155668:
------------------------------------------------------------------------
r155668 | atrick | 2012-04-26 14:48:25 -0700 (Thu, 26 Apr 2012) | 8 lines

Fix the SD scheduler to avoid gluing the same node twice.

DAGCombine strangeness may result in multiple loads from the same
offset. They both may try to glue themselves to another load. We could
insist that the redundant loads glue themselves to each other, but the
beter fix is to bail out from bad gluing at the time we detect it.

Fixes rdar://11314175: BuildSchedUnits assert.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155672 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155818:
------------------------------------------------------------------------
r155818 | baldrick | 2012-04-30 04:56:58 -0700 (Mon, 30 Apr 2012) | 3 lines

Just mark the sign bit as known zero, rather than any other irrelevant bits
known zero in the LHS.  Fixes PR12541.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155827 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155809:
------------------------------------------------------------------------
r155809 | rafael | 2012-04-29 20:53:06 -0700 (Sun, 29 Apr 2012) | 2 lines

Make sure HoistInsertPosition finds a position that is dominated by all
inputs.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155828 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155166:
------------------------------------------------------------------------
r155166 | void | 2012-04-19 16:31:07 -0700 (Thu, 19 Apr 2012) | 1 line

Put this expensive check below the less expensive ones.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155830 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155813:
------------------------------------------------------------------------
r155813 | void | 2012-04-30 02:23:48 -0700 (Mon, 30 Apr 2012) | 1 line

Remove hack from r154987. The problem persists even with it, so it's not even a good hack.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155831 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155817:
------------------------------------------------------------------------
r155817 | void | 2012-04-30 03:44:54 -0700 (Mon, 30 Apr 2012) | 9 lines

Second attempt at PR12573:

Allow the "SplitCriticalEdge" function to split the edge to a landing pad. If
the pass is *sure* that it thinks it knows what it's doing, then it may go ahead
and specify that the landing pad can have its critical edge split. The loop
unswitch pass is one of these passes. It will split the critical edges of all
edges coming from a loop to a landing pad not within the loop. Doing so will
retain important loop analysis information, such as loop simplify.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155833 91177308-0d34-0410-b5e6-96231b3b80d8
Rename to match coding conventions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155834 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155844:
------------------------------------------------------------------------
r155844 | spop | 2012-04-30 13:06:58 -0700 (Mon, 30 Apr 2012) | 8 lines

fix typo

Thanks to "Gabor Greif" <ggreif@gmail.com> for reporting this problem.

The configure flag should be --with-default-sysroot as documented, and
not --with-sysroot.  The reason we don't want to define --with-sysroot
is that GCC has a configure flag by that name and it has a different
semantics.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155852 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r155895:
------------------------------------------------------------------------
r155895 | eliben | 2012-04-30 23:15:40 -0700 (Mon, 30 Apr 2012) | 4 lines

Removed examples of stack frame inspection which no longer work for old JIT.
Added an example of MCJIT-based debugging.


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_31@155901 91177308-0d34-0410-b5e6-96231b3b80d8