Commit Graph

2 Commits

Author SHA1 Message Date
Török Edvin
ae1be98809 Update to LLVM upstream r92222.
Squashed commit of the following:

commit 4d06dfc51403e0e54eb688a3a9fb1839ea2136a6
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Dec 28 12:27:56 2009 +0000

    Add missing include (for inline PATypeHolder::get).

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

commit e05a9ea766a0b81c710a044887cfc22d6f36a664
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 09:32:10 2009 +0000

    avoid a completely unneeded linear walk.

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

commit 104369f82cb166e9c446c3e844136811466916b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 09:24:53 2009 +0000

    Eliminate two bits of ugliness in MDNode::replaceElement:
    eliminate the temporary smallvector, and only do FindNodeOrInsertPos
    twice if the first one succeeds and we delete a node.

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

commit a7bbe9111b1caea1c424c73bbba6338eedd96d65
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 09:12:35 2009 +0000

    rearrange some methods, no functionality change.

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

commit cc1d027f0654706031bf0e6d7c57ede4dfc41373
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 09:10:16 2009 +0000

    avoid temporary CallbackVH's.

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

commit 3716bc64a3ee906a6e40e6847ac915daa01e4919
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 09:07:21 2009 +0000

    Rewrite the function-local validation logic for MDNodes (most of r91708).
    Among other benefits, this doesn't leak the SmallPtrSet, has the verifier
    code in the verifier pass, actually does the verification at the end,
    and is considerably simpler.

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

commit 894c992754b4095a0546181a0701674a3a696477
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:48:12 2009 +0000

    rename MDNode instance variables to something meaningful.

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

commit a89d238baa1ac500515df35491d0c7480ec87bf0
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:30:43 2009 +0000

    snip one more #include from Metadata.h

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

commit 4ba716d8d60ff7b6e0e07bce48bcb68bcffa1388
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:26:43 2009 +0000

    prune #includes more.

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

commit 62a41720e49584820202799556c757518e23d3cf
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:24:16 2009 +0000

    prune some #includes

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

commit 749a4129c976d4895f231f0fbfddf9c54c17ac1b
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:20:46 2009 +0000

    Metadata.h doesn't need to include ValueHandle.h anymore.

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

commit 6c8fe40711f3cf363831d95a63322a5963233f0a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:14:54 2009 +0000

    change the strange MetadataContext::getMDs function to expose less
    irrelevant internal implementation details to clients.

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

commit febd655fa44c568fa3a80af56aed9955ff797157
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 08:07:14 2009 +0000

    change NamedMDNode to use a pimpl for its operand list instead
    of making it a declared part of the value.

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

commit 3f465e4a2ed122934f187b6e0761c9268a200cb0
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 07:57:01 2009 +0000

    eliminate the elem_* iterator stuff from NamedMDNode.

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

commit da60d2e518af314a29eb38402e70a77b05fc5d32
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 07:41:54 2009 +0000

    move ElementVH out of the MDNode class into the MDNode.cpp file.  Among
    other things, this avoids vtable and rtti data for it being splatted in
    every translation unit that uses it.

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

commit 2df342071750e4ecc7dfec0fc108efd69967401d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 07:41:18 2009 +0000

    move these out of their own timer groups into the 'uncategorized' groups.

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

commit 4f6dce81500015dbe2f7763bc88a74df9dc177f7
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Mon Dec 28 04:53:24 2009 +0000

    Fixed llc crash for zext (i1 -> i8) loads.

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

commit 2f6348092dd3411c4bf41fb146945b6f5f387562
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Mon Dec 28 02:40:33 2009 +0000

    Allow targets to specify the return type of libcalls that are generated for floating point comparisons, rather than hard-coding them as i32.

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

commit 4ab9372471bf169547c6c11eb1432d2c3fa06615
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 02:07:00 2009 +0000

    Mark variable used by 'assert' as 'unused'.

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

commit 4e0224c4aa4b517723e2e950c00850422a7f083a
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 02:05:36 2009 +0000

    Remove dead variable.

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

commit 39dd182871d4a9068a18d8d84e63983fc3a9d256
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 02:04:53 2009 +0000

    Remove dead variable.

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

commit f7e76f7cae0da2b59d8e6173723007f69a769f70
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 02:01:06 2009 +0000

    Remove dead variable.

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

commit 83e5f56eb04727ac461cfa6354882bd9649f6f7f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 02:00:30 2009 +0000

    Remove dead variable.

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

commit 0077d08de74578e474f611872454275c125a0656
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:57:39 2009 +0000

    Remove dead variable.

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

commit e9c887a2902d05fa600b59ccda2b22f2af1ed76d
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:54:15 2009 +0000

    Remove dead store.

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

commit a18ebc30a2abf0fe66b55af79518ed8c4b06f7c6
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:53:00 2009 +0000

    Remove dead store and simplify code.

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

commit 70ef837cf7e36be18d866d67bf374ed62a58f6fb
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:51:30 2009 +0000

    Remove dead store.

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

commit a6d452859e652c22b193c00abadb48aefc427ef4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:48:56 2009 +0000

    Remove dead variable.

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

commit 96d90c5c9b8a19e5e4f902e28430353fda2a2dd0
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:47:48 2009 +0000

    Remove dead variable.

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

commit 4a223745a9f77c21863ca8b2725836092b38977a
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:44:39 2009 +0000

    Remove dead store.

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

commit c3e9be4e2bd703b642872ad835a93ebf79f8f465
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:42:12 2009 +0000

    Remove dead variable.

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

commit 94fff552bffee0a421218b26f228ebd0d1f7a7d0
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:41:12 2009 +0000

    Remove dead variable.

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

commit da097dc64ce517757c11b1345dab55dfa19bb14e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:36:02 2009 +0000

    Remove dead variable.

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

commit b537cbf815f7aa6a62504cb9b69ec0402a1313f5
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:34:57 2009 +0000

    Mark some debug variables as 'unused' to quiet compiler and analyzer.

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

commit dc6c4ad2c7f1b207357abbe2f954c4df14b6f455
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:31:11 2009 +0000

    Remove dead store. The initial value was never used, but always overridden.

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

commit b1e55ab7b75ee6d8bc8418f06b36fa77234276a8
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:20:29 2009 +0000

    Add an "ATTRIBUTE_UNUSED" macro (and use it). It's for variables which are
    mainly used in debugging and/or assert situations. It should make the compiler
    and the static analyzer stop nagging us about them.

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

commit 89b41234a06c9062f112e6f9f9b2a0311c8166ff
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:02:21 2009 +0000

    Remove dead variable.

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

commit 26af2111a96acb02a4f7dfa6815381a1979336eb
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:01:14 2009 +0000

    Remove dead variable.

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

commit 8eb19339daa81669e709d65a479c1e837874a5b1
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 28 01:00:12 2009 +0000

    Remove dead variable.

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

commit c53dde98400a169d8a2aee60fd9e9749a0f1de3f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 26 22:58:39 2009 +0000

    lit: Add setuptools support.

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

commit c989d308a138180b0188cbe3d3c89497167a1a0b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 26 22:58:23 2009 +0000

    lit: Sink code into a 'lit' package.

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

commit 824050a388d1beb1428686ea886b1ea77d4dee94
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Sat Dec 26 20:08:30 2009 +0000

    PR5886: Make sure IMUL32m is marked as setting EFLAGS, so scheduling doesn't
    do illegal stuff around it.  No testcase because the issue is very fragile.

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

commit 7c5c0b12976c75ccdfd95a241525281e6061908c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:50:18 2009 +0000

    Avoid assigning to Changed when it won't be used after the return.

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

commit 0f0db31d8ee1ee48e20755a0fa6d4da5100aade2
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:45:50 2009 +0000

    Remove dead store.

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

commit 90cd35e334e96b73cb0e68b126377e8f65d519fc
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:44:36 2009 +0000

    Remove dead store from copy-pasto.

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

commit d5cc74ccc7b1398736393e1634fa1e37a22ea2c3
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:39:58 2009 +0000

    Remove dead store.

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

commit ea340ea46c96dec8ba5dcb655474a3e811e956ca
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:37:27 2009 +0000

    Remove dead store.

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

commit 220675b0f99b21cf7cb8a92f77d581708787ac3e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 25 13:35:40 2009 +0000

    Use the 'MadeChange' variable instead of returning 'false' all of the time.

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

commit a1c4df64381a1795a44ac6f6342a40b024fa07e1
Author: John McCall <rjmccall@apple.com>
Date:   Thu Dec 24 23:18:09 2009 +0000

    Implement support for converting to string at "natural precision", and fix some
    major bugs in long-precision conversion.

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

commit 9825c55a5a3a557c54c1af48bfb5954ddfbafc6c
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Dec 24 21:15:37 2009 +0000

    Move the two definitions of operator<< into namespace llvm, so they
    will be found by argument-dependent lookup. As with the previous
    commit, GCC is allowing ill-formed code.

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

commit 1e69877669f44c5efd3b1f989aa32cdb362f3d27
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Dec 24 21:11:45 2009 +0000

    Define the new operator<< for sets into namespace std, so that
    argument-dependent lookup can find it. This is another case where an
    LLVM bug (not making operator<< visible) was masked by a GCC bug
    (looking in the global namespace when it shouldn't).

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

commit 3e573a9f0b82197ece967593d38d55799ada0572
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Dec 24 17:49:28 2009 +0000

    Don't emit trailing semicolon.

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

commit 08cdb8a64f60f7737892f16ccab52acd1057d8e1
Author: John McCall <rjmccall@apple.com>
Date:   Thu Dec 24 12:16:56 2009 +0000

    Substantially optimize APFloat::toString() by doing a single large divide to
    cut the significand down to the desired precision *before* entering the
    core divmod loop.  Makes the overall algorithm logarithmic in the exponent.

    There's still a lot of room for improvement here, but this gets the
    performance back down to acceptable-for-diagnostics levels, even for
    long doubles.
    negligible, even on long doubles.

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

commit f7d9cb2b8c27f4785f1d5a50a13fbb74b9a6e028
Author: John McCall <rjmccall@apple.com>
Date:   Thu Dec 24 08:56:26 2009 +0000

    Add accessors for the largest-magnitude, smallest-magnitude, and
    smallest-normalized-magnitude values in a given FP semantics.
    Provide an APFloat-to-string conversion which I am quite ready to admit could
    be much more efficient.

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

commit c77cc1794d1e2f70ad0b1b8ccd5e1661cd1c55c2
Author: John McCall <rjmccall@apple.com>
Date:   Thu Dec 24 08:52:06 2009 +0000

    Set Remainder before Quotient in case Quotient and LHS alias.  The new
    order should be immune to such problems.

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

commit f35785f5df44d1908b82d87c9edd3d2b93f84022
Author: Dale Johannesen <dalej@apple.com>
Date:   Thu Dec 24 01:10:43 2009 +0000

    Testcase for llvm-gcc checkin 92108.

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

commit 1d0ad3b99ec52705b0256dfd0421344511028b32
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 24 01:07:17 2009 +0000

    handle equality memcmp of 8 bytes on x86-64 with two unaligned loads and a
    compare.  On other targets we end up with a call to memcmp because we don't
    want 16 individual byte loads.  We should be able to use movups as well, but
    we're failing to select the generated icmp.

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

commit 6d922b408462129adb924b960e81ac65077fab5a
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:39:02 2009 +0000

    Change errs() to dbgs().

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

commit 8a34688bac4bb0ec549e82da03d912282d364492
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 24 00:37:38 2009 +0000

    move an optimization for memcmp out of simplifylibcalls and into
    SDISel.  This optimization was causing simplifylibcalls to
    introduce type-unsafe nastiness.  This is the first step, I'll be
    expanding the memcmp optimizations shortly, covering things that
    we really really wouldn't want simplifylibcalls to do.

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

commit 55f2a677a444fb3db1cf6b679f261d242b8636d1
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:34:21 2009 +0000

    Change errs() to dbgs().

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

commit 259191f8260ce170bac8eba3e221c35e93d2778e
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:31:35 2009 +0000

    Change errs() to dbgs().

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

commit 32c864e1d29d12c6156ce242458f4668e5acb211
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:27:55 2009 +0000

    Change errs() to dbgs().

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

commit c0e0771a5c8a082bffed6d4bcea8d6f41b186bfb
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:14:25 2009 +0000

    Change errs() to dbgs().

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

commit 081d4ccced881523716f5017bf619546a2e7ab43
Author: David Greene <greened@obbligato.org>
Date:   Thu Dec 24 00:06:26 2009 +0000

    Change errs() to dbgs().

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

commit b74668684da4ed870af49851ef26b0d526c77401
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:47:53 2009 +0000

    Change errs() to dbgs().

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

commit 3a94535216c37f5c33a40b1a88a32a735077c3ff
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:38:28 2009 +0000

    Change errs() to dbgs().

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

commit ff374c2b59fe114b6910a40285deed40230f1208
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:29:28 2009 +0000

    Change dbgs() back to errs() as Chris requested.

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

commit 4151dd0bbf6a685586b8fecf4037a7a27456f944
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:27:15 2009 +0000

    Change dbgs() back to errs() as Chris requested.

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

commit 5878b32788cee3c581890e775e1d8fcc8d55ccc5
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 23 23:24:51 2009 +0000

    reorder to follow a normal fall-through style, no functionality change.

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

commit aa3571123711181442ca28841946762622336a2b
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:23:15 2009 +0000

    Clarify how dbgs() operates.

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

commit 5e0a6b7dfd1f5ea140018bf1e30f1924d0a1c87e
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:19:43 2009 +0000

    Fix a comment.

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

commit 702481a81b95fed36e43478d719bf0f0deebd262
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:14:41 2009 +0000

    Change dbgs() back to errs() for assert messages as Chris requested.

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

commit 6350f81d59920edcfd8b44ac6b66af0c7ff18113
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:09:39 2009 +0000

    Change dbgs() back to errs() for assert messages as Chris requested.

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

commit aeeb42419cc76d1fd44b1fe3fd4f4140ee2c3961
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 23 23:03:24 2009 +0000

    sizeof(char) is always 1.

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

commit d5fad3b9406fcfda51c31bd559edd61d7ef44d27
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 23:00:50 2009 +0000

    Change dbgs() back to errs() for assert messages as Chris requested.

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

commit dfea7e628a030fc5f15cbdd757ff661b7d834fd8
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:59:29 2009 +0000

    Change dbgs() back to errs() for assert messages as Chris requested.

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

commit ce4d5136399a6a07388495c762e294986895d926
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:58:38 2009 +0000

    Remove dump routine and the associated Debug.h from a header.  Patch up
    other files to compensate.

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

commit 053e91a4308e9fa66c1af1a7019ce45c71606f28
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:49:57 2009 +0000

    Change dbgs() back to errs() as Chris requested.

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

commit 0a32a9d73bc8035a13c6241433d6e70a2d4290fb
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:35:10 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 9561c821ce2afaad4926e2830ed9f30cb27f29d7
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:28:01 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 6778bc905cce16db6b5b1be049a42ad1e0c9fddb
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:18:14 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit dc874baf87b0799d6f6c576b718b33691d7259dd
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 22:10:20 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 96a47017353e6883b2484cc5811c72118fbbd404
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 21:58:29 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit ce32cf00cc1f35e1d4cc5e00d611bcde720ce9da
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 21:48:18 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 01295bc07f8f0a55e3498827a5bfc3ee0a386f50
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 23 21:34:03 2009 +0000

    Move kill flags when the same register occurs more than once in a sequence.

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

commit 2a98a2f5a8b106b2abfcb2b1e8b6c2cb49311951
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 23 21:28:42 2009 +0000

    Handle undef operands properly.

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

commit ecae21aaf03469b5b0dd06b256425ae03a560b47
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 23 21:28:37 2009 +0000

    Make insert position available to MergeOpsUpdate.
    Rearrange arguments.
    No functional changes

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

commit 07be4590c1626617747d7b7922e17273a73e4c17
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 23 21:28:31 2009 +0000

    Perform kill flag calculations in new method. No functional changes.

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

commit 7c119d7d49e4c86b04e942d8ae5ac8721e2ca9a4
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 23 21:28:23 2009 +0000

    Move repeated code to a new method. No functional change.

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

commit 07cc79a1623ca8414da9255543762abe8a8037d9
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 21:27:29 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 6ff267f2711ec600d9458749bef022b8a6476ab4
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 21:16:54 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit a80ab14e95be6b6ea2c7fa2b57398b830fe6beb5
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 21:06:14 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 00532a28dca9a915557626b73b4d089108ce85cb
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:52:41 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit d120239be2123affddcadf85d9ce6cdf75e4f064
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:43:58 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit ad44e7d5a9e226bf9b3aa54763e83fc51273a969
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:34:27 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 4a60d180d7fe86436196abb37f8b767da07cd30d
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:20:46 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit db4dd0d7e4a22a5c0ae0ca9970b649fc5ad0082a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 23 20:13:44 2009 +0000

    Remove an XFAIL.

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

commit f17f28ba4b1067d125d577d52864810ef7733e61
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:10:59 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit aa7455dbb5c01cac91b9a254981cb381324a1b9f
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 20:03:58 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 13e07bacee394735a7a604ffd4fdaf15b8384c95
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 19:51:44 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit d02176108f777e643dd1b34e70675c3c3892fe21
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 19:45:49 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit bb782751a0a6c7f4997f8afc75124241b0a07f94
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 19:27:59 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 8323720790f8a7b2ccb57d0ed927c406c7ada2ff
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 19:21:19 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 9177c9c21f5bade02492fdb1b1cae0d772108f21
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 19:15:13 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 514e97429ecef0dd9f8a483e2dbe3dc8de47b73d
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 19:12:50 2009 +0000

    Alternative fix to make sure that the extern declarations used by
    DynamicLibrary::SearchForAddressOfSymbol refer to declarations in the
    global namespace.

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

commit afaefaaf3d83a920746492a48e70c7343f2df5e1
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 19:04:10 2009 +0000

    Revert 92020 until I figure out a more portable fix

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

commit 852b0c0e84467eab2076b2014b54843b15b06b1e
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 18:56:27 2009 +0000

    Move the extern symbol declarations outside of
    DynamicLibrary::SearchForAddressOfSymbol and force them to have "C"
    linkage.

    Interestingly, GCC treats the block-scoped "extern" declarations we
    previously had as if they were extern "C" declarations (or, at least,
    were in the global namespace), so that GCC bug papered over this LLVM
    bug. Clang and EDG get the linkage correct; this new variant seems to
    work for both GCC and Clang.

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

commit a21b0c41a131b8eaf95cc441e519923a380ea19c
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 18:27:13 2009 +0000

    Fix another -Wmismatched-tags warning

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

commit 7cc2dbba20994329d71739adc9e54d63e95f37a5
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 18:25:37 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit a28b20c236ba2ec1c466f612a84c8b965f60ea81
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 17:55:11 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit dc8b5720c49dd593865b6ed1e18928e5e038000e
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Wed Dec 23 17:48:10 2009 +0000

    move a few more symbols to .rodata

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

commit d25af07faae782ffd616b13b2d8dadd1e229a0f9
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 17:24:22 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit 2531b82af471667ff2ffcab9eb801b77f04ec0f6
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 17:18:22 2009 +0000

    Convert debug messages to use dbgs().  Generally this means
    s/errs/dbgs/g except for certain special cases.

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

commit aa80e75a467dd54a9e2007f29ff99aa8fd42626d
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 17:05:07 2009 +0000

    Fix struct/class mismatch for LTOModule and LTOCodeGenerator, detected by Clang

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

commit 5efd48c6c7c43ed1d8eadb79c17260b15f472f38
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 23 17:03:46 2009 +0000

    De-bork CMake build

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

commit bb6f927871a16e14c3b78ec1382d75fe82197bd4
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 16:39:06 2009 +0000

    Provide dbgs(), a circular-buffering debug output stream.  By default it
    simply passes output to errs().  If -debug-buffer-size=N is set N > 0,
    dbgs() buffers its output until program termination and dumps the last N
    characters sent to it.  This is handy when debugging very large inputs.

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

commit 825e4b5c9261d0c2ee58c5a771c1331fbfdc8885
Author: David Greene <greened@obbligato.org>
Date:   Wed Dec 23 16:08:15 2009 +0000

    Add circular_raw_ostream, which buffers its output in a circular queue
    and outputs it when explicitly flushed.  The intent is to use it in
    situations such as debug output logging where a signal handler can take
    care of flushing the buffer at program termination.

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

commit 236c4bde3fd5143cf9ea997a9863e4a3caaf9210
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Dec 23 12:50:03 2009 +0000

    Make it easier to regenerate docs when srcdir != objdir.

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

commit 388266107e740ca794485b3a585def2883956f6f
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Dec 23 12:49:51 2009 +0000

    Regenerate.

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

commit 509f9240d37ecbdcabf1d3157a6140322030706b
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Dec 23 12:49:41 2009 +0000

    Cosmetic issue: more consistent naming.

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

commit 27d15f58084d6b25bdec9c65eacc2821cb1b9d73
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Dec 23 12:49:30 2009 +0000

    Allow (set_option SwitchOption, true).

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

commit 5bb804eb2f89c971a5860a6e0bb0f6f5d58a8ef7
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Wed Dec 23 11:19:09 2009 +0000

    Reapply 91904.

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

commit 1f01e330bad7cb24d966bf9e51cfa8c4afbdb4d1
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Wed Dec 23 10:56:02 2009 +0000

    Added missing patterns for subtract instruction.

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

commit 5316fa5d7262c48b511104e64664f7b8938a5d6b
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Wed Dec 23 10:35:24 2009 +0000

    deleting empty file.

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

commit 391ab2127fb765c0c3fedd0e8db7ac440524353e
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Wed Dec 23 09:46:01 2009 +0000

    Reverting back 91904.

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

commit f81e44d0fe15207bd331798aee58a3c95c39a4b8
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Dec 23 07:32:51 2009 +0000

    Use more sensible type for flags in asms.  PR 5570.
    Patch by Sylve`re Teissier (sorry, ASCII only).

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

commit fb2367dd4da70f93d7b83b41c6c00d857358b139
Author: Eric Christopher <echristo@apple.com>
Date:   Wed Dec 23 02:51:48 2009 +0000

    Update objectsize intrinsic and associated dependencies. Fix
    lowering code and update testcases.

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

commit 25a9b18b58d5c85ad531ca50ac8e81acdf3ffd76
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 23 01:46:40 2009 +0000

    really remove the instruction, don't just comment it out

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

commit 0e34f628addb0a70b0f28ada176693cd30f9349a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 23 01:45:04 2009 +0000

    completely eliminate the MOV16r0 'instruction'.  The only
    interesting part of this is the divrem changes, which are
    already tested by CodeGen/X86/divrem.ll.

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

commit 8a8951e0e3247ddcfa1b0b4486cb77ceb1985a9a
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Dec 23 01:32:29 2009 +0000

    More fixes for Visual C++.  Replaced several very small
    static inline functions with macros.

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

commit 1ef8bc9fb5cb8ea6d404809565bdc7088b85f948
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 23 01:30:26 2009 +0000

    stop pattern matching 16-bit zero's of a register to MOV16r0,
    instead use the appropriate subreggy thing.  This generates identical
    code on some large apps (thanks to Evan's cross class coalescing
    stuff he did back in july).  This means that MOV16r0 can go away
    completely in the future soon.

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

commit f70c94554077d2291b6867a2f24e1cd40f2337d1
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 23 01:28:19 2009 +0000

    Remove superfluous SDNode ordering.

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

commit 2be082890768917e7360194b667a7fdb81b140b3
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Wed Dec 23 00:58:02 2009 +0000

    Disable JITTest.FunctionIsRecompiledAndRelinked on ARM where it's not
    implemented.

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

commit 1e5b9ec2b938c3eb3ef527f254d7200a720e351c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 23 00:47:20 2009 +0000

    Remove node ordering from inline asm nodes. It's not needed.

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

commit ac0bfeb8b0af333e4167dbe6e15ff335ce7b67e1
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 23 00:45:10 2009 +0000

    Suppress compiler warning.

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

commit 92b889c9eb3ea14a43dcc2ec7ee64d319a3156d3
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 23 00:44:51 2009 +0000

    Remove node ordering from VA nodes. It's not needed.

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

commit 9b4cefa1b947151b3f2178cf3aabec2642e7582b
Author: Eric Christopher <echristo@apple.com>
Date:   Wed Dec 23 00:29:49 2009 +0000

    Update docs for bitcode changes. For object size checking we won't
    work with partial objects so just count the type as a boolean. Update
    appropriately.

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

commit 5b000faeb29370a0c4cb395368f4d026b74c1db7
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 23 00:28:23 2009 +0000

    Revert r91949 r91942 and r91936.

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

commit 25ae075ab2194cfc445b001c65fa3bf73d65fa93
Author: Gabor Greif <ggreif@gmail.com>
Date:   Wed Dec 23 00:18:40 2009 +0000

    restore 'make update' functionality by not ignoring 'clang' here

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

commit b24f6e8dd614f6e99af0caeedcbb79160d09e09c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 23 00:05:09 2009 +0000

    Finish up node ordering in ExpandNode.

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

commit f55eba02e15f4dce951d3aef8e1e83c2c9fed762
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 22 23:54:54 2009 +0000

    Add coalescer asserts.

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

commit c6986e5d47b2c955e77994fb40bcd2f6c2f2038e
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 22 23:54:44 2009 +0000

    Add a SPR register class to the ARM target.

    Certain Thumb instructions require only SP (e.g. tSTRspi).

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

commit daad0b43625ca69376938361b466ef42fbdd9776
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Tue Dec 22 23:47:23 2009 +0000

    Partially revert r91626.  Materializing extra functions to determine whether
    they're available_externally broke VMKit, which was relying on the fact that
    functions would only be materialized when they were first called.  We'll have
    to wait for http://llvm.org/PR5737 to really fix this.

    I also added a test for one of the F->isDeclaration() calls which wasn't
    covered by anything else in the test suite.

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

commit c969f4b0e7b5df3a854b3d41285a26dc34c4b855
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 23:44:56 2009 +0000

    Assign ordering to nodes created in ExpandNode. Only roughly 1/2 of the function
    is finished.

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

commit 14a5e3e29709da3c3297a739a06127f367628bef
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Tue Dec 22 23:18:18 2009 +0000

    Fix a crash in JIT::recompileAndRelinkFunction(). It doesn't pass the MCI
    argument to runJITOnFunction(), which caused a null pointer dereference at
    every call.

    Patch by Gianluca Guida!

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

commit 0ee0a9f4d4ac6941cb03bb0e9bd88520221a0b45
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 22:53:39 2009 +0000

    Assign ordering to SDNodes in PromoteNode. Also fixing a subtle bug where BSWAP
    was using "Tmp1" in the first getNode call instead of Node->getOperand(0).

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

commit 7043d80affa413b00d8ec2e205e26772e29c2429
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Dec 22 22:51:40 2009 +0000

    Removed the "inline" keyword from the disassembler decoder,
    because the Visual C++ build does not build .c files as C99

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

commit 34879e45cd8129131ce21558aa92cc2f8876574d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 22:50:29 2009 +0000

    rename HexDisassembler -> Disassembler, it works on any input
    integer encoding (0123, 0b10101, 42, etc).

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

commit 6913818399687ea52e6cce639dcf4e17fbd232c6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 22:47:43 2009 +0000

    just discard the debug output from the disassembler.

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

commit 70abd22a14353cb48d63cc24c311343ce2bb5a7a
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Dec 22 22:37:23 2009 +0000

    Add testcase for PR5703

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

commit cc48d238c088e790bf368544b45ba3f43b632877
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 22 21:52:27 2009 +0000

    Remove minimal CFG sanity checks from verifier.

    These checks would often trigger on unreachable statements inserted by
    bugpoint, leading it astray.

    It would be nice if we could distinguish unreachable blocks from errors.

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

commit f040bcb2c5d8edb446938db365ad2cc031822a9b
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 22 21:48:20 2009 +0000

    Allow explicit %reg0 operands beyond what the .td file describes.

    ARM uses these to indicate predicates.

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

commit 798c23dcf69e484ae19906869e940bc6b7872117
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 21:35:02 2009 +0000

    Allow 0 as an order number. Don't assign an order to formal arguments.

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

commit b53da77b6aaf950b6a59166ddaa5541326c4e43b
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Dec 22 21:12:55 2009 +0000

    Fixes to the X86 disassembler:
    Made LEA memory operands emit only 4 MCInst operands.
    Made the scale operand equal 1 for instructions that have no
    SIB byte.

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

commit 1e2dadd738efd7725ad8de7e064c2d67384f7ed4
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Dec 22 20:11:00 2009 +0000

    Restore snprintf weirdness for VCPP only

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

commit 42806e669ce6482a6268d64ab4d0b53c07ccea70
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 19:33:28 2009 +0000

    Fix the Convert to scalar to not insert dead loads in the store case.  The
    load is needed when we have a small store into a large alloca (at which
    point we get a load/insert/store sequence), but when you do a full-sized
    store, this load ends up being dead.

    This dead load is bad in really large nasty testcases where the load ends
    up causing mem2reg to insert large chains of dependent phi nodes which only
    ADCE can delete.  Instead of doing this, just don't insert the dead load.

    This fixes rdar://6864035

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

commit b0798ce7b64a048bb502c7cf954cd89484940e46
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 19:23:33 2009 +0000

    fix some fixme's by using twines

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

commit fd628a53c45c84a9b6058a26fb58ac8063d7f937
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 22 18:49:55 2009 +0000

    Use proper move instructions. Make the verifier happy.

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

commit 8e4381a943076f3c22a07729e3e2fc528d13a369
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Dec 22 18:34:19 2009 +0000

    Report an error for bad inline assembly, where the value passed for an
    "indirect" operand is not a pointer.

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

commit f8420485b61d066ed0a876a35cf3098769e1905c
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Dec 22 17:47:23 2009 +0000

    Remove target attribute break-sse-dep. Instead, do not fold load into sse partial update instructions unless optimizing for size.

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

commit 1c794cc4f30e9b35a9d2aec6f5b6e05dce42a2b7
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Tue Dec 22 17:25:11 2009 +0000

    Include based on the current path, since we already -I the X86 target's path. Fixes CMake build

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

commit c3828a78a14f37cdf98db1a905ea51fdbd03a5b4
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Tue Dec 22 14:25:37 2009 +0000

    While converting one of the operands to a memory operand, we need to check if it is Legal and does not result into a cyclic dep.

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

commit 7dafc1537eed6c94009aca694090c5a7d280d1ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 07:03:21 2009 +0000

    specify what is invalid about it

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

commit 1b67a19c78e9d7936eedd0d607dd56a849a5ae88
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 07:01:12 2009 +0000

    specify a triple to use, fixing the test on non-x86-64 hosts.

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

commit 0e0dc43e679050600081a316ea18a09d292d47e8
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:58:29 2009 +0000

    reject invalid input with a caret, e.g.:

    simple-tests.txt:16:1: error: invalid instruction
    0xff 0xff
    ^

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

commit bf24dfc6ea2873cce92ad5c10e8ec8c26e4b40f1
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Dec 22 06:57:14 2009 +0000

    Generalize SROA to allow the first index of a GEP to be non-zero.  Add a
    missing check that an array reference doesn't go past the end of the array,
    and remove some redundant checks for in-bound array and vector references
    that are no longer needed.

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

commit 7a30eb39c8801739c9a3cc139ea00a16d38140f9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:56:51 2009 +0000

    various cleanups, make the disassemble reject lines with too much
    data on them, for example:

    	addb	%al, (%rax)
    simple-tests.txt:11:5: error: excess data detected in input
    0 0 0 0 0
        ^

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

commit e409a0ed6b8c66f9f4f0f3cef584af8d6dd013a0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:45:48 2009 +0000

    If you thought that it didn't make sense for the disassembler
    to not produce caret diagnostics, you were right!

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

commit d57f7cd43e80255b87f213e58611407add7b335d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:37:58 2009 +0000

    rewrite the file parser for the disassembler, implementing support for
    comments.  Also, check in a simple testcase for the disassembler,
    including a test for r91864

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

commit 713e9712579faccc6f8760586bf6cbb777c5e2ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:24:00 2009 +0000

    don't crash on blank lines, rename some variables.

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

commit 9d4f9105490cb5cad700f117ffa1b84c9a3e6b0a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:07:30 2009 +0000

    Implement PR5795 by merging duplicated return blocks.  This could go further
    by merging all returns in a function into a single one, but simplifycfg
    currently likes to duplicate the return (an unfortunate choice!)

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

commit 7d85a53fad48d627c6e4a17771ebcd46cfc4db6e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 06:04:26 2009 +0000

    convert to filecheck

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

commit 6c85d89d85046de478b62c7448927db2e4b87121
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 04:47:41 2009 +0000

    don't run GVN at -O1, GCC doesn't do it's equivalent at that optimization level.

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

commit 873e26746bd3c642fbc9947a6dcf500c0995f3cb
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 04:25:02 2009 +0000

    The phi translated pointer can be computed when returning a partially cached result
    instead of stored.  This reduces memdep memory usage, and also eliminates a bunch of
    weakvh's.  This speeds up gvn on gcc.c-torture/20001226-1.c from 23.9s to 8.45s (2.8x)
    on a different machine than earlier.

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

commit bf9d0f9154274adb84a66c0581dd9529f0b83ea1
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 02:10:19 2009 +0000

    Add more plumbing. This time in the LowerArguments and "get" functions which
    return partial registers. This affected the back-end lowering code some.

    Also patch up some places I missed before in the "get" functions.

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

commit 919f267795692f9df06fef0ee620411534c819aa
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Dec 22 02:07:42 2009 +0000

    Changed REG_* to MODRM_REG_* to avoid conflicts
    with symbols in AuroraUX's global namespace.

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

commit 42c4404dd4b7162b06f56fd82dc779b0b3d13837
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 22 01:41:37 2009 +0000

    Fix some may-be-uninitialized var warnings.

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

commit 16ded292991e3e288f1d9deb3e33a5268f1cd6fb
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 01:38:23 2009 +0000

    fix unit test that I broke.

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

commit b22e7af680a571467d80a6b5fd5661525010ded5
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 01:25:10 2009 +0000

    Add SDNode ordering to inlined asm and VA functions.

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

commit 7581e0c8ad813a3f6c6c0d357b7ced37ed3dfb67
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Dec 22 01:23:51 2009 +0000

    Whitespace fixes.

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

commit f1bed4b1cef55bb83753e34e0929c4b10bcc0074
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 01:17:43 2009 +0000

    types don't need atomic inc/dec, they are local to an llvmcontext.

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

commit 05a245f41d40f8be120b7d131a7ce16c17dc47d3
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 01:11:43 2009 +0000

    Adding more assignment of ordering to SDNodes. This time in the "call" and
    generic copy functions.

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

commit a116e5e520689a75baf513fa8d2cba65e0be743a
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Dec 22 01:11:26 2009 +0000

    Fixed library dependencies between the X86 disassembler and
    X86 codegen that were causing circular symbol dependencies.

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

commit fc86f8cc6c57cb3329675f4fc8ec868fed7a1fe1
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 01:00:32 2009 +0000

    avoid calling extractMallocCall when it's obvious we don't have
    a call.  This speeds up memdep ~1.5%

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

commit d42a013740b839251387f41e40bad6a80552dae8
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 00:51:57 2009 +0000

    comment fix: weakvh -> tracking vh

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

commit 16c7988cb5516a7686c51c2387eb3eef3858893c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 00:50:32 2009 +0000

    Add ordering of SDNodes to LowerCallTo.

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

commit 437f3c269851340bf66d9f5b64f04df846781e13
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 22 00:44:05 2009 +0000

    print pcrel immediates as signed values instead of unsigned so that we
    get things like this out of the disassembler:

    0x100000ecb: callq	-96

    instead of:

    0x100000ecb: callq	4294967200

    rdar://7491123

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

commit 3b72641d65a254c01921e4f767003279383daba4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 00:40:51 2009 +0000

    Now add ordering to SDNodes created by the massive intrinsic lowering function.

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

commit f406ec5e612f8958fb8ea7c6b5b129753b0b8064
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 22 00:12:37 2009 +0000

    To make things interesting, I added MORE code to set the ordering of
    SDNodes. This time in the load/store and limited-precision code.

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

commit 87476f66ef1998ff5d93a2cb413ba10a1413d21b
Author: Lang Hames <lhames@gmail.com>
Date:   Tue Dec 22 00:11:50 2009 +0000

    Changed slot index ranges for MachineBasicBlocks to be exclusive of endpoint.
    This fixes an in-place update bug where code inserted at the end of basic blocks may not be covered by existing intervals which were live across the entire block. It is also consistent with the way ranges are specified for live intervals.

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

commit 1c01aa9daf0ba64f48ab7c3ffe81a7c51b2006fa
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 23:47:40 2009 +0000

    Add more plumbing to assign ordering to SDNodes. Have the "getValue" method
    assign the ordering when called. Combine some of the ordering assignments to
    keep things simple.

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

commit 4137a8aa60914101aa1ad7f1a7dfe12c0b35607c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Dec 21 23:27:57 2009 +0000

    Add suggested parentheses.

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

commit 79479fcf0a878ea487fd745920c106d5c860a723
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 23:15:48 2009 +0000

    Add a fastpath to Load GVN to special case when we have exactly one dominating
    load to avoid even messing around with SSAUpdate at all.  In this case (which
    is very common, we can just use the input value directly).

    This speeds up GVN time on gcc.c-torture/20001226-1.c from 36.4s to 16.3s,
    which still isn't great, but substantially better and this is a simple speedup
    that applies to lots of different cases.

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

commit b8d65d5bf97d41881148b3ce93f634a9ac3903ab
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 23:10:19 2009 +0000

    More ordering plumbing. This time for GEP. I need to remember to assign
    orderings to values returned by getValue().

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

commit fe213dba0d5785b3dfa97a22f0d20aaf9982e3f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 23:04:33 2009 +0000

    refactor some code out to a new helper method.

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

commit b702ceab37bdb90e32041f6ae1b5085a82abd4c8
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 22:43:03 2009 +0000

    improve indentation avoid a pointless conversion from weakvh to trackingvh,
    no functionality change.

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

commit 2a33d37c9f1e5ef0c7f5bcdb1c488540d42f3f67
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 22:42:14 2009 +0000

    Another incremental check-in for assigning ordering to SDNodes. This time for
    shuffle and insert vector.

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

commit ef4620fe2846df5790119fd45e62e28f6f490b3e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 22:30:11 2009 +0000

    Assign ordering to more instructions. Incremental check-in.

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

commit 4852546f88da1386e3f36ad7c0e270f0798a3dea
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 21:59:52 2009 +0000

    - Add a bit more plumbing assigning an order to SDNodes.
    - Modify the "dump" method to emit the order of an SDNode.

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

commit 29296e63554a23d2e8a7ccc7c1b776dd52346e1c
Author: David Greene <greened@obbligato.org>
Date:   Mon Dec 21 21:21:34 2009 +0000

    Fix a bug in !subst where TableGen would go and resubstitute text it had
    just substituted.  This could cause infinite looping in certain
    pathological cases.

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

commit df70e60850a5c0b905cd23e84e44e677dc6c03e7
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 21 20:19:37 2009 +0000

    Remove uber-gross hack. The define _snprintf to snprintf is invalid due to two reasons: 1. Accroding to C++ standard snprintf should be available in std namespace (and __gnu_cxx in case of GCC to). Such ifdef will change all snprintf's to _snprintf's, but won't bring snprintf to all necessary namespaces. Thus e.g. any locale-using code on mingw will yield an error (include this file + string to see the result) 2. MSVCRT's _snprintf does not comply with C99 standard. Standard one is snprintf.

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

commit 38150fc924f6aa5ba056d738d8ecd75cbc4f8778
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 21 20:18:49 2009 +0000

    Mark FPW as allocable when frame address is taken.

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

commit 708808ae99856d00af548177ea42e18d4ad32dc8
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 19:59:38 2009 +0000

    First wave of plumbing for assigning an ordering to SDNodes. This takes care of
    a lot of the branching instructions.

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

commit e35f67f9527538257e684574bdf21392be2c92bf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 21 19:53:39 2009 +0000

    Delete the instruction just before the function terminates for consistency sake.

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

commit d58e7f8655f246d9bbda9ba4933e1906a5690dc8
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Dec 21 19:34:59 2009 +0000

    Place SDNodeOrdering.h in the directory it's used.

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

commit 962018b8231c524caba670c9dd19427eafd6f1fd
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Dec 21 18:39:47 2009 +0000

    Remove special-case SROA optimization of variable indexes to one-element and
    two-element arrays.  After restructuring the SROA code, it was not safe to
    do this without adding more checking.  It is not clear that this special-case
    has really been useful, and removing this simplifies the code quite a bit.

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

commit 7f5262f3ef1729d48a3e03f90192c053d27fa1e9
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Dec 21 17:31:59 2009 +0000

    XFAIL these tests on powerpc, under the assumption that no one cares. If you care, feel free to fix.

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

commit 5c6ab9595c06e46bd1670ce7a0a52852d9ff669f
Author: Eric Christopher <echristo@apple.com>
Date:   Mon Dec 21 08:15:29 2009 +0000

    Fix setting and default setting of code model for jit. Do this
    by allowing backends to override routines that will default
    the JIT and Static code generation to an appropriate code model
    for the architecture.

    Should fix PR 5773.

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

commit 76f683191bd6137f9177dca4686ead7d6944981b
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Mon Dec 21 08:03:16 2009 +0000

    A couple minor README updates.

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

commit 7abdd670070ff4c05b8e79c8d393b252e9cbf4d6
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 07:52:40 2009 +0000

    improve compatibility with SWIG, patch by James Knight!

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

commit 860471ea8a2cf7e68285dd1351c51152518bd8e1
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 07:45:57 2009 +0000

    revert r89298, which was committed without a testcase.  I think
    the underlying PHI node insertion issue in SSAUpdate is fixed.

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

commit 2bf5b030a6357c2fb9ee937c0a7b907f9d995052
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 07:16:11 2009 +0000

    fix PR5837 by having SSAUpdate reuse phi nodes for the
    'GetValueInMiddleOfBlock' case, instead of inserting
    duplicates.

    A similar fix is almost certainly needed by the machine-level
    SSAUpdate implementation.

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

commit c8785545bcf2d1e861969bdf0cdc3c506abf7163
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 07:15:15 2009 +0000

    add a helper ctor.

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

commit ccdbd097759b1f3feaa10a39b7cc23341da58dbd
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Mon Dec 21 06:49:24 2009 +0000

    Change StringRef::startswith and StringRef::endswith to versions which are a
    bit more verbose, but optimize to much shorter code.

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

commit f171d4bff6fe4500beb60a3525e2c1e3b76d46b7
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 06:08:50 2009 +0000

    add check lines for min/max tests.

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

commit 6c88fd376d17c371454f88795bc0a6bb4b2e30e3
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 06:06:10 2009 +0000

    really convert this to filecheck.

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

commit 1ae148ac3895cc2204d32b84361bbebbb42384fb
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 06:03:05 2009 +0000

    give instcombine some helper functions for matching MIN and MAX, and
    implement some optimizations for MIN(MIN()) and MAX(MAX()) and
    MIN(MAX()) etc.  This substantially improves the code in PR5822 but
    doesn't kick in much elsewhere.  2 max's were optimized in
    pairlocalalign and one in smg2000.

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

commit 3ee8750e43a6c4fd3baf29b50ff2f5144161f7eb
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 05:53:13 2009 +0000

    filecheckize

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

commit eecd79c9182748a08fa05cb57b410f45a894432a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 04:04:05 2009 +0000

    enhance x-(-A) -> x+A to preserve NUW/NSW.

    Use the presence of NSW/NUW to fold "icmp (x+cst), x" to a constant in
    cases where it would otherwise be undefined behavior.

    Surprisingly (to me at least), this triggers hundreds of the times in
    a few benchmarks: lencode, ldecode, and 466.h264ref seem to *really*
    like this.

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

commit 2dce671f9422bce436c74ad48a2b964d08bf2af9
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 03:19:28 2009 +0000

    Optimize all cases of "icmp (X+Cst), X" to something simpler.  This triggers
    a bunch in lencode, ldecod, spass, 176.gcc, 252.eon, among others.  It is
    also the first part of PR5822

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

commit fd6df61746f769d9195f057199a9d16a215c2396
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 21 03:11:05 2009 +0000

    convert to filecheck

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

commit 2e4b507f989730839d48a1ea77845b3a4d8b3aa9
Author: Lang Hames <lhames@gmail.com>
Date:   Sat Dec 19 23:32:32 2009 +0000

    Fixed use of phi param in SlotIndex constructors.

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

commit d452037790a4653227a51c854409e3a151d9ca3d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Dec 19 21:29:22 2009 +0000

    fix an overly conservative caching issue that caused memdep to
    cache a pointer as being unavailable due to phi trans in the
    wrong place.  This would cause later queries to fail even when
    they didn't involve phi trans.

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

commit 6fade252c5089e35a484d16b67dc3193d4744590
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 21:27:30 2009 +0000

    CMake: Update lib deps.

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

commit cae7a4ce386dd7b01264acd17fce0453ce671e66
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Dec 19 20:56:53 2009 +0000

    .llx is no more.

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

commit d19bb92ed1e9b879ed5ad87ab0021bed0b21d1b9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Dec 19 20:44:43 2009 +0000

    fix inconsistent use of tabs

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

commit 70c75b50f227c44043294c642734da957925df59
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 18:58:49 2009 +0000

    Remove unused variable (noticed by clang++).

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

commit 05e9f7410481592f66c6169923d903f9c592d3c4
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 17:11:53 2009 +0000

    #if 0 out X86 disassembler for now, it is breaking the build in multiple places.

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

commit 5bdef5b8ec8fd24804c3017e27417788d03c3e3b
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Sat Dec 19 13:52:01 2009 +0000

    Emit direction operand in binary insns that stores in memory.

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

commit 4b40abc73cf4280ee01a3c40ecaab7834aa76796
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Sat Dec 19 13:13:29 2009 +0000

    Adding a bunch of options to the mcc16 driver.

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

commit 333f2f2612d193b17a373c2643bf6033719e6998
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Sat Dec 19 12:07:00 2009 +0000

    rename dprintf to dbgpritnf, in order to fix build with glibc (which already defines dprintf in stdio.h

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

commit c6adb84d954dd57766b7f3dd1454dfe3e05f83b7
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Sat Dec 19 11:52:18 2009 +0000

    fix build and while at it remove a redudant include

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

commit d31fb873f66238f8ccd0edd157b1451e83ad796e
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Sat Dec 19 11:38:14 2009 +0000

    Test cases for changes done in 91768.

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

commit 6758957e00103d5df70147ac3552efcf4a28c3b5
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Sat Dec 19 08:26:25 2009 +0000

    1. In indirect load/store insns , the name of fsr should be emitted as INDF.
    2. include standard asmbly headers in generated asmbly.

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

commit 9731ea6739a2acc4c0b437f168dc6769f3808a98
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Sat Dec 19 07:05:23 2009 +0000

    Fix a bunch of little errors that Clang complains about when its being pedantic

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

commit 42becae4234059212beb68cfdd09ddf0e9ff7377
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Dec 19 07:01:15 2009 +0000

    fix PR5827 by disabling the phi slicing transformation in a case
    where instcombine would have to split a critical edge due to a
    phi node of an invoke.  Since instcombine can't change the CFG,
    it has to bail out from doing the transformation.

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

commit 2b827d0d4b3e378a70b894d130235274c56d4697
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sat Dec 19 06:53:17 2009 +0000

    Update my SROA changes in response to review.
    * change FindElementAndOffset to return a uint64_t instead of unsigned, and
      to identify the type to be used for that result in a GEP instruction.
    * move "isa<ConstantInt>" to be first in conditional.
    * replace some dyn_casts with casts.
    * add a comment about handling mem intrinsics.

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

commit e38b949bc7db6805bb2a77ca4d6068037cd8c2d5
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 04:16:57 2009 +0000

    More bzero -> memset that I missed.

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

commit 6861faed9cba02c3a49b856a4e728dce8c1b651d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 04:16:48 2009 +0000

    Add missing newlines at EOF (for clang++).

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

commit 299fdcebe71c89b3fc73923b44c4f0a9169e340d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Dec 19 03:31:50 2009 +0000

    Use memset instead of bzero, its more portable.

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

commit 7566a55acf4fe9a69ad17887fea806d846ba7e98
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Sat Dec 19 03:21:36 2009 +0000

    Remove spurious semicolon. Thanks, Clang

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

commit 1a4f32c3c2eba982b658ac52f37f1d667960acea
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Dec 19 02:59:52 2009 +0000

    Table-driven disassembler for the X86 architecture (16-, 32-, and 64-bit
    incarnations), integrated into the MC framework.

    The disassembler is table-driven, using a custom TableGen backend to
    generate hierarchical tables optimized for fast decode.  The disassembler
    consumes MemoryObjects and produces arrays of MCInsts, adhering to the
    abstract base class MCDisassembler (llvm/MC/MCDisassembler.h).

    The disassembler is documented in detail in

    - lib/Target/X86/Disassembler/X86Disassembler.cpp (disassembler runtime)
    - utils/TableGen/DisassemblerEmitter.cpp (table emitter)

    You can test the disassembler by running llvm-mc -disassemble for i386
    or x86_64 targets.  Please let me know if you encounter any problems
    with it.

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

commit 232149a85f22b513b690ce6386cc8922b66b659b
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sat Dec 19 02:04:23 2009 +0000

    Bump alignment requirements for windows targets to achieve compartibility with vcpp.
    Based on patch by Michael Beck!

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

commit 6a0bb8172b4327b725fd609028c9f8ceb8086d8d
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sat Dec 19 02:04:00 2009 +0000

    Use 4-arg getVTList) variant instead of generic one, when possible

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

commit a3e53b706108ada456d24d6f2090b6a96b153569
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 19 01:47:13 2009 +0000

    Delete unused code.

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

commit 6a1afd606983941b9db6a41029c238b2df0b520a
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 19 01:46:34 2009 +0000

    Fix a spello in a comment that Nick spotted.

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

commit 9cae1100652da2ac306c7b9d11446d8e4639b6d7
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 19 01:46:09 2009 +0000

    Fix a comment.

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

commit 09e76650fe1e6c21a06f0ef7f43b15c1f433e546
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Dec 19 01:38:42 2009 +0000

    Make some methods const.  The only interesting change here is that
    it changes raw_fd_ostream::preferred_buffer_size to return zero on
    a scary stat failure instead of setting the stream to an error state.
    This method really should not mutate the stream.

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

commit 28039a48aebce267d2472eb5e143f19c68354ac9
Author: John McCall <rjmccall@apple.com>
Date:   Sat Dec 19 00:55:12 2009 +0000

    Qualify a bunch of explicit template instantiations to satisfy clang++.

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

commit fb0624b1443a68698a41e40e479b6910e6a18a57
Author: John McCall <rjmccall@apple.com>
Date:   Sat Dec 19 00:51:42 2009 +0000

    Put TypesEqual and TypeHasCycleThroughItself in namespace llvm so ADL from
    the templates in TypesContext.h can find them.  Caught by clang++.

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

commit f3b3032dc132f8386dde8aa6ecbc6c8d92d35876
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 19 00:05:07 2009 +0000

    Forgot forward declaration.

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

commit f169e657ed99eca80912bd00c06489556091a826
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 23:42:08 2009 +0000

    Eliminate unnecessary LLVMContexts.

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

commit 3a8afc0ed526b8b49af2c089ba600193f8b708c4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 18 23:32:53 2009 +0000

    Changes from review:

    - Move DisableScheduling flag into TargetOption.h
    - Move SDNodeOrdering into its own header file. Give it a minimal interface that
      doesn't conflate construction with storage.
    - Move assigning the ordering into the SelectionDAGBuilder.

    This isn't used yet, so there should be no functional changes.

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

commit 2a0bb8e3f58a6f09316801bcaf043d34b048605c
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 23:18:03 2009 +0000

    Make this comment more precise.

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

commit 52cda8c8d86f40c6e2cab28f54367bf7c64ba804
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Fri Dec 18 21:38:44 2009 +0000

    Fix an issue in googletest where a name was used before it was defined.

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

commit d26b552b438a1b4ba2d60bbf715f0286aa22d780
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 18 21:31:31 2009 +0000

    Increase opportunities to optimize (brcond (srl (and c1), c2)).

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

commit 6a4a08546569962a0a1929d1eda9fd46bffbde75
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Fri Dec 18 21:07:18 2009 +0000

    Fix gcc warning.

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

commit d59ead6cba177414008b14ccbab2d86cd1e8cf3f
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Fri Dec 18 20:35:38 2009 +0000

    Catch more cases of a pointer being marked garbage twice. This helps when
    debugging some leaks (PR5770 in particular).

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

commit 9a3d620799aa212d3ef04231e0bace426cb4eb29
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 18 20:14:40 2009 +0000

    Reapply 91459 with a simple fix for the problem that broke the x86_64-darwin
    bootstrap.  This also replaces the WeakVH references that Chris objected to
    with normal Value references.

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

commit a6e122fd8ed8e60cc79a1fbaef1658fe5aca160a
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 18 20:12:14 2009 +0000

    Fix another parallel make race condition.

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

commit 3e7564c22ba1e674327fc5c92540bb67bedaf292
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Dec 18 20:09:14 2009 +0000

    Formalize MDNode's function-localness:
    - an MDNode is designated as function-local when created, and continues to be even if its operands are modified not to refer to function-local IR
    - function-localness is designated via lowest bit in SubclassData
    - getLocalFunction() descends MDNode tree to see if it is consistently function-local

    Add verification of MDNodes to checks that MDNodes are consistently function-local.
    Update AsmWriter to use isFunctionLocal().

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

commit 80441befe44d1fc2d8c7c26536b4b0e582ccbcfd
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Dec 18 19:59:48 2009 +0000

    Fix Win32 Path.inc for API update.

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

commit cb4a07928cea4c2e4b9406665669c7062018280e
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 18:45:31 2009 +0000

    Revert this use of NUW/NSW also. Overflow-undefined multiplication isn't
    associative either.

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

commit bd9dd2b40d94c3846795ed176ea5d3b641006625
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Fri Dec 18 16:59:39 2009 +0000

    Fix libstdc++ build on ARM linux and part of PR5770.

    MI was not being used but it was also not being deleted, so it was kept in the garbage list. The memory itself was freed once the function code gen was done.

    Once in a while the codegen of another function would create an instruction on the same address. Adding it to the garbage group would work once, but when another pointer was added it would cause an assert as "Cache" was about to be pushed to Ts.

    For a patch that make us detect problems like this earlier, take a look at

    http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20091214/092758.html

    With that patch we assert as soon and the new instruction is added to the garbage set.

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

commit ffb71a4733c04874b5d47320507eea7e6a083791
Author: Tilmann Scheller <tilmann.scheller@googlemail.com>
Date:   Fri Dec 18 13:00:34 2009 +0000

    Fix wrong frame pointer save offset in the 64-bit PowerPC SVR4 ABI.

    Patch contributed by Ken Werner of IBM!

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

commit b2615b51f6c845fc7376f9bf3c773f5d1028e294
Author: Tilmann Scheller <tilmann.scheller@googlemail.com>
Date:   Fri Dec 18 13:00:15 2009 +0000

    Add support for calls through function pointers in the 64-bit PowerPC SVR4 ABI.

    Patch contributed by Ken Werner of IBM!

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

commit e931a13acc5d5dd31e3ec33ccc4b7438e8a5afca
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Dec 18 11:27:26 2009 +0000

    Make 'set_option' work with list options.

    This works now: (set_option "list_opt", ["val_1", "val_2", "val_3"])

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

commit 21e40b731446c720069c0929bdfa590c946232a5
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Fri Dec 18 08:22:35 2009 +0000

    Optimize icmp of null and select of two constants even if the select has
    multiple uses.  (The construct in question was found in gcc.)

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

commit 31d9e33e0d4b4b815ec6002aaab2f280d450c21a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 18 07:40:29 2009 +0000

    On recent Intel u-arch's, folding loads into some unary SSE instructions can
    be non-optimal. To be precise, we should avoid folding loads if the instructions
    only update part of the destination register, and the non-updated part is not
    needed. e.g. cvtss2sd, sqrtss. Unfolding the load from these instructions breaks
    the partial register dependency and it can improve performance. e.g.

    movss (%rdi), %xmm0
    cvtss2sd %xmm0, %xmm0

    instead of
    cvtss2sd (%rdi), %xmm0

    An alternative method to break dependency is to clear the register first. e.g.
    xorps %xmm0, %xmm0
    cvtss2sd (%rdi), %xmm0

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

commit c8a33c1c3ea5a45185dbfd0046b79c14f9821b4a
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 03:57:04 2009 +0000

    Revert this use of NSW; this one isn't actually safe. NSW addition
    is not reassociative.

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

commit c7d9c3baf89ad6e2a3162daf524f1d4d4c9e9090
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 03:25:51 2009 +0000

    Eliminte unnecessary uses of <cstdio>.

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

commit 532e3f52901265414842dbe21e106f9b32c5b182
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 03:10:26 2009 +0000

    Add utility routines for NSW multiply.

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

commit dbe0132963a2021bcabd9fe92cd0b1c257614ab8
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 02:58:50 2009 +0000

    Add utility routines for creating integer negation operators with NSW set.
    Integer negation only overflows with INT_MIN, but that's an important case.

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

commit 18256c45ce2016abbde91d2c738609dea2225561
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 02:14:37 2009 +0000

    Delete an unused variable.

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

commit eadde674855dc5d1e1bee25aa2c621d982b6d8d6
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Dec 18 02:12:53 2009 +0000

    Fix typo.

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

commit 620156de509db9f3d1a1130c33c680e92b722b3a
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 02:09:29 2009 +0000

    Preserve NSW information in more places.

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

commit b3099793f471d4ca8845cb922da8a7052bd2d619
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 18 01:59:21 2009 +0000

    Re-apply 91623 now that I actually know what I was trying to do.

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

commit bf4c33d434849ca17d8624a77c56b94085d84954
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 01:24:09 2009 +0000

    Add Loop contains utility methods for testing whether a loop
    contains another loop, or an instruction. The loop form is
    substantially more efficient on large loops than the typical
    code it replaces.

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

commit 36dcb6d0219b2c549638bddb9b8c6d46d9877406
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 01:20:44 2009 +0000

    Minor code simplification.

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

commit fb8c8533ea5b7e620324138fb647b1b968ff5cae
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 01:14:11 2009 +0000

    Whitespace cleanups.

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

commit fa5054b14df7bdc8da0f9e20c771d7d3b599c8d9
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 01:05:06 2009 +0000

    Tidy up this testcase and add test for tailcall optimization
    with unreachable.

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

commit cc841d457d517cc8af00f08be3c7bdf803c1eb98
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 18 01:03:29 2009 +0000

    Handle ARM inline asm "w" constraints with 64-bit ("d") registers.
    The change in SelectionDAGBuilder is needed to allow using bitcasts to convert
    between f64 (the default type for ARM "d" registers) and 64-bit Neon vector
    types.  Radar 7457110.

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

commit 82dff7d94faf98ea406305388528b0d459987172
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 01:02:18 2009 +0000

    Remove "tail" keywords. These calls are not intended to be tail calls.
    This protects this test from depending on codegen not performing the
    tail call optimization by default.

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

commit 33922e093855021c4516c58b25d2a97321d7ec9f
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 00:38:08 2009 +0000

    Don't pass const pointers by reference.

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

commit 4d6a53b925c6331b45c191fd1e8dfa4af3ce2fc8
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 00:28:43 2009 +0000

    Update a comment.

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

commit 9b781ff887e6ce97d55151debf0a6c91f4545344
Author: John McCall <rjmccall@apple.com>
Date:   Fri Dec 18 00:27:18 2009 +0000

    Pass the error string directly to llvm_unreachable instead of the residual
    (0 && "error").  Rough consensus seems to be that g++ *should* be diagnosing
    this because the pointer makes it not an ICE in c++03.  Everyone agrees that
    the current standard is silly and null-pointer-ness should not be based on
    ICE-ness.  Excellent fight scene in Act II, denouement weak, two stars.

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

commit e28a5aeb1044f710d929732875a68072d157fdb4
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Fri Dec 18 00:11:44 2009 +0000

    Add test case for the phi reuse patch.

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

commit 8eba23b792b47890c4d973ad6df31fdedfd25088
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 00:06:20 2009 +0000

    Reapply LoopStrengthReduce and IVUsers cleanups, excluding the part
    of 91296 that caused trouble -- the Processed list needs to be
    preserved for the livetime of the pass, as AddUsersIfInteresting
    is called from other passes.

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

commit 2366772de3db53fc74f19a184140687c2ac7d9bf
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 18 00:03:58 2009 +0000

    Add an svn:ignore.

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

commit 10bd00cf60fd21ca257127ded9684b48aa22abc1
Author: Sean Callanan <scallanan@apple.com>
Date:   Fri Dec 18 00:01:26 2009 +0000

    Instruction fixes, added instructions, and AsmString changes in the
    X86 instruction tables.

    Also (while I was at it) cleaned up the X86 tables, removing tabs and
    80-line violations.

    This patch was reviewed by Chris Lattner, but please let me know if
    there are any problems.

    * X86*.td
    	Removed tabs and fixed 80-line violations

    * X86Instr64bit.td
    	(IRET, POPCNT, BT_, LSL, SWPGS, PUSH_S, POP_S, L_S, SMSW)
    		Added
    	(CALL, CMOV) Added qualifiers
    	(JMP) Added PC-relative jump instruction
    	(POPFQ/PUSHFQ) Added qualifiers; renamed PUSHFQ to indicate
    		that it is 64-bit only (ambiguous since it has no
    		REX prefix)
    	(MOV) Added rr form going the other way, which is encoded
    		differently
    	(MOV) Changed immediates to offsets, which is more correct;
    		also fixed MOV64o64a to have to a 64-bit offset
    	(MOV) Fixed qualifiers
    	(MOV) Added debug-register and condition-register moves
    	(MOVZX) Added more forms
    	(ADC, SUB, SBB, AND, OR, XOR) Added reverse forms, which
    		(as with MOV) are encoded differently
    	(ROL) Made REX.W required
    	(BT) Uncommented mr form for disassembly only
    	(CVT__2__) Added several missing non-intrinsic forms
    	(LXADD, XCHG) Reordered operands to make more sense for
    		MRMSrcMem
    	(XCHG) Added register-to-register forms
    	(XADD, CMPXCHG, XCHG) Added non-locked forms
    * X86InstrSSE.td
    	(CVTSS2SI, COMISS, CVTTPS2DQ, CVTPS2PD, CVTPD2PS, MOVQ)
    		Added
    * X86InstrFPStack.td
    	(COM_FST0, COMP_FST0, COM_FI, COM_FIP, FFREE, FNCLEX, FNOP,
    	 FXAM, FLDL2T, FLDL2E, FLDPI, FLDLG2, FLDLN2, F2XM1, FYL2X,
    	 FPTAN, FPATAN, FXTRACT, FPREM1, FDECSTP, FINCSTP, FPREM,
    	 FYL2XP1, FSINCOS, FRNDINT, FSCALE, FCOMPP, FXSAVE,
    	 FXRSTOR)
    		Added
    	(FCOM, FCOMP) Added qualifiers
    	(FSTENV, FSAVE, FSTSW) Fixed opcode names
    	(FNSTSW) Added implicit register operand
    * X86InstrInfo.td
    	(opaque512mem) Added for FXSAVE/FXRSTOR
    	(offset8, offset16, offset32, offset64) Added for MOV
    	(NOOPW, IRET, POPCNT, IN, BTC, BTR, BTS, LSL, INVLPG, STR,
    	 LTR, PUSHFS, PUSHGS, POPFS, POPGS, LDS, LSS, LES, LFS,
    	 LGS, VERR, VERW, SGDT, SIDT, SLDT, LGDT, LIDT, LLDT,
    	 LODSD, OUTSB, OUTSW, OUTSD, HLT, RSM, FNINIT, CLC, STC,
    	 CLI, STI, CLD, STD, CMC, CLTS, XLAT, WRMSR, RDMSR, RDPMC,
    	 SMSW, LMSW, CPUID, INVD, WBINVD, INVEPT, INVVPID, VMCALL,
    	 VMCLEAR, VMLAUNCH, VMRESUME, VMPTRLD, VMPTRST, VMREAD,
    	 VMWRITE, VMXOFF, VMXON) Added
    	(NOOPL, POPF, POPFD, PUSHF, PUSHFD) Added qualifier
    	(JO, JNO, JB, JAE, JE, JNE, JBE, JA, JS, JNS, JP, JNP, JL,
    	 JGE, JLE, JG, JCXZ) Added 32-bit forms
    	(MOV) Changed some immediate forms to offset forms
    	(MOV) Added reversed reg-reg forms, which are encoded
    		differently
    	(MOV) Added debug-register and condition-register moves
    	(CMOV) Added qualifiers
    	(AND, OR, XOR, ADC, SUB, SBB) Added reverse forms, like MOV
    	(BT) Uncommented memory-register forms for disassembler
    	(MOVSX, MOVZX) Added forms
    	(XCHG, LXADD) Made operand order make sense for MRMSrcMem
    	(XCHG) Added register-register forms
    	(XADD, CMPXCHG) Added unlocked forms
    * X86InstrMMX.td
    	(MMX_MOVD, MMV_MOVQ) Added forms
    * X86InstrInfo.cpp: Changed PUSHFQ to PUSHFQ64 to reflect table
    	change

    * X86RegisterInfo.td: Added debug and condition register sets
    * x86-64-pic-3.ll: Fixed testcase to reflect call qualifier
    * peep-test-3.ll: Fixed testcase to reflect test qualifier
    * cmov.ll: Fixed testcase to reflect cmov qualifier
    * loop-blocks.ll: Fixed testcase to reflect call qualifier
    * x86-64-pic-11.ll: Fixed testcase to reflect call qualifier
    * 2009-11-04-SubregCoalescingBug.ll: Fixed testcase to reflect call
      qualifier
    * x86-64-pic-2.ll: Fixed testcase to reflect call qualifier
    * live-out-reg-info.ll: Fixed testcase to reflect test qualifier
    * tail-opts.ll: Fixed testcase to reflect call qualifiers
    * x86-64-pic-10.ll: Fixed testcase to reflect call qualifier
    * bss-pagealigned.ll: Fixed testcase to reflect call qualifier
    * x86-64-pic-1.ll: Fixed testcase to reflect call qualifier
    * widen_load-1.ll: Fixed testcase to reflect call qualifier

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

commit 20ec3073cae13b5c8a1661dabdfdb97500e6e26c
Author: John McCall <rjmccall@apple.com>
Date:   Thu Dec 17 23:49:16 2009 +0000

    Sundry dependent-name fixes flagged by clang++.

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

commit 4ca952ac3fa90cc373192bb96a3ddbdfd71f9f21
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 17 23:45:18 2009 +0000

    Revert accidental commit.

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

commit af37dac175cdf3ea8698ecc653c0f4d978a352f0
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 17 23:42:32 2009 +0000

    Turn off critical edge splitting for landing pads. The introduction of a
    non-landing pad basic block as the successor to a block that ends in an
    unconditional jump will cause block folding to remove the added block as a
    successor. Thus eventually removing it AND the landing pad entirely. Critical
    edge splitting is an optimization, so we can safely turn it off when dealing
    with landing pads.

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

commit b246171d0203ce94b4403d68fd8aa7eead2c998a
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Dec 17 22:44:34 2009 +0000

    Revert r91623 to unbreak the buildbots.

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

commit bf3381db96461b1fd215fae3feaf559e7aeb3f96
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Thu Dec 17 22:42:29 2009 +0000

    Allow instcombine to combine "sext(a) >u const" to "a >u trunc(const)".

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

commit 9bc1fde05ecc916e64ad0f39feb6c5d14fb5cfe4
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Dec 17 21:35:29 2009 +0000

    Don't codegen available_externally functions.  Fixes http://llvm.org/PR5735.

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

commit 459ca567824a4f39cf8ad280401de1ec15d5bc2b
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Thu Dec 17 21:27:47 2009 +0000

    Make the ptrtoint comparison simplification work if one side is a global.

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

commit fe77cf2b9eda42bd7f805e0f1c853ffae9739c10
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 17 21:23:58 2009 +0000

    Remove an unused option.

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

commit 8f109efcd44af6875cd87dc939bbcf2f6777ea9a
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 17 21:23:46 2009 +0000

    tabs -> spaces.

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

commit f1ff2c77af0c898a7673f1ff16e8ecda1a443357
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Thu Dec 17 21:07:31 2009 +0000

    Slightly generalize transformation of memmove(a,a,n) so that it also applies
    to memcpy. (Such a memcpy is technically illegal, but in practice is safe
    and is generated by struct self-assignment in C code.)

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

commit 15408333ed53187bf1c886db1756b38c9aac9c6d
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Dec 17 21:02:39 2009 +0000

    Make Path use StringRef instead of std::string where possible.

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

commit 3da0d8c2d10e49cd7df0e2ba33247580dcf57645
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 17 20:41:01 2009 +0000

    Temporarily revert 91337. It's causing testcase failures.

    $ svn merge -c -91337 https://llvm.org/svn/llvm-project/llvm/trunk
    --- Reverse-merging r91337 into '.':
    U    lib/CodeGen/AsmPrinter/DwarfException.cpp

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

commit 1898b53fca4fe2862b5404a3a80a802620060020
Author: Steve Naroff <snaroff@apple.com>
Date:   Thu Dec 17 20:39:34 2009 +0000

    Fix Windows build breakage...

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

commit afb4e48b3b1ab458736885d32d33ff550bb4a503
Author: Ken Dyck <cfe-commits@cs.uiuc.edu>
Date:   Thu Dec 17 20:09:43 2009 +0000

    Introduce EVT::getHalfSizedIntegerVT() for use in ExpandUnalignedStore() in
    LegalizeDAG.cpp. Unlike the code it replaces, which simply decrements the simple
    type by one, getHalfSizedIntegerVT() searches for the smallest simple integer
    type that is at least half the size of the type it is called on. This approach
    has the advantage that it will continue working if a new value type (such as
    i24) is added to MVT.

    Also, in preparation for new value types, remove the assertions that
    non-power-of-2 8-bit-mutiple types are Extended when legalizing extload and
    truncstore operations.

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

commit cfb5c54ba03e4b004314dfce5eeec919471a5fb9
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 17 20:00:21 2009 +0000

    finish cleaning up StructLayoutMap.

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

commit f3c8e732244684983ee5f9526d71ae636d5823c0
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Dec 17 19:55:06 2009 +0000

    This fixes a memory leak in OpaqueType found by Google's internal heapchecker.

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

commit 878ec1002b2f3232687cd932ef029b403b46feda
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Dec 17 19:07:19 2009 +0000

    Fix unused variable warning.

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

commit 11f4e3ba76bd0cce3d9e4ad622c294b23b6c0db9
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Dec 17 18:34:24 2009 +0000

    Re-revert 91459.  It's breaking the x86_64 darwin bootstrap.

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

commit 0bbe84e28cb5f73f1a84c487086144b39b257358
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 17 18:03:12 2009 +0000

    Remove debugging code.

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

commit 5a461bf3a0e2b3e4cffa9fd3130d5fbcfe1ada8e
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Dec 17 17:18:11 2009 +0000

    Add more detail for getting started on Windows.

    Patch from jon.forums at gmail.com

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

commit 5f7bbf56080ea6adfaeac4cea32a6934bfeb81ee
Author: Ken Dyck <cfe-commits@cs.uiuc.edu>
Date:   Thu Dec 17 15:31:52 2009 +0000

    In LowerEXTRACT_VECTOR_ELT, force an i32 value type for PEXTWR instead of
    incrementing the simple value type of the 16-bit type, which would give the
    wrong type if an intemediate MVT (such as i24) were introduced.

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

commit 38e52386fcf379c1a97c557bf81c345fd1233a04
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 17 09:39:49 2009 +0000

    Revert 91280-91283, 91286-91289, 91291, 91293, 91295-91296. It apparently introduced a non-deterministic behavior in the optimizer somewhere.

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

commit 75192f45c3fe86b5afe94a303a0cbbe0dbed923c
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Dec 17 07:49:26 2009 +0000

    Regenerate.

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

commit 098d20a0ba341dd7f3db8ffbf3ec908fb60b0be1
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Dec 17 07:49:16 2009 +0000

    Add a 'set_option' action for use in OptionPreprocessor.

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

commit 410ace8ad7a9495dc9ab4a111bc220426ecf17fd
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Dec 17 07:48:49 2009 +0000

    Refactoring, no functionality change.

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

commit 4bd5523d989fddfb885d2b4c33058530919b21af
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Dec 17 07:48:34 2009 +0000

    s/TokenizeCmdline/TokenizeCmdLine/

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

commit 7c3da9b61ecc4532780f2503832dd9f1e18f4130
Author: Chandler Carruth <chandlerc@gmail.com>
Date:   Thu Dec 17 06:35:17 2009 +0000

    Update CMake build to include HexDisassembler.cpp.

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

commit a06cd190d48a95b42f2226fb6bcfbe263ffc2dc3
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Thu Dec 17 06:07:04 2009 +0000

    Aggressively flip compare constant expressions where appropriate; constant
    folding in particular expects null to be on the RHS.

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

commit 3c06eac1ead1ee19d5da7f6244fc1eba2ca17240
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Dec 17 05:07:36 2009 +0000

    Fix a comment grammaro.

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

commit b1d966ed5e666c21c6bef2178778f11b006e8211
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Dec 17 05:05:36 2009 +0000

    BIT_CONVERT nodes are used for vector types, too.

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

commit 72af3d737fd75f62999dec911911103f41aba75a
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Dec 17 01:49:59 2009 +0000

    Test harness for the LLVM disassembler.  When invoked
    with -disassemble, llvm-mc now accepts lines of the
    form
    0x00 0x00
    and passes the resulting bytes to the disassembler for
    the chosen (or default) target, printing the result.

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

commit 7d8baee6a05ca3383f39a5745c3c93aeb09aa749
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 17 00:40:05 2009 +0000

    Revert this dag combine change:
    Fold (zext (and x, cst)) -> (and (zext x), cst)

    DAG combiner likes to optimize expression in the other way so this would end up cause an infinite looping.

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

commit 8ae68e420a7fd0e4bc77674860a3d2fb619a3b15
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Wed Dec 16 23:36:52 2009 +0000

    Renamed "tCMNZ" to "tCMNz" to be consistent with other similar namings.

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

commit 0be22d12589480b482126c2d8eb816a9590d54d8
Author: John McCall <rjmccall@apple.com>
Date:   Wed Dec 16 20:31:50 2009 +0000

    Silence a clang warning about the deprecated (but perfectly reasonable in
    context) increment-of-bool idiom.

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

commit b3fc6a97363135cc1bf0f825a2424b1faf53eb26
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 16 20:10:05 2009 +0000

    Reapply r91392, it was only unmasking the bug, and since TOT is still broken having it reverted does no good.

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

commit 1c9fe58fab7095cbd17c99970631f5c3c9044a94
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 16 20:09:53 2009 +0000

    Reapply r91459, it was only unmasking the bug, and since TOT is still broken having it reverted does no good.

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

commit 724d7a167ac9c576db2e9217adfbee9ac8cd7b24
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Dec 16 19:44:06 2009 +0000

    Mark STREX* as earlyclobber for the success result register.

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

commit ef786f2f846f89ff2675dd29e74c517d24db0d24
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Dec 16 19:43:02 2009 +0000

    Add @earlyclobber TableGen constraint

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

commit 4e7896b88c383b5c64ddf574995fbafb4105884c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 16 19:36:42 2009 +0000

    Remove superfluous 'extern' variable that was causing a warning with clang.

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

commit 87450c87ff52d57481df9e6263f9a1b68cc8005a
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Dec 16 18:55:53 2009 +0000

    Reuse lowered phi nodes.

    Tail duplication produces lots of identical phi nodes in different basic
    blocks. Teach PHIElimination to reuse the join registers when lowering a phi
    node that is identical to an already lowered node. This saves virtual
    registers, and more importantly it avoids creating copies the the coalescer
    doesn't know how to eliminate.

    Teach LiveIntervalAnalysis about the phi joins with multiple uses.

    This patch significantly reduces code size produced by -pre-regalloc-taildup.

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

commit 903dc204e38ab5efaef573815ac96a6c2028c495
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 16 11:38:03 2009 +0000

    Fix one more missing this-> to placate that picky clang++.

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

commit 53dee55036da98a51831d75dfc9f704a91cd5f48
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 16 10:56:17 2009 +0000

    Revert "Reapply 91184 with fixes and an addition to the testcase to cover the
    problem", this broke llvm-gcc bootstrap for release builds on
    x86_64-apple-darwin10.

    This reverts commit db22309800b224a9f5f51baf76071d7a93ce59c9.

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

commit e95e6c2b9690abed80c74de593f537d230318a98
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 16 10:56:02 2009 +0000

    Revert "Initial work on disabling the scheduler. This is a work in progress, and
    this", this broke llvm-gcc bootstrap for release builds on
    x86_64-apple-darwin10.

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

commit 325984d0b8274e8b0b891df078f74f8330a24a2e
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 09:32:05 2009 +0000

    reapply my strstr optimization.  I have reproduced the x86-64 bootstrap
    miscompile (i386.o miscompares) but it happens both with and without
    this patch.

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

commit a967657dbc081c7a72a734688e073bead60492f5
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 09:17:12 2009 +0000

    fix more missing this->'s to placate clang++

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

commit 1306a7b58af44ff7d4d3d55fb55f05d90dc17b51
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 09:09:54 2009 +0000

    Fix a missing this-> that clang++ notices.

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

commit bb29769774962df2dcb7a31f8bd158a0f6871ceb
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:44:24 2009 +0000

    now that libsystem no longer uses SmallVector, we can move
    SmallVectorBase::grow_pod out of line, finally satisfying PR3758.

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

commit a01522ef1c2bb894f01f20481aeec71b41760c2a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:40:44 2009 +0000

    remove use of SmallVector from Path::makeUnique.  Path::makeUnique
    is not used by anything performance sensitive, so just use std::string.

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

commit 75d7b5b99547063514152db411a60befc99f5302
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:35:54 2009 +0000

    eliminate an extraneous use of SmallVector in a case where
    a fixed size buffer is perfectly fine.

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

commit 3ab8c0e1d42d4ee44349b7b1f51e5130b9c12530
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:34:40 2009 +0000

    factor out the grow() method for all pod implementations into one
    common function.  It is still an inline method, which will be fixed next.

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

commit dd44d1b21d8f77f7d3015d258383337dc6646780
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Dec 16 08:10:57 2009 +0000

    Use different name for argument and field

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

commit b9e74f2cb039a0d6581861171f4c7f42d0880f25
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:09:23 2009 +0000

    pull destroy_range and uninitialized_copy up to the
    SmallVectorTemplateBase class, which allows us to statically
    dispatch on isPodLike instead of dynamically.

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

commit d8d02743d04afde76e9bfa7ba918911f40a9b1cb
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 08:05:48 2009 +0000

    sink most of the meat in smallvector back from SmallVectorTemplateCommon
    down into SmallVectorImpl.  This requires sprinking a ton of this->'s in,
    but gives us a place to factor.

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

commit 59ebf30b613ebf2617a1519fbd0dbc1f2b4aeb13
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Wed Dec 16 07:35:25 2009 +0000

    Make this test pass on Linux.

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

commit 3521fb7b3e549c489faebd76084d86a1c30cba8a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 06:55:45 2009 +0000

    substantial refactoring of SmallVector, now most code is in SmallVectorTemplateCommon,
    and there is a new SmallVectorTemplateBase class in between it and SmallVectorImpl.
    SmallVectorTemplateBase can be specialized based on isPodLike.

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

commit a6b8642f72c98125b56e34469baaed50819ef2a2
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Dec 16 02:52:09 2009 +0000

    MDNodes that refer to an instruction are local to a function; in that case, explicitly keep track of the function they are local to

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

commit aa640d3fc7563e889ef2ef93994b4c6ff38933f1
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Wed Dec 16 02:32:54 2009 +0000

    Add encoding bits for some Thumb instructions.  Plus explicitly set the top two
    bytes of Inst to 0x0000 for the benefit of the Thumb decoder.

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

commit 95150a6fa59d69f01bcd481e9bb2dc937c548107
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Dec 16 02:11:38 2009 +0000

    XFAIL on ppc-darwin.

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

commit edeb169061593870ac603ab898a58d4db579d162
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 16 00:53:11 2009 +0000

    Re-enable 91381 with fixes.

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

commit 1ea083faf048bcaa812098ebdc3f55c0ddcc1687
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 16 00:46:02 2009 +0000

    revert my strstr optimization, I'm told it breaks x86-64 bootstrap.

    Will reapply with a fix when I get a chance.

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

commit 5d25f9bbd3a3106239e6b957c233b598d36576fe
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Dec 16 00:29:41 2009 +0000

    Do better with physical reg operands (typically, from inline asm)
    in local register allocator.  If a reg-reg copy has a phys reg
    input and a virt reg output, and this is the last use of the phys
    reg, assign the phys reg to the virt reg.  If a reg-reg copy has
    a phys reg output and we need to reload its spilled input, reload
    it directly into the phys reg than passing it through another reg.

    Following 76208, there is sometimes no dependency between the def of
    a phys reg and its use; this creates a window where that phys reg
    can be used for spilling (this is true in linear scan also).  This
    is bad and needs to be fixed a better way, although 76208 works too
    well in practice to be reverted.  However, there should normally be
    no spilling within inline asm blocks.  The patch here goes a long way
    towards making this actually be true.

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

commit b6bf5b926d84470a0527691b20f60c31f6bf7978
Author: John McCall <rjmccall@apple.com>
Date:   Wed Dec 16 00:15:28 2009 +0000

    Every anonymous namespace is different.  Caught by clang++.

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

commit 86dd20e4ab83c6d96b5a526bc95fc0ee6170e4ec
Author: John McCall <rjmccall@apple.com>
Date:   Wed Dec 16 00:13:24 2009 +0000

    Explicit template instantiations must happen in the template's immediately
    enclosing namespace.  Caught by clang++.

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

commit bf525e4cf50311df9aa8ed97d0eaf81a49fa6c3d
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 16 00:08:36 2009 +0000

    Helpful comment added. Some code cleanup. No functional change.

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

commit 7cb7f462c39ffc68a5fe873078c2bb545c44f086
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 16 00:01:27 2009 +0000

    Initialize uninitialized variables.

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

commit 9d8b6523d77b512dc276857e3e58e1b226856445
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 16 00:00:18 2009 +0000

    Initialize uninitialized variables.

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

commit 43a22289bdf5f2e1d884de469b9ab5b849c077b7
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Tue Dec 15 22:42:46 2009 +0000

    Change indirect-globals to use a dedicated allocIndirectGV.  This lets us
    remove start/finishGVStub and the BufferState helper class from the
    MachineCodeEmitter interface.  It has the side-effect of not setting the
    indirect global writable and then executable on ARM, but that shouldn't be
    necessary.

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

commit d91158b66c9ed1337bdad3741a2a1bbb78525d69
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 15 22:42:19 2009 +0000

    Some command lines don't like numbers with leading zeros. Remove them.

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

commit 2c03fdc0413fbc193bca3214907aa7827f3a0a11
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Dec 15 22:00:51 2009 +0000

    Reapply 91184 with fixes and an addition to the testcase to cover the problem
    found last time.  Instead of trying to modify the IR while iterating over it,
    I've change it to keep a list of WeakVH references to dead instructions, and
    then delete those instructions later.  I also added some special case code to
    detect and handle the situation when both operands of a memcpy intrinsic are
    referencing the same alloca.

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

commit 91978076a03bdda4a5c8167436659916e4a31621
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 15 22:00:37 2009 +0000

    lit: Improve error when gtest discovery fails.

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

commit 8f4f994c3cefa11b5df46f4aaaab86b15d4d4504
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 15 20:21:44 2009 +0000

    Revert 90628, which was incorrect.

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

commit 51260423ed052b52a4246c7643d33cb7750f3bd0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 15 19:34:20 2009 +0000

    Fix GetConstantStringInfo to not look into MDString (it works on
    real data, not metadata) and fix DbgInfoPrinter to not abuse
    GetConstantStringInfo.

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

commit 465e633b903c1418bcf46021b2b1e02974505c8c
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Dec 15 19:28:13 2009 +0000

    whitespace

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

commit 8287d66aee7d877aaa80a3fb40cc90580e669493
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 15 19:16:48 2009 +0000

    Add support to emit debug info for C++ namespaces.

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

commit a5b475def3406f1175162574ccbe300f9ab61bfd
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 15 19:14:40 2009 +0000

    optimize strstr, PR5783

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

commit 0d810c281064e69c6a0cab4f9f43870628628566
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Tue Dec 15 17:24:14 2009 +0000

    Added encoding bits for the Thumb ISA.  Initial checkin.

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

commit 7725021a32f9cb0f289b052a953ea77bfcda2bcf
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 15 16:30:09 2009 +0000

    Delete an unused function.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91432 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-28 19:44:08 +02:00
Török Edvin
d58f4f0a0f Update to LLVM upstream SVN r91214.
Squashed commit of the following:

commit 2fdb8cfc44fb50a50bda26ac7774692a15c00412
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Dec 12 09:25:50 2009 +0000

    Fix some CHECK lines which were ignored by accident.

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

commit cbfd1ed3c3d611d3d36d6853b99f6d615eaf96f1
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Dec 12 06:18:46 2009 +0000

    Revert r91208.  Something on Linux prevents the JIT from looking up a symbol
    defined in the test, and I don't have time tonight to figure it out.

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

commit fcfc5e88a362367990b85c708d9656c9e9150f5e
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Dec 12 05:58:14 2009 +0000

    Fix available_externally linkage for globals.  It's probably still not
    supported by emitGlobals, but I don't have a test case for that.

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

commit 37fa76624c9c11ec6745b5b609a8b537f0cd8425
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Dec 12 04:08:32 2009 +0000

    Make it easier to use the llvm_unreachable and DEBUG macros without "using
    namespace llvm" by qualifying their implementations with ::llvm::.

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

commit 241896971376c9bf4b5856c44c65084c8bf6e3cb
Author: Jim Grosbach <grosbach@apple.com>
Date:   Sat Dec 12 01:40:06 2009 +0000

    Framework for atomic binary operations. The emitter for the pseudo instructions
    just issues an error for the moment. The front end won't yet generate these
    intrinsics for ARM, so this is behind the scenes until complete.

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

commit 4407a9dd3a5829f2385c49b2cdbe96c33076c384
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 11 23:47:40 2009 +0000

    Revise scalar replacement to be more flexible about handle bitcasts and GEPs.
    While scanning through the uses of an alloca, keep track of the current offset
    relative to the start of the alloca, and check memory references to see if
    the offset & size correspond to a component within the alloca.  This has the
    nice benefit of unifying much of the code from isSafeUseOfAllocation,
    isSafeElementUse, and isSafeUseOfBitCastedAllocation.  The code to rewrite
    the uses of a promoted alloca, after it is determined to be safe, is
    reorganized in the same way.

    Also, when rewriting GEP instructions, mark them as "in-bounds" since all the
    indices are known to be safe.

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

commit 552423de4ce3985cee3e44d2b34afc81aef5b5b4
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 11 23:26:08 2009 +0000

    Delete an unnecessary line. The VTSDNode on a SIGN_EXTEND_REG is never
    a vector type.

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

commit f40cec0ee6d37ccce844d771f177f33c929a4b86
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Dec 11 23:01:29 2009 +0000

    Lower setcc branchless, if this is profitable.
    Based on the patch by Brian Lucas!

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

commit 3dd8cadf857bd134ef24aebb48aa22278cedaff1
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 11 21:47:36 2009 +0000

    Don't try to move a MBB into the fall-through position if it's a landing pad or
    branches only to a landing pad. Without this check, the compiler would go into
    an infinite loop because the branch to a landing pad is an "abnormal" edge which
    wasn't being taken into account.

    This is the meat of that fix:

      if (!PrevBB.canFallThrough() && !MBB->BranchesToLandingPad(MBB)) {

    The other stuff is simplification of the "branches to a landing pad" code.

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

commit b9f2c6bf74e416fb21026ef9c779c6c4cdbce9d4
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Dec 11 21:37:07 2009 +0000

    Construct CompileUnits lazily.

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

commit 9d501bd6024424a0d85836f2e61a5fcd3f717d23
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 11 21:31:27 2009 +0000

    Implement vector widening, splitting, and scalarizing for SIGN_EXTEND_INREG.

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

commit c6095894e7cd3c7144575ba6e2596bb5a3d3adc0
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Dec 11 20:29:53 2009 +0000

    memory barrier instructions by definition have side effects. This prevents the post-RA scheduler from moving them around.

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

commit 432c8afd5e7ab193fbf348436da8c4d88a780f93
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 11 20:09:21 2009 +0000

    Change this to the correct PR number.

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

commit 10ef46f126972755ae7dac376fc98f26ddd31dfc
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 11 20:05:23 2009 +0000

    Make getUniqueExitBlocks's precondition assert more precise, to
    avoid spurious failures. This fixes PR5758.

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

commit 2c4c4dc0dc9c48f7ec593798916cab05c68ec44b
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 11 19:50:50 2009 +0000

    Fix the result type of SELECT nodes lowered from Select instructions with
    aggregate return values. This fixes PR5754.

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

commit 7767af5f34dccb5d093cd46004f2f2687095019c
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Dec 11 19:39:55 2009 +0000

    Honour setHasCalls() set from isel.
    This is used in some weird cases like general dynamic TLS model.
    This fixes PR5723

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

commit 7e6324988a184400c4a79d684746f91c3c5bfad3
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Fri Dec 11 19:37:26 2009 +0000

    Store Register Exclusive should leave the source register Inst{3-0} unspecified.

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

commit 7853967b2bec37e6093fa595cc42aabbad964059
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Dec 11 18:52:41 2009 +0000

    Update properties.

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

commit efa9046e1673863e2b091556e5c92b834cc4bdf5
Author: Gabor Greif <ggreif@gmail.com>
Date:   Fri Dec 11 15:30:07 2009 +0000

    Simplify this class by removing the result cache.

    This change removes the DefaultConstructible
    and CopyAssignable constraints on the template
    parameter T (the first one).

    The second template parameter (R) is defaulted to be
    identical to the first and controls the result type.
    By specifying it to be (const T&) additionally the
    CopyConstructible constraint on T can be removed.

    This allows to use StringSwitch e.g. for llvm::Constant
    instances.

    Regarding the other review feedback regarding performance
    because of taking pointers, this class should be completely
    optimizable like before, since all methods are inline and
    the pointer dereferencing and result value caching should be
    possible behind the scenes by the "as-if" rule.

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

commit 624ebdda54ecb7db70ffb105148e68dd34940f8e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 11 10:43:41 2009 +0000

    Revert part of r91101 which was causing an infinite loop in the self-hosting
    build bots.

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

commit 9039ae61fdf29b92f04b84e85c13d0119fa39268
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Dec 11 08:36:17 2009 +0000

    Add utility method for determining whether a function argument
    has the 'nest' attribute.

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

commit b880e97295cce0cffac154c7643945435cede34d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 11 06:02:21 2009 +0000

    Tests for 91103 and 91104.

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

commit f031da831176f05449c6c0dd32f45f2fca403f2d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 11 06:01:48 2009 +0000

    Add support to 3-addressify 16-bit instructions.

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

commit f486334d5c3e5d686f35f5fb9594842a76596496
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 11 06:01:00 2009 +0000

    Coalesce insert_subreg undef, x first to avoid phase ordering issue.

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

commit 4d2fd87d90f53f74faab9b231809bad929ffdf28
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 11 03:14:18 2009 +0000

    Address comments on last patch:

    - Loosen the restrictions when checking of it branches to a landing pad.
    - Make the loop more efficient by checking the '.insert' return value.
    - Do cheaper checks first.

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

commit 573d1d59306f14c74a519b77e1d677e9a6df3a65
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 11 01:49:14 2009 +0000

    A machine basic block may end in an unconditional branch, however it may have
    more than one successor. Normally, these extra successors are dead. However,
    some of them may branch to exception handling landing pads. If we remove those
    successors, then the landing pads could go away if all predecessors to it are
    removed. Before, it was checking if the direct successor was the landing
    pad. But it could be the result of jumping through multiple basic blocks to get
    to it. If we were to only check for the existence of an EH_LABEL in the basic
    block and not remove successors if it's in there, then it could stop actually
    dead basic blocks from being removed.

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

commit 437d699dc2b7e690254435cb93d7bbd21bb88217
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Dec 11 01:42:04 2009 +0000

    Rough first pass at compare_and_swap atomic builtins for ARM mode. Work in progress.

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

commit 307e718947561a527c51e03e38cd77ca1efc6998
Author: Anders Carlsson <andersca@mac.com>
Date:   Fri Dec 11 01:04:42 2009 +0000

    Add qualifiers for calls to member functions in dependent bases.

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

commit 6d47963bc2b99fc828e706072d94b4faab5c6703
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 10 23:25:41 2009 +0000

    If VariableDIe is not created (may be because global was optimzed away) then do not try to use the variable die.

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

commit fcd3705bd25d9e1406adc67a11b200f8454d840e
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Dec 10 21:11:40 2009 +0000

    Add a test for the fix in revision 91009.

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

commit fda100228c44e2ce87a2059d879c3da7f6cf043d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 10 20:59:45 2009 +0000

    It's not safe to coalesce a move where src and dst registers have different subregister indices. e.g.:
    %reg16404:1<def> = MOV8rr %reg16412:2<kill>

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

commit 8d73e4308d9773535794f2f00ea213981310a6ba
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Dec 10 19:52:22 2009 +0000

    Remove a broken, unused header

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

commit 1a8f9a8322f0de194328f3ab2cbf941504015f5f
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 10 19:14:49 2009 +0000

    Refactor code that finds context for a given die.
    Create global variable DIEs after creating subprogram DIEs. This allows function level static variable's to find their context at the time of DIE creation.

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

commit 37582c3385a5259c279f4da155b7659f4272ff71
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Dec 10 18:35:32 2009 +0000

    Add instruction encoding for DMB/DSB

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

commit 7f139c19245027f4f367bf09db322e16ceca76f5
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 10 18:05:33 2009 +0000

    Refactor.

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

commit a0f793a956a6aeff1386647a714c627102bfdc88
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Dec 10 17:48:32 2009 +0000

    Also attempt trivial coalescing for live intervals that end in a copy.

    The coalescer is supposed to clean these up, but when setting up parameters
    for a function call, there may be copies to physregs. If the defining
    instruction has been LICM'ed far away, the coalescer won't touch it.

    The register allocation hint does not always work - when the register
    allocator is backtracking, it clears the hints.

    This patch is more conservative than r90502, and does not break
    483.xalancbmk/i686. It still breaks the PowerPC bootstrap, so it is disabled
    by default, and can be enabled with the -trivial-coalesce-ends option.

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

commit 6d9ba4b1d7364823556c97a78142ecd28048e3a3
Author: Edwin Török <edwintorok@gmail.com>
Date:   Thu Dec 10 10:01:47 2009 +0000

    Comparing std::string with NULL is a bad idea, so just check whether its empty.

    This code was crashing always with oprofile enabled, since it tried to create a StringRef
    out of NULL, which run strlen on NULL.

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

commit a4ea68be726443c35446332dbdeff00f42f7e48b
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Dec 10 00:25:41 2009 +0000

    Make sure the immediate dominator isn't NULL through iterations
    of the loop. We could get to this condition via indirect
    branches.

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

commit c97c9a0f7c7aa3572a819aef0315a6ddb7a2dfe8
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 10 00:11:45 2009 +0000

    Fix PR5744, a case where we were getting the pointer size instead of the
    value size.  This only manifested when memdep inprecisely returns clobber,
    which is do to a caching issue in the PR5744 testcase.  We can 'efficiently
    emulate' this by using '-no-aa'

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

commit ba744f662e83517b2b940145a24d6cbb453f52f9
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Dec 10 00:11:09 2009 +0000

    Add memory barrier intrinsic support for ARM. Moving towards adding the atomic operations intrinsics.

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

commit e559e790ba60791726da785535d194ca71f47dee
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 10 00:04:46 2009 +0000

    allow this to build when the #if 0's are enabled.  No functionality change.

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

commit 6ab68f2d2516ed58e49016dfca15e2ad4bc865e6
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Dec 9 22:55:01 2009 +0000

    Dereference loopHeader after checking for null rather than before.

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

commit 5252e89c88fc55ce4b4842b600031f6ca536dc5d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 22:24:42 2009 +0000

    Fix test.

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

commit e31a26af8b770854d3a630081e74ee52899482b4
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 21:00:30 2009 +0000

    Optimize splat of a scalar load into a shuffle of a vector load when it's legal. e.g.
    vector_shuffle (scalar_to_vector (i32 load (ptr + 4))), undef, <0, 0, 0, 0>
    =>
    vector_shuffle (v4i32 load ptr), undef, <1, 1, 1, 1>

    iff ptr is 16-byte aligned (or can be made into 16-byte aligned).

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

commit eef9c8f43d719d072f7f027510125f45a0e02956
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Dec 9 18:48:53 2009 +0000

    Reuse the Threshold value to size these containers because it's
    currently somewhat convenient for them to have the same value.

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

commit fe0be137457e5a2fe51000ed2844f888e9e19b64
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Dec 9 18:24:21 2009 +0000

    Reapply r90858, a cleanup patch.

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

commit 091a1d20fcf979b5f266fa2b085215bc3bfe2d46
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 18:21:46 2009 +0000

    fix hte last remaining known (by me) phi translation bug.  When we reanalyze
    clobbers to forward pieces of large stores to small loads, we need to consider
    the properly phi translated pointer in the store block.

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

commit 2737cb4b2a2a648f07f3272d932ba564a03a368a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 18:13:28 2009 +0000

    change GetStoreValueForLoad to use IRBuilder, which is cleaner and
    implicitly constant folds.

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

commit 39d7706d74c6237258b9a78a4aaf841f28c58a1d
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Dec 9 18:05:27 2009 +0000

    Fix a comment.

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

commit 6e4661381e82fb4d6ba33d57155dcda400280d3a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 17:27:45 2009 +0000

    Add a minor optimization: if we haven't changed the operands of an
    add, there is no need to scan the world to find the same add again.
    This invalidates the previous testcase, which wasn't wonderful anyway,
    because it needed a run of instcombine to permute the use-lists in
    just the right way to before GVN was run (so it was really fragile).
    Not a big loss.

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

commit de76e8dccddd7578a9d52dd04bcf9ca36da417d8
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Wed Dec 9 17:26:02 2009 +0000

    Add note about loadable modules on windows.
    Patch by Gregory Petrosyan!

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

commit 13c6e945a6f59aca2d21b46c036521c59d1f61bc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 17:18:49 2009 +0000

    fix PR5733, a case where we'd replace an add with a lexically identical
    binary operator that wasn't an add.  In this case, a xor.  Whoops.

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

commit 9b4ae24a6d11afa1453e2cfce2c702316ad7e093
Author: David Goodwin <david_goodwin@apple.com>
Date:   Wed Dec 9 17:18:22 2009 +0000

    <rdar://problem/7453528>. Track only physical registers that are valid for the target.

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

commit e1ab6f944f31f5db68788036bb48cc6fef160be6
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 17:17:26 2009 +0000

    merge crash-2.ll into crash.ll

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

commit 179201113b146232ba8ed6cc32c3b7c1b0cdd481
Author: Eric Christopher <echristo@apple.com>
Date:   Wed Dec 9 08:29:32 2009 +0000

    Silence conversion warning from 64 to 32-bit.

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

commit fd9feaabf12a8dd559794b5a779d12c9a5e9dfa3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 07:37:07 2009 +0000

    change AnalyzeLoadFromClobberingMemInst/AnalyzeLoadFromClobberingStore
    to require the load ty/ptr to be passed in, no functionality change.

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

commit 598abfd68824c718b392e6da1ff78a278b390bdf
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 07:34:10 2009 +0000

    change AnalyzeLoadFromClobberingWrite and clients to pass in type
    and pointer instead of the load.  No functionality change.

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

commit ca02fc16abf5caf64bf21a3efdad9b52368591c5
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 07:31:04 2009 +0000

    enhance NonLocalDepEntry to keep the per-block phi translated address
    of the query.

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

commit c831c64f16749af9b1a782ace983aee600d59c43
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 9 07:19:48 2009 +0000

    DeltaAlgorithm: Add a virtual destructor and home.

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

commit 1a957967ec0e908f69717c8887d427eeaee8e5fc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 07:08:01 2009 +0000

    change NonLocalDepEntry from being a typedef for an std::pair to be its
    own small class.  No functionality change.

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

commit 75730ab628f309e281beab31cb081b7487579f6e
Author: Lang Hames <lhames@gmail.com>
Date:   Wed Dec 9 05:39:12 2009 +0000

    Added a new "splitting" spiller.

    When a call is placed to spill an interval this spiller will first try to
    break the interval up into its component values. Single value intervals and
    intervals which have already been split (or are the result of previous splits)
    are spilled by the default spiller.

    Splitting intervals as described above may improve the performance of generated
    code in some circumstances. This work is experimental however, and it still
    miscompiles many benchmarks. It's not recommended for general use yet.

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

commit 22a458ae9214261c3e420910fb22ee81c358395d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 9 03:26:33 2009 +0000

    Remove spurious extern.

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

commit fd96f3416558738874517ad53b30b0fa13fac75f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Dec 9 02:58:09 2009 +0000

    Remove unneeded ';' and a class/struct mismatch (noticed by clang).

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

commit 521f16433f6a3ae9e35a47efc577dcb9162a01ef
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 02:43:05 2009 +0000

    the code in GVN that tries to forward large loads to small
    stores is not phi translating, thus it miscompiles really
    crazy testcases.  This is from inspection, I haven't seen
    this in the wild.

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

commit 4c61909de5f6f6a721080017aa11ab846b24bdfb
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 02:41:54 2009 +0000

    add some aborts to #if 0's.

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

commit efff322bd17b640f544a1d28c580b59499a28ff8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 01:59:31 2009 +0000

    Switch GVN and memdep to use PHITransAddr, which correctly handles
    phi translation of complex expressions like &A[i+1].  This has the
    following benefits:

    1. The phi translation logic is all contained in its own class with
       a strong interface and verification that it is self consistent.

    2. The logic is more correct than before.  Previously, if intermediate
       expressions got PHI translated, we'd miss the update and scan for
       the wrong pointers in predecessor blocks.  @phi_trans2 is a testcase
       for this.

    3. We have a lot less code in memdep.

    We can handle phi translation across blocks of things like @phi_trans3,
    which is pretty insane :).

    This patch should fix the miscompiles of 255.vortex, and I tested it
    with a bootstrap of llvm-gcc, llvm-test and dejagnu of course.

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

commit 76ebe86e74ce108a129259fb52663edb0483da9d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 01:53:58 2009 +0000

    Teach InferPtrAlignment to infer GV+cst alignment and use it to simplify x86 isl lowering code.

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

commit ada03e86adc6f39bc024e7e147f4e8a84929c6b2
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Dec 9 01:46:00 2009 +0000

    Remove tests that are not suitable anymore. Plus they are not testing the original bugfixes anymore. These tests were inserted to check bug fixes in code that handled debug info intrinsics. These intrinsics are no longer used and now llvm parser simply ignores old .dbg intrinsics from these dead tests.

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

commit 1a029cbee8f0bb7d1798aa474bdc46f017ba1871
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 01:36:00 2009 +0000

    Move isConsecutiveLoad to SelectionDAG. It's not target dependent and it's primary used by selectdag passes.

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

commit 3b1d6462fe599fc9e17811b2d6bc8fad77183647
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 01:19:16 2009 +0000

    fix a nasty variable that was shadowing the real CurBB but with the wrong value.

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

commit a711e2664a880bc4b941d2690371cf811167bf95
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 01:17:24 2009 +0000

    Infer alignment for non-fixed stack object.

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

commit d3caa135e4a12b56cf586dc4d2a3d89d821b2f46
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 01:10:37 2009 +0000

    Add const qualifier.

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

commit 684647dabc65cd039ddd73daf25112d1b6a98072
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 9 01:04:59 2009 +0000

    Refactor InferAlignment out of DAGCombine.

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

commit a3d7e0b6f0723224cf9db5b12d41d0bc82948782
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 00:56:14 2009 +0000

    fix many input tracking bugs.

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

commit cb8c775db77dfe0194a6169f437342eacaa46792
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 00:41:28 2009 +0000

    when opt crashes, print its command line arguments as a pretty stack trace.
    Somehow opt was missed when this was added.

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

commit aa30b76c39c82f6e0973d597511c9a6980a914d4
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Dec 9 00:28:42 2009 +0000

    Fix a typo in a comment, and adjust SmallSet and SmallVector sizes,
    that Chris noticed.

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

commit 604d78539ab4276a96f99287599fe6b341707dc0
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 00:18:13 2009 +0000

    fix PHI  translation to take the PHI out of the instinputs set and add
    the translated value back to it if an instruction.

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

commit 67f80492b9822f893a83641bb204d81e916f8d3e
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 00:10:55 2009 +0000

    instructions defined in CurBB may be intermediate nodes of the computation.

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

commit 7bc7cb6375e49b89417a44bddad4300ec5b2c5ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 9 00:01:00 2009 +0000

    add dumping and sanity checking support.

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

commit 096cad10650493a4addf69d3bdf81f2e2c38d943
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 8 23:59:12 2009 +0000

    Put a threshold on the number of users PointerMayBeCaptured
    examines; fall back to a conservative answer if there are
    more. This works around some several compile time problems
    resulting from BasicAliasAnalysis calling PointerMayBeCaptured.

    The value has been chosen arbitrarily.

    This fixes rdar://7438917 and may partially address PR5708.

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

commit c88612dd681daa28178107881b0526b5ad4b0d1c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 8 23:42:51 2009 +0000

    make sure that PHITransAddr keeps its 'InstInputs' list up to
    date when instsimplify kicks in.

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

commit de2d3688d9711628c15ee2b8410fa3e936ca698c
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 8 23:21:45 2009 +0000

    Revert 90858 90875 and 90805 for now.

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

commit 9e5c8a8cdfc3a0267b026851bf08a9507474578e
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Dec 8 23:06:22 2009 +0000

    - Support inline asm 'w' constraint for 128-bit vector types.
    - Also support the 'q' NEON registers asm code.

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

commit 1d9aeda1a20c306e7639e6df6613d570e793ab00
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 8 19:49:30 2009 +0000

    lit: Prevent crash-on-invalid (when run on directory which has no test suite).

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

commit bb331cbe3eb64ba46f885189aa8797c3027a69ea
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 8 19:48:01 2009 +0000

    Set svn:ignore on tools/clang.

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

commit 58c778873ae2dac1a1c615bf4cab3cd788ec4db9
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 8 19:47:36 2009 +0000

    CMake/lit: Add llvm_{unit_,}site_config parameters, and always pass them when running tests from the project files.

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

commit 6e56790b2a9d8fbdbbcba5750f646488f1073d9f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Dec 8 19:34:53 2009 +0000

    Revert 90789 for now. It caused massive compile time regression. Post-ra scheduler slowed down dramatically with this.

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

commit d11c2b3c143afb32f32fcc203190454a63fdd0c1
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Dec 8 18:27:03 2009 +0000

    Some superficial cleanups.

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

commit bb4b0d5499b3b7095b560734f1b47d26187ce644
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Dec 8 18:22:03 2009 +0000

    Clean up dead operands left around after SROA replaces a mem intrinsic.
    I'm not aware that this does anything significant on its own, but it's
    needed for another patch that I'm working on.

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

commit 7b294d7538f15995e446a6a2dd17965813133cc0
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 8 15:31:31 2009 +0000

    Cleanup.
    There is no need to supply ModuleCU to addType() as a parameter.

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

commit 23a55d34fc5a37cc60122ac3db057177f91e2528
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 8 15:01:35 2009 +0000

    Do not try to push dead variable's debug info into namespace info.

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

commit f8bbaf864380c3d5ea1c21d4fade7cb22fcced25
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Dec 8 13:07:38 2009 +0000

    Remove useless calls to c_str().

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

commit 35138e397b334bffa8f1c9121fa97f9129880d09
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Dec 8 10:10:20 2009 +0000

    Teach GlobalOpt to delete aliases with internal linkage (after
    forwarding any uses).  GlobalDCE can also do this, but is only
    run at -O3.

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

commit 3147011bdf615c47e44b7ffbc5e94263d42aa6ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 8 06:06:26 2009 +0000

    fix a typo (and -> add) and fix GetAvailablePHITranslatedSubExpr to not
    side-effect the current object.

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

commit 54518e654b0b98ffeefec0b0958500883ba2832a
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Dec 8 05:45:41 2009 +0000

    Remove unnecessary #include "llvm/LLVMContext.h".

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

commit 48df1cc8234d91de705451688bb54bbbe161d51a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 8 05:31:46 2009 +0000

    whitespace cleanup

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

commit 62d57ae9ef18b9cfaa8c3a977db1ed31694a03d5
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Tue Dec 8 02:49:54 2009 +0000

    Removed VC++ compatibility code from DataTypes.h.in.

    This header file is not used on VC++ builds.

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

commit da3ef8a038a93fa4b4879fd203abd2f9377ab977
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Tue Dec 8 02:40:09 2009 +0000

    For VC++, define the ?INT*_C macros only it they are not yet defined.

    Some compatibility updates like the Boost TR1 compatibility headers
    define them.

    Patch contributed by OvermindDL1!

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

commit 3caef71dd23157310e52ed947a2fb44579f79db3
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Dec 8 01:03:04 2009 +0000

    Reduce (cmp 0, and_su (foo, bar)) into (bit foo, bar). This saves extra instruction. Patch inspired by Brian Lucas!

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

commit 9688c52873170b7096ec6f7e13ddea8cb13ca6d8
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 23:11:03 2009 +0000

    Watch out for duplicated PHI instructions.

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

commit cb900da68f1eef3242a89e4f3f2078bbccb093b3
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 23:10:34 2009 +0000

    Follow up to 90488. Turn a check into an assertion.

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

commit d5d28ebb4b6d5cf3f6b15f0a1be3e3e82816b03b
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Mon Dec 7 22:32:38 2009 +0000

    Fix the OProfileJITEventListener for StringRef being returned from debug info.

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

commit 9a8b457e8247f989a5d6d19468fc23e7e48a7118
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Dec 7 21:54:43 2009 +0000

    Rename DIFactory::InsertValue() as DIFactory::InsertDbgValueIntrinsic()

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

commit 641f820036ddf1823bf6b175f4bab0034749b537
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Dec 7 21:41:32 2009 +0000

    Add support to emit debug info for c++ style namespaces.

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

commit 03cbedef57d2f8bba7823df2f17ffc29e089ba43
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 21:19:33 2009 +0000

    Delete code accidentally left behind.

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

commit b0f617ce7b174a87c19e6f21bcadecc68654ff38
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 7 19:52:57 2009 +0000

    fix typo

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

commit 78a0c48a34b4ae0f766bc94e841018cd9d3557ae
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 7 19:45:30 2009 +0000

    add accessor, improve comment.

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

commit 0ef78de4b1c6169cbee2671bbe2a4291d21231cf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 19:42:22 2009 +0000

    Test case for 90787.

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

commit ef778032ceda17e7b5209045d28761c5190b5730
Author: David Greene <greened@obbligato.org>
Date:   Mon Dec 7 19:40:26 2009 +0000

    Use FileCheck and set nounwind on calls.

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

commit 654f5abad31952e2e447a598635ba9ce3a582a45
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Dec 7 19:38:26 2009 +0000

    Apply Pekka Jääskeläinen's patch to raise the first virtual register
    number in order to accomodate targets with more than 1024 registers.

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

commit f2379900d4ebb0568cc18e7102f1d3567f2fabea
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Dec 7 19:36:34 2009 +0000

    Introduce the "@llvm.dbg.value" debug intrinsic.

    The semantics of llvm.dbg.value are that starting from where it is executed, an offset into the specified user source variable is specified to get a new value.

    An example:
      call void @llvm.dbg.value(metadata !{ i32 7 }, i64 0, metadata !2)
    Here the user source variable associated with metadata #2 gets the value "i32 7" at offset 0.

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

commit 6fc593ad30a6640abdcd0e27aefcfae35eb874f5
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 19:16:13 2009 +0000

    Simplify a bit.

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

commit 43f5c616b9938842aebaa8de4451aca52c408f04
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 19:15:57 2009 +0000

    Throw 'const char*' instead of 'std::string'.

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

commit 726e81006a54d5ee21372b593b6d0aebed32eade
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 7 19:04:49 2009 +0000

    add support for phi translation and incorpation of new expression.

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

commit ad1cc9c85c6ebd136855b133cfa0397741c2dcbf
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Dec 7 19:04:31 2009 +0000

    Don't enable the post-RA scheduler on x86 except at -O3. In its
    current form, it is too expensive in compile time.

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

commit a3fce13cb0bd4c4afcf1c28f788a398df6a560dc
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 7 18:36:53 2009 +0000

    checkpoint of the new PHITransAddr code, still not done and not used by
    anything.

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

commit e420496fa6dc7f2aa0cbec0a37f61197e5b402bc
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 18:26:24 2009 +0000

    Regenerate.

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

commit b045d745c550cdd03ae35f9ea4a9e325cbd50bbb
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 18:26:11 2009 +0000

    Documentation update.

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

commit 6b292727d8198ca5f85d501a741cb9e69f611038
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 18:25:54 2009 +0000

    Deprecate 'unpack_values'.

    Use 'forward_values' + 'comma_separated' instead.

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

commit 4b6e9d258dcb26f889bfd4c5c0139bfea7421b19
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 17:03:21 2009 +0000

    Pass '-msse' and friends to llc as '-mattr=+/-'.

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

commit f77867899cf80b436831429e58bac1f6a1ae66a1
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 17:03:05 2009 +0000

    Implement 'forward_value' and 'forward_transformed_value'.

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

commit 1d52e693236fe83a47e438438a186d337f149ab0
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Dec 7 10:51:55 2009 +0000

    Refactoring, no functionality change.

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

commit c02f3dca734ac6709bf51d5768ed7b3f97b4a9e7
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 10:15:19 2009 +0000

    Pre-regalloc tale duplication. Work in progress.

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

commit 768358c2b996a799013fb0caa691ffe3b4f6e950
Author: John Mosby <ojomojo@gmail.com>
Date:   Mon Dec 7 09:06:37 2009 +0000

    fixed some typos in method comments, reworded some comments for clarity

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

commit 4aafc85f5a94802c121050ec113973249e295577
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Mon Dec 7 05:29:59 2009 +0000

    Fixes the Atomic implementation if compiled by MSVC compiler.

    sys::cas_flag should be long on this platform, InterlockedAdd() is
    defined only for the Itanium architecture (according to MSDN).

    Patch by Michael Beck!

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

commit 18552eb96f80811caa9f48141219ebeb2eadc5b3
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Dec 7 03:07:01 2009 +0000

    If BB is empty, insert PHI before end() instead of front().

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

commit e7fb83a04b4c05856465db53ad0981a8db72265c
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:28:41 2009 +0000

    Some pretty-printing

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

commit c15c59e7601f48d83728faa47d5bf676ad084383
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:28:26 2009 +0000

    Truncate the arguments of llvm.frameaddress / llvm.returnaddress intrinsics from i32 to platform's largest native type

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

commit 71169a722a14e9f381d61253aa8ebafd28f3e5d9
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:28:10 2009 +0000

    Add lowering of returnaddr and frameaddr intrinsics. Shamelessly stolen from x86 :)

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

commit 5a39d69350dc6cdf4088ee6b1864070e619ef6d3
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:27:53 2009 +0000

    Initial codegen support for MSP430 ISRs

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

commit 56998002fed819fcf5d9dc28c49287454425506f
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:27:35 2009 +0000

    Add MSP430 interrupt calling conv. No functionality change yet.

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

commit 57f67276b60064d0bf4c97ad459241377dff7e08
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Dec 7 02:27:08 2009 +0000

    Add ability to select hw multiplier mode and select appropriate libcalls.

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

commit 7363a6e009625b257d01c6c1a64653e17e2676cc
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Mon Dec 7 00:27:35 2009 +0000

    Fix typos. Thanks to John Tytgat for noticing it!

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

commit f7374f702cd95402ff597457c8b3772cf3770ecf
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sun Dec 6 22:39:50 2009 +0000

    Dynamic stack realignment use of sp register as source/dest register
    in "bic sp, sp, #15" leads to unpredicatble behaviour in Thumb2 mode.
    Emit the following code instead:
    mov r4, sp
    bic r4, r4, #15
    mov sp, r4

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

commit 0cbb985ccdaaf5bc818e25d941a6e31d611deca4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 17:17:23 2009 +0000

    fix PR5698

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

commit ae4038f66b81c6a6017cac78817aa1c8dadd37d8
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 16:58:41 2009 +0000

    remove extraneous comma clang warns about

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

commit 4bb632ff31a7a273cd8c7411319b27dd5b532f9f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 05:29:56 2009 +0000

    constant fold loads from memcpy's from global constants.  This is important
    because clang lowers nontrivial automatic struct/array inits to memcpy from
    a global array.

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

commit a96e53ae92d46707d04f238679ecb012ff07df99
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 04:54:31 2009 +0000

    add support for forwarding mem intrinsic values to non-local loads.

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

commit d59cb5d5442025e89d4b6c16bf685a6f770d7add
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 04:16:05 2009 +0000

    gvn is optimizing this better now.

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

commit cb00f73e99d788c3cb30168d32e46f6970c93d48
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 01:57:02 2009 +0000

    Handle forwarding local memsets to loads.  For example, we optimize this:

    short x(short *A) {
      memset(A, 1, sizeof(*A)*100);
      return A[42];
    }

    to 'return 257' instead of doing the load.

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

commit 8e77e9b0238cff581abc86626cd153f726478804
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 01:56:22 2009 +0000

    Add helper methods for forming shift operations with a constant
    shift amount.

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

commit 8e1e701a5bb2515de949ee95e457d208cbd36d19
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Dec 6 01:47:24 2009 +0000

    merge two tests.

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

commit 46999ba6514604c021f8ec30df15e47568840c85
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Sun Dec 6 00:06:33 2009 +0000

    CheckAtomic.cmake: Put all C++ code inside CHECK_CXX_SOURCE_COMPILES.

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

commit ac88a7eecd22b24ede69845dd74cae286ff14816
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Sat Dec 5 23:19:33 2009 +0000

    Fix for atomic intrinsics detection when using MSVC.

    Patch by Michael Beck!

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

commit a182b3f8ba53a7b042461fd206a0807697ae6e85
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 17:56:26 2009 +0000

    Remove old DBG_LABEL code.

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

commit 955748e8b311172018ee5ab478e84b1f663d6547
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 17:51:33 2009 +0000

    Remove the unused DisableLegalizeTypes option and related code.

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

commit d5b718ce82f52d669b9657ec5534f5b37a152637
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 5 07:59:04 2009 +0000

    Calling InvalidateEntry during the refinement was breaking the bootstrap.

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

commit b347993aa457ca3c18247735eb301388d1fe2e71
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 5 07:46:49 2009 +0000

    Final cleanups:

    - Privatize a typedef.
    - Call the InvalidateEntry when refining a type.

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

commit 27cae32667e68db30ebfdee6fa4727696895967f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 5 07:30:23 2009 +0000

    Temporarily revert r90502. It was causing the llvm-gcc bootstrap on PPC to fail.

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

commit 9c9f6a6c8f5226419d4b0bac7c0cd5cf3f8d644d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Dec 5 06:37:52 2009 +0000

    Document that memory use intrinsics may also return Def results.

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

commit ea2236d55ea9e19aaedb6e4402a3be714aed7efd
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Dec 5 06:37:24 2009 +0000

    Fix indentation in switch statement.

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

commit 2b7bc81e5026c1c950667f0d96f499edc671e49c
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Dec 5 05:00:00 2009 +0000

    Generalize this optimization to work on equality comparisons between any two
    integers that are constant except for a single bit (the same n-th bit in each).

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

commit a1151bf0deb01cc4fd87b8a394196f1123c78566
Author: Eric Christopher <echristo@apple.com>
Date:   Sat Dec 5 02:46:03 2009 +0000

    More updates to objectsize intrinsic docs.

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

commit 1792bc68d2991042dceaa55f508a1c6c6a43b58a
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 02:00:34 2009 +0000

    Don't print a space before the : between the file name and line number.
    And separate the directory and file name with a '/'.

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

commit 7ea7e173d2eb27dc6a36b0c93c3e48ebea5da821
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 5 01:46:01 2009 +0000

    Inline methods which are called only once.

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

commit 1ce8b25281afb6b4b39f9e8442275007de6ef920
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Dec 5 01:43:33 2009 +0000

    Refactor some code. No functionality change.

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

commit cfca6e367887ec0820cf5c664eec4c0714166980
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 01:42:34 2009 +0000

    Print newlines after printing labels for debug info, so that the output
    isn't cluttered with things like "Llabel47:Llabel48:  movq  (%rsi), %xmm3"

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

commit c5b50fbff2c7d0f0e5f225da1c2f3f58299b35da
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 01:29:04 2009 +0000

    Don't blindly set the debug location for PHI node copies.

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

commit 581cdf90ade3d318dedde0c645d478ffede09e0d
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 01:27:58 2009 +0000

    Make TargetSelectInstruction protected and called from FastISel.cpp
    instead of SelectionDAGISel.cpp.

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

commit 01696988ff3c98744cce105372803d4ed903f988
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:44:40 2009 +0000

    Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of
    MachineBasicBlock::canFallThrough(), which is target-independent and more
    thorough.

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

commit bc18967dc5cbda59461d704cc1543b4fbd57f592
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:32:59 2009 +0000

    Simplify this code: don't call AnalyzeBranch before doing simpler checks.

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

commit 1ca1ac3967582cd4c02a12054b927adc1e111e52
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:27:08 2009 +0000

    The debug information for an LLVM Instruction applies to that Instruction
    and that Instruction only. Implement this by setting the "current debug position"
    back to Unknown after processing each instruction.

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

commit 4698bab134cd68e41ae098168d9fd78e64b69904
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:23:29 2009 +0000

    Fix this code to use DIScope instead of DICompileUnit, as in r90181.
    Don't print "SrcLine"; just print the filename and line number, which
    is obvious enough and more informative.

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

commit ef92a646d90a7dc618598e7b836638f96238f245
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:20:51 2009 +0000

    Don't print the debug directory; it's often long and uninteresting. Omit
    the column number if it is not known. Handle the case of a missing filename
    better.

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

commit a45e4926a3f8191749e5796b1829387c729a8a41
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:05:43 2009 +0000

    Minor code simplification.

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

commit 1db628b4bc909ddc0d17ac0b2930cbf00a61191a
Author: David Greene <greened@obbligato.org>
Date:   Sat Dec 5 00:03:24 2009 +0000

    Remove an unneeded include.

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

commit 2b62af25fd3f6b7b9efd33f31c2db6c806b5cb6c
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Dec 5 00:02:37 2009 +0000

    Remove now-redundant llvm-as invocations.

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

commit a2b73bd6b0f0b3271a9d63a9933bafbcba2555fe
Author: David Greene <greened@obbligato.org>
Date:   Fri Dec 4 23:55:07 2009 +0000

    Remove an unneeded include.

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

commit 546f68a11248be2f32331f07c5baccf8d9ebb00d
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 4 23:29:57 2009 +0000

    Add testcase for PR4262.

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

commit e26680ba1f829b15338f0f128855432c5bfd7210
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Dec 4 23:19:55 2009 +0000

    Print a space between the comment character and the text.

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

commit 6329f4f55dcdfb70f68498843c88b5a73dcd4c03
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 4 23:16:56 2009 +0000

    Temporarily revert r72620 because r72619 was reverted.

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

commit d3df6974d831cc29b86026ce3ee3467eb489ea7f
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Dec 4 23:10:24 2009 +0000

    In TAG_subrange_type, uppder bound is zero indexed.

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

commit ef682b7fdd6c1fc93490a01b7ba4093e4c935771
Author: David Greene <greened@obbligato.org>
Date:   Fri Dec 4 23:08:02 2009 +0000

    Fix a bad merge.

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

commit 989d418a4e80243a7c1ef377b24129218ba99cd5
Author: David Greene <greened@obbligato.org>
Date:   Fri Dec 4 23:00:50 2009 +0000

    Update the TargetInstrInfo interfaces so hasLoad/StoreFrom/ToStackSlot
    can return a MachineMemOperand.

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

commit 0ef2d0921f1b88f1be8eb8c3380b4e17aee82bae
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 4 22:46:47 2009 +0000

    Fix indentation.

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

commit 11a046f10f723cac2c598dd0a626383c43aecba2
Author: David Greene <greened@obbligato.org>
Date:   Fri Dec 4 22:46:04 2009 +0000

    Use new interfaces to print spill size.

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

commit 647636ff709918827317acb14e19f1f78731d140
Author: David Greene <greened@obbligato.org>
Date:   Fri Dec 4 22:38:46 2009 +0000

    Have hasLoad/StoreFrom/ToStackSlot return the relevant MachineMemOperand.

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

commit 17bd7fec405d4836c56e7f36d46c89d7a19dc25f
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 4 21:57:37 2009 +0000

    Fix up some comments.

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

commit fcb8eeed72b0f2838ccf134e814aad2feb254192
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 4 21:51:35 2009 +0000

    Fix 80-column violations.

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

commit cfd40e5a54cf4299c3ec340152e1ae0350530b37
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Dec 4 21:41:24 2009 +0000

    OptParser: Emit HelpText field for option groups.

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

commit c461971d6dea16b5a464a801979b133746016d2f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Dec 4 21:03:02 2009 +0000

    Some code cleanup. No functionality change.

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

commit deb54c890a835d61f87054cd0f0fd89929fd7207
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Dec 4 20:07:10 2009 +0000

    Avoid creating a metadata slot for all metadata that contains an instruction

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

commit 99298f61d3a280ade30c73faee24fd72e0cdc228
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 4 19:09:10 2009 +0000

    Handle recursive PHI's.

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

commit abf657c53cc476649c440c08edc622f71cbc61ba
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Dec 4 18:29:23 2009 +0000

    Fix crasher when N->getElement(n) is NULL

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

commit 371fcef75743c634263720bcd3a61a1615b90163
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 4 09:42:45 2009 +0000

    Add a pre-regalloc tail duplication pass.

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

commit 6941493d76d1aaaffb2d5d505eef249f9145d07b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 4 09:23:37 2009 +0000

    Don't try to be cute with undef optimization here. Let ProcessImplicitDefs handle it.

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

commit c4c88cfd8ee8bff54a68d0642d671ea778782e6d
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Dec 4 08:42:17 2009 +0000

    Add note about a subtle bug in this code.  Does not effect the main
    architectures that LLVM targets, because they don't use this code.

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

commit 6f27b6231b04b85963be239e4b4e38a4ca4ad282
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Dec 4 08:17:07 2009 +0000

    Fix typo and add missing include.

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

commit 078fc85321a73e8e62dac97c35361306ffd0205c
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Dec 4 06:58:24 2009 +0000

    Added debug output for inherited passes that are invalidated.

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

commit 14d122d1e12cccd89611132195c0c884ff20f08c
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Dec 4 06:38:45 2009 +0000

    Forward -m32/-m64 to the linker.

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

commit b6244a12df638a1e891969f5d98c39061a4afedb
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Dec 4 06:38:28 2009 +0000

    Support -march/-mtune/-mcpu.

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

commit a9c1d1c0c9628ce3b99e16e610ec41affcbaf614
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Dec 4 06:29:29 2009 +0000

    Fix PR5551 by not ignoring the top level constantexpr when
    folding a load from constant.

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

commit 264a3832a12498c4cf895d43ca3642faea987617
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Dec 4 04:15:36 2009 +0000

    add to cmake

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

commit f3271997b64f2881fbfb1152031ed2e14337ecba
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Dec 4 02:12:12 2009 +0000

    Small and carefully crafted testcase showing a miscompilation by GVN
    that I'm working on.  This is manifesting as a miscompile of 255.vortex
    on some targets.  No check lines yet because it fails.

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

commit 9003793e8d154cb9b14cc2391c46c68f97e2182c
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Dec 4 02:10:16 2009 +0000

    add the start of a class used to handle phi translation in memdep and
    gvn (this is just a skeleton so far).  This will ultimately be used
    to fix a nasty miscompilation with GVN.

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

commit 1358217bcbc89fe174040d453fbb63f4a2ca79d5
Author: Mike Stump <mrs@apple.com>
Date:   Fri Dec 4 01:53:15 2009 +0000

    Create yet another helper for Invoke.

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

commit 634753dbd76b1db3ed7a48af1d1fbc94da3daa93
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Dec 4 01:35:02 2009 +0000

    Teach AsmWriter to write inline (not via a global metadata slot) metadata that contains an instruction

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

commit a0c7dd2577afbb02d62879c8b6ac4ecd6d372d62
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Dec 4 01:33:04 2009 +0000

    Fix a comment typo.

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

commit cdbf27b90f3018b6bb3b66b3f58db960d445ef59
Author: Mike Stump <mrs@apple.com>
Date:   Fri Dec 4 01:26:26 2009 +0000

    Add some helpers for Invoke to mirror CreateCall helpers.

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

commit 6bf11742990180e29ca58bbe8f1149773ec6090a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Dec 4 01:03:32 2009 +0000

    add an assert to make it really clear what this is doing.  Return singularval as
    a compile time perf optimization to avoid a load.

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

commit 88d11c3a214da464deb05eb17922d633e5af77a1
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Fri Dec 4 00:16:04 2009 +0000

    Also attempt trivial coalescing for live intervals that end in a copy.

    The coalescer is supposed to clean these up, but when setting up parameters
    for a function call, there may be copies to physregs. If the defining
    instruction has been LICM'ed far away, the coalescer won't touch it.

    The register allocation hint does not always work - when the register
    allocator is backtracking, it clears the hints.

    This patch takes care of a few more cases that r90163 missed.

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

commit 723be602ecdfde30a50c3afe1780575fdf8f0f56
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Dec 4 00:09:05 2009 +0000

    - If the reaching definition is an undef and the use is a PHI, add the implicit_def to the end of the source block.
    - When reaching value is replaced with another, update the cache as well.

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

commit 4285ddbfd5fd218038058a6fdb2366ae3247a99d
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 3 23:46:57 2009 +0000

    Insert composite type DIE into the map before processing type fields. This allows fields to find their context DIE from the map.

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

commit 223c7146f919727a834a1fa5471f25ce169ab2a6
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Dec 3 23:40:58 2009 +0000

    Add ParseInlineMetadata() which can parses metadata that refers to an instruction.  Extend ParseParameterList() to use this new function so that calls to llvm.dbg.declare can pass inline metadata

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

commit d003075f1b3921f20ac9da8e0310afa4cd9b2f04
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Dec 3 21:55:01 2009 +0000

    remove out of date FIXME.

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

commit 21d9a013924f79957deaa9dac748d722cc40b40a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 3 21:51:55 2009 +0000

    Handle undef values properly.

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

commit 886ea36230307f67689a2f318adf47ec80dd8be4
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 3 21:50:58 2009 +0000

    Watch out for PHI instruction with no source operands.

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

commit 505f207509d2814d54c957bd9324c59b332f35ba
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Dec 3 21:47:07 2009 +0000

    Fix a comment typo.

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

commit b956e74994c0d0e41f2862e79d96ec699de782de
Author: Duncan Sands <baldrick@free.fr>
Date:   Thu Dec 3 21:37:32 2009 +0000

    Fix ExpandShiftWithUnknownAmountBit, which was completely bogus.
    Pointed out by Javier Martinez (who also provided a patch).  Since
    this logic is not used on (for example) x86, I guess nobody noticed.
    Tested by generating SHL, SRL, SRA on various choices of i64 for all
    possible shift amounts, and comparing with gcc.  Since I did this on
    x86-32, I had to force the use of ExpandShiftWithUnknownAmountBit.
    What I'm saying here is that I don't have a testcase I can add to the
    repository.

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

commit d0afa909ad8d1b108b4ad6925ca6b3a5de2817e2
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Dec 3 20:49:10 2009 +0000

    Clean up some loop logic.

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

commit 188c85dc4247e23ddaa63e055972253de3901fdb
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 3 19:11:07 2009 +0000

    Add support to emit debug info for virtual functions and virtual base classes.

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

commit 96d7b188600be74e1936f6ed871b1d83d017bbf8
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Dec 3 19:03:18 2009 +0000

    Print a newline after the Args: line so that unrelated errs() output doesn't
    end up on the same line.

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

commit 5e1265d554b730da926b3fee830c38e5dd9eefae
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Dec 3 13:23:03 2009 +0000

    Fix MSVC build.

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

commit e047045d670b654099260d18939e7c997ef382b6
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Dec 3 12:55:57 2009 +0000

    Convert ProfileVerifier to template so it can be used for different types of ProfileInfo.

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

commit f2aee46c884e3f2ef217f9c923eeb1f9b303f784
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Dec 3 12:41:14 2009 +0000

    Do not create negative edge weights in ProfileEstimator.
    Use integer values for weights to prevent rounding errors.
    Make ProfileEstimator more robust in general CFGs.

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

commit eee658317491fb9c16588d9490a953cbe099099c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Dec 3 11:12:42 2009 +0000

    Add an implementation of the delta debugging algorithm.
     - This is a pretty slow / memory intensive implementation, and I will likely
       change it to an iterative model, but it works.

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

commit 86f33f89980cab23051ee961585883bb3627d7a8
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Dec 3 11:00:37 2009 +0000

    Use ProfileInfo-API in ProfileInfo Loader and do more assertions.

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

commit 5c3770a68b8978d3b7ab6abe6176590b8bbbe59e
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Dec 3 09:30:12 2009 +0000

    Converted ProfileInfo to template, added more API for ProfileInfo-preserving.

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

commit e83c9b214205978873745b7368df84cf9f117996
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 3 08:43:53 2009 +0000

    Teach tail duplication to update SSA form. Work in progress.

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

commit 112929ef9a90dece270087545a7b173e64dc6245
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 07:43:46 2009 +0000

    expand note.

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

commit dddb3a3b9e782e72a9568a31639ede110cf05131
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 07:41:54 2009 +0000

    add a note

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

commit ea5d5940df6894c2efc4c6ac76700922df97d8b2
Author: Nate Begeman <natebegeman@mac.com>
Date:   Thu Dec 3 07:11:29 2009 +0000

    Don't pull vector sext through both hands of a logical operation, since doing so prevents the fusion of vector sext and setcc into vsetcc.
    Add a testcase for the above transformation.
    Fix a bogus use of APInt noticed while tracking this down.

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

commit 12fac174a70da350938ffa425d60e5f314ca5a8d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 06:58:32 2009 +0000

    fix a build problem with VC++, PR5664, patch by Alp Toker!

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

commit 171422980d99d7689b2cac01504b981e87b61905
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Dec 3 06:40:55 2009 +0000

    Recognize canonical forms of vector shuffles where the same vector is used for
    both source operands.  In the canonical form, the 2nd operand is changed to an
    undef and the shuffle mask is adjusted to only reference elements from the 1st
    operand.  Radar 7434842.

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

commit 1ac6732b47ec36df1b6d990a62d21da02fddee2b
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Dec 3 05:15:35 2009 +0000

    Don't call getValueType() on a null SDValue

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

commit 2c405b9b2073b226155ef3e928ffa4f07e69607d
Author: Owen Anderson <resistor@mac.com>
Date:   Thu Dec 3 03:43:29 2009 +0000

    Fix this crasher, and add a FIXME for a missed optimization.

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

commit 615cc8769c570cab6cb910255c0fab10256cf272
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Dec 3 02:31:43 2009 +0000

    Fill out codegen SSA updater. It's not yet tested.

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

commit ff1f7f7ab396cf2f68d64a7bc54d04f7dde178ae
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 3 01:54:07 2009 +0000

    Revert r90371. It was causing build failures.

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

commit 26f2fb73faa4634ef52b931f6581f127c79bc2f2
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Dec 3 01:49:56 2009 +0000

    Don't hang on to pointers or references after vector::push_back.

    The MO reference to a MachineOperand can be invalidated by
    MachineInstr::addOperand. Don't even use it for debugging.

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

commit 5c17063f8a9795289eee9454110f066e225a72bd
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 01:46:18 2009 +0000

    add a failing testcase.

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

commit c1df879dbd07bb4d63e7cc6358ed73263c631c12
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Dec 3 01:25:38 2009 +0000

    Emit method definition DIE at module level (even for methods with inlined functino body at soure level) so that the debugger can invoke it. This fixes many test failures in gdb test suite.

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

commit 07af48541ca53034b99a5290bca9b8d45849860c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 3 01:15:46 2009 +0000

    Further improvements: refactoring code that does the same thing into one
    function, converting "dyn_cast" to "cast", asserting the correct things, and
    other general cleanups.

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

commit 610e0bd83840b8254dbc2ad0a4ba352eca16a720
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 01:10:05 2009 +0000

    yay for case insensitive file systems (?)

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

commit 56de6c29b3028dc1d6e5dc203292de7bb44275d5
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 01:05:45 2009 +0000

    fix PR5673 by being more careful about pointers to functions.

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

commit a262eaa4f9eb214d28918a397c07a80b6158bf0b
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 00:55:04 2009 +0000

    remove some dead std::ostream using code.

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

commit b44b429549bc4c4f950d56d4f6fa0ba486856cc6
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 3 00:50:42 2009 +0000

    improve portability to avoid conflicting with std::next in c++'0x.
    Patch by Howard Hinnant!

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

commit 56eb10842f19c43f3970f6f6ba2d8b7dbf4807e9
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Dec 3 00:17:12 2009 +0000

    This initial code is meant to convert TargetData to use an AbstractTypesUser so
    that it doesn't have dangling pointers when abstract types are resolved. This
    modifies it somewhat to address comments: making the "StructLayoutMap" an
    anonymous structure, calling "removeAbstractTypeUser" when appropriate, and
    adding asserts where helpful.

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

commit 33221d9fcccbb6f41d5664fd0b89c9e6f71a0875
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 2 22:19:31 2009 +0000

    Fix CMake makefiles

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

commit 023a88ee8ad038b8e7686187cee877299cdefbca
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Dec 2 22:02:52 2009 +0000

    Skeleton for MachineInstr level SSA updater.

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

commit dd6fa9f3032a0781be6c8b4acd8aba62d5b96285
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Dec 2 22:02:20 2009 +0000

    Remove unnecessary check.

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

commit dee452ff502feea9a09247af651d25107748bc0e
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Dec 2 19:31:07 2009 +0000

    Add MaxStackAlignment.cpp to CMake

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

commit 4d20ee6d9a35d9498ad170c55ba714b346237a55
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Dec 2 19:30:24 2009 +0000

    Factor the stack alignment calculations out into a target independent pass.
    No functionality change.

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

commit 5eb5f091ab381b612c271a1683e6e0870394d0c4
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Dec 2 17:15:24 2009 +0000

    Don't count PHI instructions toward the limit for tail duplicating a block.

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

commit 3168d8c736130382a1c7b92a452f3707cc69783a
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Dec 2 17:06:45 2009 +0000

    Move EliminateDuplicatePHINodes() from SimplifyCFG.cpp to Local.cpp

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

commit 00e637ba6ff6e9749f67cbed852462839d14241b
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Dec 2 15:57:15 2009 +0000

    Cheap, mostly strict, stable sorting.

    This is necessary for tests so the results are comparable.

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

commit aca44457101e481c0efc60e9e3f8a0c5a53e45aa
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Dec 2 15:33:44 2009 +0000

    Silence compiler warnings.

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

commit df0f215750690b1c58f76b72f751d5a5c4da46d8
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Dec 2 15:25:16 2009 +0000

    Clarify that DIEString does not keep a copy of the string.

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

commit f187daf03250b0e1763bf07437d5048f6320789c
Author: Owen Anderson <resistor@mac.com>
Date:   Wed Dec 2 07:35:19 2009 +0000

    Cleanup/remove some parts of the lifetime region handling code in memdep and GVN,
    per Chris' comments.  Adjust testcases to match.

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

commit bc6fccc2682a75a1dcbf8904334bc3b137fdc213
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 06:44:58 2009 +0000

    factor some code better.

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

commit 648dc5a2106ef92818f54ef831ac051f7d238264
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 06:35:55 2009 +0000

    formatting cleanups.

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

commit 262590904ae923498bc704da374110de14289a2a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 06:05:42 2009 +0000

    tidy up, remove dependence on order of evaluation of function args from EmitMemCpy.

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

commit 53f9966b7a5454affde814ceb105c7f26f330617
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 05:34:35 2009 +0000

    merge sext-2 into sext.ll

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

commit 4f7fc4e0d23f3c2feb72d872843465c572774479
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 05:32:33 2009 +0000

    rename test

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

commit 79e59484e54d1fb722525de5f7e23101e128e1b8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 2 05:32:16 2009 +0000

    filecheckize

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

commit 3adb22982168a536036386dc27dd0522f0839658
Author: Mon P Wang <wangmp@apple.com>
Date:   Wed Dec 2 04:59:58 2009 +0000

    Fixed an assertion failure for tracking sext of a vector of integers

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

commit 69668fe63a3e714b363c251307dc34e243b1d101
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 1 23:09:02 2009 +0000

    Add utility routine to create subprogram definition entry from subprogram declaration entry.

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

commit 920ffac27e66522138cddf6aac63f4965c8103dd
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 1 23:07:59 2009 +0000

    Reuse existing subprogram DIE.

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

commit b05c79891c16cf8f9b86fc0a35e496f398ec5ebb
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 22:51:41 2009 +0000

    return more useful error messages by using strerror to format errno
    instead of returning an ambiguous reason.

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

commit ad60d2d9e46713fde0421b91ebcd0a1369b142e5
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Dec 1 22:28:41 2009 +0000

    Update per Bill's comments. Work in progress.

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

commit 578f3231d6c9ba6d6bd8c683033748cf4d68b623
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Dec 1 22:25:00 2009 +0000

    Fix PR5391: support early clobber physical register def tied with a use (ewwww)
    - A valno should be set HasRedefByEC if there is an early clobber def in the middle of its live ranges. It should not be set if the def of the valno is defined by an early clobber.
    - If a physical register def is tied to an use and it's an early clobber, it just means the HasRedefByEC is set since it's still one continuous live range.
    - Add a couple of missing checks for HasRedefByEC in the coalescer. In general, it should not coalesce a vr with a physical register if the physical register has a early clobber def somewhere. This is overly conservative but that's the price for using such a nasty inline asm "feature".

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

commit 79affd8fb46d75087c98aa4095dfc207c820d9f1
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Dec 1 21:53:51 2009 +0000

    test case for IV-Users simplification loop improvement

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

commit 536fff516dd00816acf36d0b118e391a119e182b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 21:16:01 2009 +0000

    rename some variables.

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

commit 39380bfcb91f84d404d5adbf38e4b3916769cd82
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 21:15:15 2009 +0000

    tidy

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

commit 69be7878c045ac40c9c847fe8d04f44e51663c04
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 1 19:20:00 2009 +0000

    Add edge source labels to SelectionDAG graphs, now that the graph printing
    framework omits differentiated edge sources in the case where the labels
    are empty strings.

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

commit 8cb3747a8bb51ba03b38cf87e606e2bb33032d6e
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 1 19:16:15 2009 +0000

    Minor cleanups.

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

commit 0bf95848e06bdfa04ec8a28cc22730ae139b9786
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 1 19:13:27 2009 +0000

    Trim an unnecessary #include.

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

commit 584f5f5e52830802e809b1c03c48de7dcdf87c4a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Dec 1 19:11:36 2009 +0000

    Don't default warnings to ON on MSVC, the spew is enough to triple the build time. :/

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

commit 67533ab25e3fd9b66779dee173f5cb3cfb93cb99
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 1 18:13:48 2009 +0000

    Clear function specific containers while processing end of a function, even if DW_TAG_subprogram for current function is not found.

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

commit a0fb7c4e1ae9b7c87037bc6a72adce439d23484c
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Dec 1 18:10:36 2009 +0000

    Thumb1 exception handling setjmp

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

commit 6e1b1ad3abeb24f6da12afe63ac7a1074c1e3dbf
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Tue Dec 1 17:37:06 2009 +0000

    For VLDM/VSTM (Advanced SIMD), set encoding bits Inst{11-8} to 0b1011.

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

commit 9a929cf5ff12aac2838d89389e1a90fceb731437
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 1 17:13:31 2009 +0000

    Move PHIElimination::isLiveOut method to LiveVariables.

    We want LiveVariables clients to use methods rather than accessing the
    getVarInfo data structure directly. That way it will be possible to change the
    LiveVariables representation.

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

commit cdb7736af562a153a1a3821737ec86876f0a817e
Author: Gabor Greif <ggreif@gmail.com>
Date:   Tue Dec 1 15:53:33 2009 +0000

    typo

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

commit f3798876dfe29818e97cff43cba6785648253867
Author: Gabor Greif <ggreif@gmail.com>
Date:   Tue Dec 1 12:53:56 2009 +0000

    demonstrate usage of Cases() mapping several strings to the same value; remove trailing spaces

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

commit 24dd55c3e41c2d655eefe760c446d9e24e44c287
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Dec 1 09:47:11 2009 +0000

    Add relocation model options.

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

commit 977dffe8fde833b6c312d14b40d619e33d6ba866
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Dec 1 09:19:09 2009 +0000

    Typo.

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

commit 825f4e1e87f1afff90a026ffe0876eff313bcf56
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Tue Dec 1 08:43:33 2009 +0000

    Fix copy paste bug

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

commit bf50d21c781661a1637c48dbe4e2a412764729f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 07:33:32 2009 +0000

    fix 255.vortex again, third time's the charm.

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

commit 39e844369d0a07edab15cf20037d6da328f8bd6c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 07:30:01 2009 +0000

    minimize this a bit more.

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

commit 488fe85c61807145b2d052a9104ceca80e17df74
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Dec 1 06:51:30 2009 +0000

    Forward -save-temps to llvm-gcc.

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

commit 333b7e1d9e904eff9b98e20984cbd8439b86282f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 06:22:10 2009 +0000

    merge 2009-11-29-ReverseMap.ll into crash.ll

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

commit a0cb431faf56460af265f0d9b92b7d7e49eb75b4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 06:04:43 2009 +0000

    fix PR5640 by tracking whether a block is the header of a loop more
    precisely, which prevents us from infinitely peeling the loop.

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

commit 5a25c251af8588b170f76e7e479cdc947ca924e5
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Dec 1 05:59:55 2009 +0000

    Support -[weak_]framework and -F in llvmc.

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

commit 6cb75ac35fdf87efaf27010947a6b19fae785ff4
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Dec 1 03:18:26 2009 +0000

    Remove the gcc builtins from the intrinsics, we'll lower them
    explicitly so we can check arguments.

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

commit c79abe2ba9e6bd0909b9a00eddb54a8d500ec11c
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Dec 1 03:03:00 2009 +0000

    Use CFG connectedness as a secondary sort key when deciding the order of copy coalescing.

    This means that well connected blocks are copy coalesced before the less connected blocks. Connected blocks are more difficult to
    coalesce because intervals are more complicated, so handling them first gives a greater chance of success.

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

commit 1b958caea8cf2cd06c543188b32fd3f17bcd5652
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Dec 1 02:26:01 2009 +0000

    Add a soft link so that in an apple style build we can find libLTO.dylib.

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

commit 3b581b33c31386a16bd1ae4ff121b0908e43c64a
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Tue Dec 1 02:21:51 2009 +0000

    Add two CMake flags LLVM_ENABLE_PEDANTIC and LLVM_ENABLE_WERROR,
    PEDANTIC defaults to ON and WERROR default to off.

    Also add MSVC warnings. To disable warnings add the flags
    LLVM_ENABLE_WARNINGS (default on).

    Patch by Tobias Grosser!

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

commit d8bceade9b026d229b621399e196e8376396d0b7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 1 01:56:27 2009 +0000

    fix PR5649 by making fib use the JIT instead of the interpreter, patch by Perry Lorier!

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

commit b7aaf7b998d0006b775c3e494ea4b6d614f3ef81
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 1 01:38:10 2009 +0000

    Add a comment about A[i+(j+1)].

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

commit 05837cdf183324700fbe8231a655e9f7101057c6
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 1 00:59:58 2009 +0000

    Remove some validation errors.

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

commit d90060edfdeaadf4563de2521221c201924e1790
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Dec 1 00:53:11 2009 +0000

    Some formatting and spelling fixes.

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

commit af20e7cfb5d44c7a0caad3a152978fcca1f4b438
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Dec 1 00:45:56 2009 +0000

    Devang pointed out that this code should use DIScope instead of
    DICompileUnit. This code now prints debug filenames successfully.

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

commit 1e99614c66e92b4f6c26531b8c84e0f42a35c902
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Dec 1 00:44:45 2009 +0000

    Fix PR5614: parts of a physical register def may be killed the rest.

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

commit de4b5d00385da6273b0902e9385928b99aeda670
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Dec 1 00:13:06 2009 +0000

    Test case for r90175.

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

commit cf4fad276042adc440ff0d119b9fb67a94814ccf
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Tue Dec 1 00:02:02 2009 +0000

    For VMOV (immediate), make some of the encoding bits (cmode and op) unspecified.
    For VMOVv*i[16,32], op bit is don't care, and some cmode bits vary depending on
    the immediate values.

    Ref: Table A7-15 Modified immediate values for Advanced SIMD instructions.

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

commit 76b806763b89ea64337bd967614662a72f237191
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Nov 30 23:56:56 2009 +0000

    If pointer type has a name then do not ignore the name.

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

commit 63c90f69fe61ee5b0ff0ee8acf73274452da933e
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Mon Nov 30 23:50:14 2009 +0000

    * CMakeLists.txt: Adds warnings flags for g++. Fixes PR 5647.

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

commit a86f9f058bf09127b7cf306770c353a6ffc41b3f
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Mon Nov 30 23:48:51 2009 +0000

    * cmake/modules/LLVMLibDeps.cmake: Updated library dependencies.

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

commit 26219b78e2e252a08c7c59aceb05a86751cdf20e
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Nov 30 23:33:53 2009 +0000

    Minor whitespace fixes.

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

commit 66fe2bca32f043bf5bd15c732c80627621d7abb7
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Nov 30 23:33:37 2009 +0000

    Fix a minor inconsistency.

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

commit 1ff03c6950bb5ed48831ad9cd6b53fcd9fe7dfa8
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Nov 30 23:30:43 2009 +0000

    Fix typos in comments.

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

commit c6e14f94aae2689841a94bc7aa059a8771e53867
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Mon Nov 30 22:55:54 2009 +0000

    New virtual registers created for spill intervals should inherit allocation hints from the original register.

    This helps us avoid silly copies when rematting values that are copied to a physical register:

    leaq	_.str44(%rip), %rcx
    movq	%rcx, %rsi
    call	_strcmp

    becomes:

    leaq	_.str44(%rip), %rsi
    call	_strcmp

    The coalescer will not touch the movq because that would tie down the physical register.

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

commit 180e3e4b507427ba5d81408a064adc5a3055557f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Nov 30 22:23:29 2009 +0000

    Debug info is disabled on PPC Darwin.

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

commit 3d0daa24dde6984c75c7fe1933653429169418f4
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Nov 30 18:56:45 2009 +0000

    Reprioritize tests for tail duplication to be aggressive about indirect
    branches even when optimizing for code size.  Unless we find evidence to the
    contrary in the future, the special treatment for indirect branches does not
    have a significant effect on code size, and performance still matters with -Os.

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

commit 90868102bf6144cae08570ddcb96099d9d63c06d
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Nov 30 18:35:03 2009 +0000

    Remove isProfitableToDuplicateIndirectBranch target hook.  It is profitable
    for all the processors where I have tried it, and even when it might not help
    performance, the cost is quite low.  The opportunities for duplicating
    indirect branches are limited by other factors so code size does not change
    much due to tail duplicating indirect branches aggressively.

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

commit 3bff42e81121019af3ba61a13f087bba6ed37c54
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Nov 30 17:47:19 2009 +0000

    Fix some more ARM unified syntax warnings.

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

commit 49462255e92b03de36a013dd23845d9c8e35821c
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Nov 30 15:52:29 2009 +0000

    Fix odd declaration.

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

commit bf4ea99c2887e55d18206e093bccdc43636c9b1b
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 13:34:51 2009 +0000

    Fix last DOTGraphTraits problems in CompilationGraph.

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

commit f9b1114ae03b624deb0ed6e6d1bb26cc2cd2685e
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 13:14:13 2009 +0000

    Remove forgotten ShortNames in Trie and CompilationGraph

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

commit 810b18c4cc8b022f79f0dd886cc9092a3e4f6d2c
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 12:38:47 2009 +0000

    Remove ShortNames from getNodeLabel in DOTGraphTraits

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

commit e2c3aec2cf16ee6ea233d3ec13a83e71e21523b9
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 12:38:13 2009 +0000

    Instantiate DefaultDOTGraphTraits

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

commit fd748c9df057cd33fe255b9ff81e720518f82cb3
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 12:37:39 2009 +0000

    Do not point edge heads to source labels

    If no destination label is available, just point to the node itself
    instead of pointing to some source label. Source and destination labels are
    not related in any way.

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

commit 989dd8528652afdfcf5125f7d206bc0f075861e7
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 12:24:40 2009 +0000

    Only print edgeSourceLabels if they are not empty

    Graphviz can layout the graphs better if a node does not contain source
    ports. Therefore only print the ports if the source ports are useful,
    that means are not labeled with the empty string "".
    This patch also simplifies graphs without any edgeSourceLabels e.g. the
    dominance trees.

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

commit 6d6054ab3ef09773025dbcee2b923913a73a919d
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 12:06:37 2009 +0000

    Small PostDominatorTree improvements

     * Do not SEGFAULT if tree entryNode() is NULL
     * Print function names in dotty printer

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

commit e148e0b0e803768e12df1884159f143bf08f6e40
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Nov 30 11:55:24 2009 +0000

    Remove ":" after BB name in -view-cfg-only

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

commit 767a372b1df0e26fbbe0dd8d3667e85d98c91109
Author: Eric Christopher <echristo@apple.com>
Date:   Mon Nov 30 08:03:53 2009 +0000

    First pass at llvm.objectsize documentation.

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

commit d9ae7435b67e6375d2e72cb4bd43955c0a58edad
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Nov 30 07:05:51 2009 +0000

    Revert r90107, fixing test/Transforms/GVN/2009-11-29-ReverseMap.ll and the
    llvm-gcc build.

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

commit 30a3e84e9b7aca47aaee2ed11bc20cf6336bd189
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Nov 30 07:02:18 2009 +0000

    Add a testcase for the current llvm-gcc build failure.

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

commit 21c4cada89c23d0c6c943d7044d045c279804c05
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Nov 30 04:23:17 2009 +0000

    Remove the 'simple jit' tutorial as it wasn't really being maintained and its
    material is covered by the Kaleidoscope tutorial.

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

commit f950eb5454f482bc93a1d58b179f3e9be707e686
Author: Mon P Wang <wangmp@apple.com>
Date:   Mon Nov 30 02:42:27 2009 +0000

    Add test case for r90108

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

commit c707f3ff7cdb427155b7ca707a3efd2c8b34bcd1
Author: Mon P Wang <wangmp@apple.com>
Date:   Mon Nov 30 02:42:02 2009 +0000

    Added support to allow clients to custom widen. For X86, custom widen vectors for
    divide/remainder since these operations can trap by unroll them and adding undefs
    for the resulting vector.

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

commit e1f454174e8ad32da74193471ca079a12c2bb18d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Nov 30 02:26:29 2009 +0000

    reapply r90093 with an addition of keeping the forward
    and reverse nonlocal memdep maps in synch, this should
    fix 255.vortex.

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

commit bfd72282b887511b8d0859777a6ca9851e062a85
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Nov 30 02:23:57 2009 +0000

    Fix this test on 64-bit systems which seem to use i64 for gep indices sometimes
    while 32-bit gcc uses i32.

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

commit f215dece88649838a64b0d7740184713c487cf54
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Nov 30 00:38:56 2009 +0000

    Commit r90099 made LLVM simplify one of these constant expressions a little
    more. Update the syntax we're checking for and filecheckize it too.

    This will fix the selfhost buildbots but will 'break' the others (sigh) because
    they're still linked against older LLVM which is emitting less optimized IR.

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

commit 0425dc773b82135ec8b6e5e6a5140c06de86c6ce
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Nov 29 21:40:55 2009 +0000

    Teach ConstantFolding to do a better job when folding gep(bitcast).

    This permits the devirtualization of llvm.org/PR3100#c9 when compiled by clang.

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

commit c04f8adbc1539eb593879d8e0f8977ac5155e605
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Nov 29 21:17:48 2009 +0000

    Revert r90089 for now, it's breaking selfhost.

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

commit 9b4ba06f907aac7ef1991e339ff4c262a301047f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 21:14:59 2009 +0000

    revert this patch for now, it causes failures of:
        LLVM::Transforms/GVN/2009-02-17-LoadPRECrash.ll
        LLVM::Transforms/GVN/2009-06-17-InvalidPRE.ll

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

commit 02507fdead4d86a04c1c914549b2d2ab295c47c7
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 21:09:36 2009 +0000

    Fix a really nasty caching bug I introduced in memdep.  An entry
    was being added to the Result vector, but not being put in the
    cache.  This means that if the cache was reused wholesale for a
    later query that it would be missing this entry and we'd do an
    incorrect load elimination.

    Unfortunately, it's not really possible to write a useful
    testcase for this, but this unbreaks 255.vortex.

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

commit 7719b59199b6920ada130675f658bf3ec8521cd6
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Nov 29 20:29:30 2009 +0000

    Fix two FIXMEs.

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

commit eac76e8c39d2f6370692677fdfc59c7d62e29e07
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Nov 29 18:10:39 2009 +0000

    Detabify.

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

commit 9e73b69d560efe55408748561f294bfed36d7079
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Nov 29 17:42:58 2009 +0000

    Remove dead returns.

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

commit cfd64f93fe4a893fe6ffda056c825d0a9e3f272a
Author: Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>
Date:   Sun Nov 29 17:19:48 2009 +0000

    This patch ensures that Path::GetMainExecutable is able to handle the
    case where realpath() fails. When this occurs we segfault trying to
    create a std::string from a NULL pointer.

    Fixes PR5635.

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

commit 7143f3420c2832c342182ec8e5b87a4e5a19f99c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Nov 29 08:30:24 2009 +0000

    Fix FileCheck crash when fuzzy scanning starting at the end of the file.

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

commit dbbf1b238bc38c26fc4f7b53a26e0d0538880d8a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 02:57:29 2009 +0000

    add testcases for the foo_with_overflow op xforms added recently and
    fix bugs exposed by the tests.  Testcases from Alastair Lynn!

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

commit 565b96428b6e7af0b87275a81471c5395fcbdc16
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 02:44:33 2009 +0000

    mark all the 'foo with overflow' intrinsics as readnone.

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

commit 8aa4c019b5bb50ba9a3a5e2188a64081beb2f02b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 02:19:52 2009 +0000

    update and consolidate the load pre notes.

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

commit 6756dffb3a4685abfaa0455078c4d8f4c33ddc28
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 01:28:58 2009 +0000

    add PR#

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

commit ea7509881f1e6d5efaa80638b0a5ab5290c77651
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 01:15:43 2009 +0000

    Add a testcase for:

    void test(int N, double* G) {
      long j;
      for (j = 1; j < N - 1; j++)
          G[j] = G[j] + G[j+1] + G[j-1];
    }

    which we now compile to one load in the loop:

    LBB1_2:                                                     ## %bb
    	movsd	16(%rsi,%rax,8), %xmm2
    	incq	%rdx
    	addsd	%xmm2, %xmm1
    	addsd	%xmm1, %xmm0
    	movapd	%xmm2, %xmm1
    	movsd	%xmm0, 8(%rsi,%rax,8)
    	incq	%rax
    	cmpq	%rcx, %rax
    	jne	LBB1_2

    instead of:

    LBB1_2:                                                     ## %bb
    	movsd	8(%rsi,%rax,8), %xmm0
    	addsd	16(%rsi,%rax,8), %xmm0
    	addsd	(%rsi,%rax,8), %xmm0
    	movsd	%xmm0, 8(%rsi,%rax,8)
    	incq	%rax
    	cmpq	%rcx, %rax
    	jne	LBB1_2

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

commit 96bd9d9931be198b46c3197b67ed02aefc734bd4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 01:04:40 2009 +0000

    add a testcase for

    void test9(int N, double* G) {
      long j;
      for (j = 1; j < N - 1; j++)
          G[j+1] = G[j] + G[j+1];
    }

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

commit 163e6ab29947e801b555e688e19af8460c8c7903
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Nov 29 00:51:17 2009 +0000

    Implement PR5634.

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

commit 2dbc3f24619726bb5def46ed36116ed5bbb2ac85
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Nov 28 21:27:49 2009 +0000

    Teach memdep to look for memory use intrinsics during dependency queries. Fixes
    PR5574.

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

commit 80c535b9194e1ce2927ca9b55d010a8fcb5833b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Nov 28 16:08:18 2009 +0000

    reenable load address insertion in load pre.  This allows us to
    handle cases like this:
    void test(int N, double* G) {
      long j;
      for (j = 1; j < N - 1; j++)
          G[j+1] = G[j] + G[j+1];
    }

    where G[1] isn't live into the loop.

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

commit 1c2de2bd49cd56c50c9251f22727a126dea78f43
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Nov 28 15:39:14 2009 +0000

    Enhance InsertPHITranslatedPointer to be able to return a list of newly
    inserted instructions.  No functionality change until someone starts using it.

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

commit c343983d722c5552dea693c85bf62406217dc097
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Nov 28 15:12:41 2009 +0000

    implement a FIXME: limit the depth that DecomposeGEPExpression goes the same
    way that getUnderlyingObject does it.

    This fixes the 'DecomposeGEPExpression and getUnderlyingObject disagree!'
    assertion on sqlite3.

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

commit ed81875b336e7ec36612a2ae49fbbdf7867f08d2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Nov 28 14:54:10 2009 +0000

    enable code to handle un-phi-translatable cases more aggressively:
    if we don't have an address expression available in a predecessor,
    then model this as the value being clobbered at the end of the pred
    block instead of being modeled as a complete phi translation failure.
    This is important for PRE of loads because we want to see that the
    load is available in all but this predecessor, and complete phi
    translation failure results in not getting any information about
    predecessors.

    This doesn't do anything until I renable code insertion since PRE
    now sees that it is available in all but one predecessors, but can't
    insert the addressing in the predecessor that is missing it to
    eliminate the redundancy.

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

commit de0b030de1873764c1f3571b75b5f75125ac35f8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 22:50:07 2009 +0000

    disable value insertion for now, I need to figure out how
    to inform GVN about the newly inserted values.  This fixes
    PR5631.

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

commit a5bef157088fc71eeb2a968272d270cb94169524
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 22:05:15 2009 +0000

    Rework InsertPHITranslatedPointer to handle the recursive case, this
    fixes PR5630 and sets the stage for the next phase of goodness (testcase
    pending).

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

commit 3037e0ade3201ff57bc4f486e7dfacc6b7459d47
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 20:25:30 2009 +0000

    recursively phi translate bitcast operands too, for consistency.

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

commit e386372015e237a1e98f843920cf8d6449e0b444
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Fri Nov 27 19:57:53 2009 +0000

    Oops! Fix bug introduced in my recent cleanup change. Thanks to Tobias Grosser
    for pointing this out.

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

commit 0c40e546d78a7f0cb9e42588afcd8a664a816108
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 19:56:00 2009 +0000

    I accidentally implemented this :)

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

commit d91a9144369b73ed3e066695ad922abc76b5f7de
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 19:11:31 2009 +0000

    add support for recursive phi translation and phi
    translation of add with immediate.  This allows us
    to optimize this function:

    void test(int N, double* G) {
      long j;
      G[1] = 1;
        for (j = 1; j < N - 1; j++)
            G[j+1] = G[j] + G[j+1];
    }

    to only do one load every iteration of the loop.

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

commit f198db016d5b8c1fb5f225f644efb5f5198c2471
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 18:08:30 2009 +0000

    add two simple test cases we now optimize (to one load in the loop each) and one we don't (corresponding to the fixme I added yesterday).

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

commit 96076f73dbddf62f2bed35458afc5fbd5628a5e2
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 17:42:22 2009 +0000

    factor some logic out of instcombine into a new SimplifyAddInst method.

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

commit 15aec3314b05e3d68f73fcc95b88fd4b9baad6b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 17:12:30 2009 +0000

    add a deadargelim note.

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

commit 7d147914a609049f7cda4a5c5ee8ee8abbde4782
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 16:53:57 2009 +0000

    This testcase is actually only partially redundant, and requires
    the FIXME I added yesterday to be implemented.

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

commit 8c800c00ef9a6054218b11e5e1d65205b1297115
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 16:37:41 2009 +0000

    fix PR5436 by making the 'simple' case of SRoA not promote out of range
    array indexes.  The "complex" case of SRoA still handles them, and correctly.

    This fixes a weirdness where we'd correctly avoid transforming A[0][42] if
    the 42 was too large, but we'd only do it if it was one gep, not two separate
    ones.

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

commit 3ad93b0636e31b90c74c658673130d1b6a4ffd8e
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Nov 27 16:31:59 2009 +0000

    filecheckize

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

commit 1da9984b8f8bec04ec77e96ea4b9e1b358f9f4a2
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Nov 27 16:04:14 2009 +0000

    While this test is testing a problem in the generic part of codegen,
    the problem only shows for msp430 and pic16 which is why it specifies
    them using -march.  But it is wrong to put such tests in CodeGen/Generic,
    since not everyone builds these targets.  Put a copy of the test in each
    of the target test directories.

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

commit 87598b02a90f8027b59afb1433ae3e828e19c72a
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Nov 27 13:38:03 2009 +0000

    Vector types are no longer required to have a power-of-two length.

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

commit 59b538afbdb86d62b1caa0f549401cb1583101fa
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Nov 27 12:33:22 2009 +0000

    These code generator limitations have been removed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90003 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12 15:14:39 +02:00