Commit Graph

5 Commits

Author SHA1 Message Date
Török Edvin
f578257021 Merge LLVM upstream SVN r94539.
Squashed commit of the following:

commit 4d555935ac5c77164d9af2494f470abdb542a434
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Jan 26 11:58:04 2010 +0000

    Tweak the way appendModuleInlineAsm works, so you aren't obliged
    to append a newline when using setModuleInlineAsm in case later
    someone calls appendModuleInlineAsm - make newline handling fully
    automatic.  In case anyone is wondering there is only one user of
    appendModuleInlineAsm: the dragonegg plugin.

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

commit 16cc9fd0863e778a34ef4559180f059224d2e78b
Author: Edwin Török <edwintorok@gmail.com>
Date:   Tue Jan 26 08:50:50 2010 +0000

    Regenerate configure.

    With the previous cleanup to configure.ac, configure is now only 393k, instead of 1.1M!

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

commit 239f981ac0b583f113a8c6ffcf51002b1dc5994c
Author: Edwin Török <edwintorok@gmail.com>
Date:   Tue Jan 26 08:48:04 2010 +0000

    Remove unneeded checks from configure.ac.

    HAVE_{BI,STD,FWD}_ITERATOR and HAVE_NAMESPACES were not used in the code.
    bison and flex are no longer used.
    CAN_DLOPEN_SELF was never used either.
    AC_PROG_LIBTOOL is not needed since we don't use libtool, we only need the
    libltdl checks for dlopen.
    Add check for AR, it used to be done by AC_PROG_LIBTOOL.
    AC_TYPE_SIGNAL is deprecated, follow autoupdate's suggestion and replace with
    void.
    Remove unused m4 files.
    Configure can now be generated using autoconf 2.65 too, without any warnings!

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

commit ad97ab8596f7ffb831e6b494ceb735d0a0ef0286
Author: Edwin Török <edwintorok@gmail.com>
Date:   Tue Jan 26 08:43:05 2010 +0000

    Fix autoconf 2.65 warning (don't use _cv_ inside AC_CACHE_VAL).

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

commit 708db218ba4afbd6c96c7648dda80f4b20185d19
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Jan 26 08:27:24 2010 +0000

    Remove warning about non return on a non-void function.

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

commit 56178773f3fa4ba2a3f0c0286cb42eaeeb9ba049
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 06:53:37 2010 +0000

    eliminate the TargetLowering::UsesGlobalOffsetTable bool, which is
    subsumed by TargetLowering::getJumpTableEncoding().  Change uses of
    it to be more specific.

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

commit ab9d79bdabd469ecd40d76f77cb9e391e052115a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 06:42:44 2010 +0000

    Now that printPICJumpTableSetLabel is not overloaded,
    inline it into its only caller, allowing us to simplify it
    and hoist bits out of the loop.

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

commit 576b9165cf59ce6b435defb6718b31d7a501615e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 06:28:43 2010 +0000

    Move getJTISymbol from MachineJumpTableInfo to MachineFunction,
    which is more convenient, and change getPICJumpTableRelocBaseExpr
    to take a MachineFunction to match.

    Next, move the X86 code that create a PICBase symbol to
    X86TargetLowering::getPICBaseSymbol from
    X86MCInstLower::GetPICBaseSymbol, which was an asmprinter specific
    library.  This eliminates a 'gross hack', and allows us to
    implement X86ISelLowering::getPICJumpTableRelocBaseExpr which now
    calls it.

    This in turn allows us to eliminate the
    X86AsmPrinter::printPICJumpTableSetLabel method, which was the
    only overload of printPICJumpTableSetLabel.

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

commit 7ab57e0e40914ec7c9da51dc7af422a9bb4742d2
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 05:58:28 2010 +0000

    add a new MachineJumpTableInfo::getJTISymbol method,
    use it to implement the default TargetLowering::getPICJumpTableRelocBaseExpr

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

commit 2ae50d6c969ea5319b4ac36a92f6ae3bb2db9510
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 05:30:30 2010 +0000

    stub out a new target hook, need some refactoring before I can
    implement it.

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

commit 5edab094dc771c2ea605feefa4168589c1703b50
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 05:15:20 2010 +0000

    simplify asmprinter: only emit .set directives when entries have
    EK_LabelDifference32 kind and the target has .set support.  Simplify
    X86AsmPrinter::printPICJumpTableSetLabel to make use of recent helpers.

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

commit 9dd8c76971b200d5e6da9b582322fa6b4ee03fc9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 05:10:10 2010 +0000

    rename printPICJumpTableEntry -> EmitJumpTableEntry,
    make it private and non-virtual.  It handles the non-pic
    case too, so just use it, simplifying EmitJumpTableInfo.

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

commit 5ed376c1534bd482cae00ca58365945a5c595d06
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 05:02:42 2010 +0000

    implement X86 @GOTOFF jump table entries with the new EK_Custom32
    jump table entry kind, instead of overloading
    AsmPrinter::printPICJumpTableEntry.

    This has a pretty horrible and inefficient FIXME around how @GOTOFF
    is currently smashed into the mcsymbol name, but otherwise this is
    much cleaner.

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

commit 92baedd90eca87c18f5734141f68123843bf94af
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 04:55:51 2010 +0000

    add a new MachineBasicBlock::getSymbol method, replacing
    the AsmPrinter::GetMBBSymbol.

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

commit c240962977fb769c537028a4a033e509b61b2b5f
Author: Lang Hames <lhames@gmail.com>
Date:   Tue Jan 26 04:49:58 2010 +0000

    New PBQP solver.

    * Fixed a reduction bug which occasionally led to infinite-cost (invalid)
      register allocation solutions despite the existence finite-cost solutions.
    * Significantly reduced memory usage (>50% reduction).
    * Simplified a lot of the solver code.

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

commit 52ec98318a4a336d37048613565c031a0cb1dc5f
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 26 04:40:18 2010 +0000

    Fix the the ceiling-division used in computing the MaxBECount so that it doesn't
    have trouble with an intermediate add overflowing. Also, be more conservative
    about the case where the induction variable in an SLT loop exit can step past
    the RHS of the SLT and overflow in a single step.

    Make getSignedRange more aggressive, to recover for some common cases which
    the above fixes pessimized.

    This addresses rdar://7561161.

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

commit 87c00880896deb3d3c7e0cc11954fecc5cf7c75e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 04:38:11 2010 +0000

    don't bother setting the AsmPrinter::MF ivar, now that
    AsmPrinter::SetupMachineFunction sets it.  Note that systemz
    and msp430 didn't.  Yay for reduced inconsistency! :)

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

commit b73ec923cd277bd24bff2d81c4b29b4a7661f344
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 04:35:26 2010 +0000

    make MachineFunction keep track of its ID and make
    MachineFunctionAnalysis dole them out, instead of having
    AsmPrinter do both.  Have the AsmPrinter::SetupMachineFunction
    method set the 'AsmPrinter::MF' variable.

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

commit 451d50e0b00fecc00fcb8657552384f318055ae2
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 04:19:00 2010 +0000

    this hook should be const.

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

commit fd665558f42e47780aff6e3a4555e00d1789e064
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 26 04:13:15 2010 +0000

    Add a comment about a missed opportunity.

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

commit c1a154b0075a9f31b1850e26ff4f9462484756f7
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 26 04:12:55 2010 +0000

    Print empty and full sets specially.

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

commit 98639cc055c3420fc68e8cbe308b4c9070c58bd5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 04:05:28 2010 +0000

    Add support for target-specific 32-bit custom-lowered
    jump table entries.

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

commit dd80b5194431e0ce5b27852dc72c695ad4f7d5a7
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Jan 26 03:56:22 2010 +0000

    Unbreak MSVC/CMake build.

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

commit ce044b9c7e5dc2c587984ad10fa7b5ed3e31fa82
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 03:47:15 2010 +0000

    make jit jump table emission be based on the EntryKind instead of magic variables.
    JITInfo::getPICJumpTableEntry can probably be removed now, but I don't plan to do
    this.

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

commit 3ff0256e58dc792e6b1a99ae095326f06764e44c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 26 03:43:22 2010 +0000

    switch jump table entry emission to be based on EntryKind
    instead of magic variables.

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

commit e7829479065b2c9e3593040f3ea9eb731fa505a5
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 26 02:42:15 2010 +0000

    In mem2reg, for all alloca/stores that get promoted where the alloca has an associated llvm.dbg.declare instrinsic, insert an llvm.dbg.var intrinsic before each store.

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

commit 772e788108793a13d4c154974d151e9755b09373
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 26 02:36:35 2010 +0000

    Add MDNode::getIfExists(), an efficient way to determine if a value is used by metadata (since metadata does not appear in a value's use list)

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

commit 2bdbbc8c8bd9261fce6c90f6546fca5e743f071b
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 26 02:07:38 2010 +0000

    Assert when debug intrinsic insert functions are passed empty arguments

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

commit 35442a5bd501a65850e46ab87e77a0bf254227ef
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 26 02:00:44 2010 +0000

    Implement cond ? -1 : 0 with sbb.

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

commit 91945aed6441c5fee15f0b4da9f74ff5fdb161b4
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 26 01:54:26 2010 +0000

    Accept immediate as value of a dbg_value.

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

commit 2798a565988f04b8e8e9b385ce7a1a9a671dc747
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Tue Jan 26 01:26:46 2010 +0000

    Re-enable unit tests disabled in r94164 by telling GTest about the
    lack of RTTI.

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

commit 4eac23ed3a3dcf627e2b346bbadb6e6acd05eb12
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Jan 26 01:00:10 2010 +0000

    Added the implementation of the Intel-specific
    TargetAsmLexer.

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

commit bfe2023a6987b4201e612b8b787cbb40b4b29e7d
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 26 00:09:58 2010 +0000

    Generate DEBUG_VALUE comments on x86.  The (limited)
    dbg.declare's we currently generate go through both
    register allocators without perturbing the results.

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

commit 38465e0f8e0ce74d6a4721e4d667194e4ee3ee6c
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Jan 26 00:08:25 2010 +0000

    Added the TargetAsmLexer implementation for AT&T syntax.

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

commit 21cf5dc841bfce418403b3909f5ab8c9e6087b9a
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 26 00:03:12 2010 +0000

    use findDebugLoc in more places.

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

commit 23703f10f4ee82ce35381cb63a06300ced4e98d7
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Jan 25 23:50:13 2010 +0000

    Minor jump table cleanup.

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

commit f51056a64833520d9a19dd4e66d439622e3a7794
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 23:38:14 2010 +0000

    in 32-bit pic mode for targets with a GOT, x86 emits jump table
    entries with @GOTOFF whih is EK_GPRel32BlockAddress.

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

commit 02f40bc55023ba2181ecb32aeb8d0c265624d176
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 23:28:03 2010 +0000

    fix quoting problem jim noticed!

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

commit f64ffc4e7521176024d0c53f2e3a702c6de98133
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 23:26:13 2010 +0000

    Rearrange handling of jump tables.  Highlights:
    1. MachineJumpTableInfo is now created lazily for a function the first time
       it actually makes a jump table instead of for every function.
    2. The encoding of jump table entries is now described by the
       MachineJumpTableInfo::JTEntryKind enum.  This enum is determined by the
       TLI::getJumpTableEncoding() hook, instead of by lots of code scattered
       throughout the compiler that "knows" that jump table entries are always
       32-bits in pic mode (for example).
    3. The size and alignment of jump table entries is now calculated based on
       their kind, instead of at machinefunction creation time.

    Future work includes using the EntryKind in more places in the compiler,
    eliminating other logic that "knows" the layout of jump tables in various
    situations.

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

commit cfe7b7a54a60a928e30896b5a21233fa0cbca0a4
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 23:22:00 2010 +0000

    prep work to support a future where getJumpTableInfo will return
    a null pointer for functions with no jump tables.  No functionality
    change.

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

commit b5badd6703d1f8fc552f45023ba10dec5e6d9b0a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 23:18:11 2010 +0000

    add a method to get the alignment of an integer type even
    when we don't have one laying around.  Useful if you don't
    have an llvmcontext handy.

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

commit 8c6e446caaa411d8f44f2abe82c5d0b39118f79a
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Mon Jan 25 22:54:29 2010 +0000

    Make it SP, LR, PC for GPR Register Class instead of LR, SP, PC.

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

commit 43b18d3c46b16a3d07cb6ae9856439af29626749
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 22:41:33 2010 +0000

    eliminate redundant argument to EmitJumpTableInfo

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

commit ba0c53b5194a4a00042844d89815229ffcae3ada
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Mon Jan 25 22:13:10 2010 +0000

    Implemented ARMInstPrinter::printThumbS4ImmOperand().

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

commit dfceef4d7c86e1faff86b76962fd49cbf69748db
Author: Sean Callanan <scallanan@apple.com>
Date:   Mon Jan 25 21:59:20 2010 +0000

    Implemented the dialect decision logic for the X86
    TargetAsmLexer.  Dialect-specific lexing code will
    be placed in the functions LexTokenATT() and
    LexTokenIntel().

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

commit da756cedbd90c7c5c4cb88ce020567a2980d93d4
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Mon Jan 25 21:56:35 2010 +0000

    Fixed the order of GPR RegisterClass regs to be: ..., R10, R11, R12, ...

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

commit f995e69497f878e241907c577840be9a4001517d
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 25 21:55:39 2010 +0000

    Fix the bitcode reader to deserialize nuw/nsw/etc. bits properly in the case
    of a forward-reference, which doesn't use an "abbrev" encoding.

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

commit dc57be1812ac38d5966a819ad4ed495c074a7795
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 21:28:50 2010 +0000

    mcstreamerize gprel32 emission.

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

commit e45fe963cf0ac976f60815cecbb5fa7816c32aa1
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Jan 25 21:28:05 2010 +0000

    Remove check for an impossible condition: the condition of the while loop has
    already checked that TmpBB->getSinglePredecessor() is non-null.

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

commit 7db595672d1825bc31a0bd3cf9258cbdbe233601
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 21:22:22 2010 +0000

    mcize the non-gprel cases of AsmPrinter::printPICJumpTableEntry

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

commit 72d7c91660fc92b769b87c3464c038e1e1ff2ded
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 21:17:10 2010 +0000

    handle the _set_ symbol with an MCSymbol.

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

commit 75bd561e510de2d6376a8573fcbcaabf0e1f8b9f
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 21:10:10 2010 +0000

    rename MAI::PICJumpTableDirective to MAI::GPRel32Directive to
    make it clear what it is, instead of how it is used.

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

commit c50dd923eb17911f40d1a354c08b2d3e45cb5316
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 21:01:58 2010 +0000

    pull the non-pic jump table case out of printPICJumpTableEntry
    and MCize the non-pic case.  Now printPICJumpTableEntry really
    is just about printing PIC entries.

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

commit cffc498b7b150de1d0d48a56a57550609ab61e4a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 20:52:54 2010 +0000

    remove JumpTableDirective, it is always null.

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

commit 98e00c465b19ccdcf0ad3ff2bb1919d190b4945c
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 20:37:36 2010 +0000

    no need to implement these.

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

commit 010d3c27b44c66695ad2c967722fa39c7dc454c4
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 19:51:38 2010 +0000

    mcize jump table symbol manipulation.

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

commit c8a81c36e4a0786baacf13b1744d3aaebc9baed0
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 19:39:52 2010 +0000

    sink an arm specific method out of asmprinter into the ARMAsmPrinter and
    rename it to avoid shadowing.

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

commit 758f781239b7876a4589e4a8ea8486400cfc02d5
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 19:23:04 2010 +0000

    remove dead code: the x86 target never sets usesGlobalOffsetTable,
    even on x86-32/elf which uses a GOT.

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

commit be8c61a305dd714126a1dd308024b765a5e5de15
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 19:02:58 2010 +0000

    wirte up .file and .file to the mc asmparser.

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

commit eaf065b751af99a0cc1fdc304e9118e9b8f7906f
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 18:58:59 2010 +0000

    mcstreamerize .file and .file.  This also fixes an issue where the
    normal form of .file would fail if the filename had a weird character
    in it.

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

commit f20ca12ef34f3e557241346f0db15bfa93ef989e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 18:33:40 2010 +0000

    emit ELF .type directives through MCStreamer instead of doing it textually.

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

commit 82ede98c5928c480b7b8d2d79b481c936fba99cd
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 18:30:45 2010 +0000

    add symbol attribute support for the ELF .type directive.

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

commit 0b3d624c931bc42d3aadbb505b81b91498ce4b1c
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Jan 25 18:26:54 2010 +0000

    Change Value::getUnderlyingObject to have the MaxLookup value specified as a
    parameter with a default value, instead of just hardcoding it in the
    implementation.  The limit of MaxLookup = 6 was introduced in r69151 to fix
    a performance problem with O(n^2) behavior in instcombine, but the scalarrepl
    pass is relying on getUnderlyingObject to go all the way back to an AllocaInst.
    Making the limit part of the method signature makes it clear that by default
    the result is limited and should help avoid similar problems in the future.
    This fixes pr6126.

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

commit d0699b0384ab44c2c0344673d6c96fd246e0811f
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 25 17:52:13 2010 +0000

    Revert r94260 until findDbgDeclare() is made more efficient

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

commit 0271305987a4170ef3daa793c2a367338c0e32cb
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Mon Jan 25 15:32:10 2010 +0000

    Update test for darwin.

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

commit c4b84343d60c4140df8b11c6f5f23c8e981e0871
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:53:05 2010 +0000

    add a comment

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

commit aaa7b1bae9af996efdaa0f230800f59198b55ca8
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:52:13 2010 +0000

    emit the .size directive for global variables on ELF through
    mcstreamer.

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

commit 516b4d673d1cfba74c5c0e0f1db49abe77ca5853
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:43:40 2010 +0000

    we removed support for darwin8 tools.

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

commit 1f9165d2391eba416439e4467bd333e9daa99d9a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:29:13 2010 +0000

    all supported target now have aligned common support.

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

commit 9378674bdedadfe3fefb8aecfebee0b8cbbf25ad
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:26:17 2010 +0000

    Remove support for i386 tiger tools for aligned common symbols.
    Previously we would just silently miscompile code that used aligned
    common's, now at least you'll get a build error.  tiger-ppc already
    triggered the build error because it didn't have a version of this
    logic.

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

commit 3c3d2bf9419127c61c0d5e0bd43fab2e827cb0c2
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:23:14 2010 +0000

    don't set value to its default.

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

commit 34ed3bc8b335e54535f48b8182bebc0db0c2b477
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 25 07:20:44 2010 +0000

    coff targets support alignment on .comm

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

commit d8a8280017dfb9207e6e4f92dfaf485777a6c336
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Jan 25 04:59:07 2010 +0000

    ARM does accept the .comm directive alignment.

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

commit 6751d70c7fe47be58fdd937e3766ce4344ccff8e
Author: Eric Christopher <echristo@apple.com>
Date:   Mon Jan 25 04:10:28 2010 +0000

    Fix autoconf llvm srcdir location for generic projects.

    Patch by Torvald Riegel!

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

commit c9a5d80089360065d335b9a46911b7b679d4e193
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Mon Jan 25 02:27:39 2010 +0000

    Fix PR6134.
    We are not emitting alignments on Darwin for "bar". Not sure what is the
    correct way to do it.

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

commit 69b0fad03edc822efa7497bfbf5051475d9904f5
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Jan 25 00:54:13 2010 +0000

    Attempt to unbreak test on Linux. Chris, please check.

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

commit e05be056a19a8ee169ea2676f2c2a8b42050ff33
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Jan 25 00:45:01 2010 +0000

    This example requires RTTI.

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

commit 0f6edb89f62862757145752b50c465e990879cbd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:54:45 2010 +0000

    linux/ppc does use alignment in bytes, not pow-2.  This fixes PR6129.
    It looks like linux/arm and linux/mips have the same setting, which
    are probably wrong.  Someone who cares about ARM and MIPS should
    investigate with the testcase in PR6129.

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

commit 04e65245cdab942a551de170237973c9cb6b903e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:53:12 2010 +0000

    don't reset the default.

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

commit 1adf597745f664fdea164b2d25695e3aca78ee8c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:43:08 2010 +0000

    make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.

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

commit 117674051a2501cce79ca6e0b3ecc00e1382ffb7
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:22:08 2010 +0000

    mark some libraries that currently require RTTI.

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

commit 696f0cfe623a89ef7575ff6c0b3948c34d2f3baf
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:21:50 2010 +0000

    libs that need EH need RTTI.

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

commit b08bea7868ae3094051469e7f360eb945f35d973
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:20:40 2010 +0000

    ENABLE_EXPENSIVE_CHECKS shouldn't know how rtti is enabled, let REQUIRES_RTTI handle it.

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

commit 073777efc9f8dcc11201a24b257d1ad3efc73f0b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:17:09 2010 +0000

    reassociate should do this.

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

commit 34cc79c227e1bbe3c1d78a2ebbdf31e7289e9f2d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 20:01:41 2010 +0000

    add a note.

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

commit cdf289c59d527d18a7b3d6b29d7dc0cb2d006860
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 19:23:09 2010 +0000

    just remove this test, it is not reduced, is not clear what its testing for and
    it is dying due to fragility in the asmprinter .s comments.

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

commit 8eba210656b1b46a627a53f27607eb78bee0b46c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 19:13:39 2010 +0000

    this test has been failing or a long time, just disable it for now to get
    back to green.

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

commit b35037aec3f60518a97f86050098e0c3597b8e14
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 19:01:06 2010 +0000

    fix some issues where we weren't emitting enough newlines.

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

commit f6e18804c095c7a9580161cec25457910ff1e470
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 18:54:17 2010 +0000

    when emitting DIEs, emit the comment on the same line as the directive.
    This fixes FrontendObjC/2009-11-30-Objc-ID.m

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

commit 5ef7cf97cd5f40a660e36c637284eb120528dd04
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 02:27:03 2010 +0000

    move PR5945 here.

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

commit b30a9d51185aed4a863737ce8f4aa01770a91426
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 01:07:33 2010 +0000

    fix a parsing problem on instructions like:
    movw	$8, (_cost_table_-L97$pb)+66(%eax)

    After the parens, we could still have a binop.

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

commit 8075fd5cc680647735c00aa160597d438924b9d9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 00:25:09 2010 +0000

    This corrects an error in the type of the Llvm.dispose_context function.
    Patch by James Woodyatt!

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

commit 8bfb35b04c180f4b1c9ef08026d4d79e6dcbc22e
Author: Mon P Wang <wangmp@apple.com>
Date:   Sun Jan 24 00:24:43 2010 +0000

    It seems better to scalarize vectors of size 1 instead of widening them.
    Add support to widen SETCC.

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

commit 6bb7a3c88d365944ffbd6f7c6602d6634fd7eba3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 24 00:09:49 2010 +0000

    change the canonical form of "cond ? -1 : 0" to be
    "sext cond" instead of a select.  This simplifies some instcombine
    code, matches the policy for zext (cond ? 1 : 0 -> zext), and allows
    us to generate better code for a testcase on ppc.

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

commit 2de8d73b7944fa39803d9531719da96e0921a345
Author: Mon P Wang <wangmp@apple.com>
Date:   Sun Jan 24 00:05:03 2010 +0000

    Improved widening loads by adding support for wider loads if
    the alignment allows.  Fixed a bug where we didn't use a
    vector load/store for PR5626.

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

commit b9256a922c459a26e590d0ffbce1a7fa151421a1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 23:31:46 2010 +0000

    fix a potential overflow issue Eli pointed out.

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

commit 21dbf2fe88b87852d3b644752152fa4c939d9f67
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Jan 23 20:32:12 2010 +0000

    Speculatively revert r94322 to see if it fixes darwin selfhost buildbot.

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

commit 8070ec0e39fe9fa098e05c8480fefeeafdab9e63
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 19:21:31 2010 +0000

    third bug from PR6119: the xor dupe extension allows
    for arbitrary terminators in predecessors, don't assume
    it is a conditional or uncond branch.  The testcase shows
    an example where they can happen with switches.

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

commit ed230ec24e2639545b5f72ce86ceebd809b0f483
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Jan 23 19:19:34 2010 +0000

    Teach DAE that even though it can't modify the function signature of an
    externally visible function, it can still find all callers of it and replace
    the parameters to a dead argument with undef.

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

commit 2e27c8ab6d591b7c0b95f174bc4bb1788241a6ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 19:16:25 2010 +0000

    add an early out to ProcessBranchOnXOR to speed it up,
    handle the case when we can infer an input to the xor
    from all inputs that agree, instead of going into an
    infinite loop.  Another part of PR6199

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

commit b8d56ca2576b026967c306f6b2d4a7818215958f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 18:56:07 2010 +0000

    fix a crash in jump threading, PR6119

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

commit 79bda77aa67a5fb3ce416b072e5a7757ef2f0757
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 18:49:30 2010 +0000

    implement a simple instcombine xform that has been in the
    readme forever.

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

commit c577b8344b6fe79cd250ceaf95303a6405af12e9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 18:42:37 2010 +0000

    add a note

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

commit 2d28a9d1cd2f682c8fb812c2ba04a25c67cc2a76
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 17:59:23 2010 +0000

    add some notes, making posix-memalign be nocapture would be an easy improvement.

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

commit fcc37a1838a832ec99f3f469c7dbb26751a1db2c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Jan 23 10:26:57 2010 +0000

    Remove the '-disable-scheduling' flag and replace it with the 'source' option of
    the '-pre-RA-sched' flag. It actually makes more sense to do it this way. Also,
    keep track of the SDNode ordering by default. Eventually, we would like to make
    this ordering a way to break a "tie" in the scheduler. However, doing that now
    breaks the "CodeGen/X86/abi-isel.ll" test for 32-bit Linux.

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

commit 21733fda3761f7209a4ec0e54dfeba60009c8af9
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Jan 23 09:54:23 2010 +0000

    Respect operator precedence (and silence a gcc 4.3 warning).

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

commit bab5d64f0e7f902588a78294cb2196c498f1836a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 07:47:02 2010 +0000

    mcize lcomm, simplify .comm, extend both to support 64-bit sizes.

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

commit e5282425d454ae746a266d1c41175564545c057f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 07:21:06 2010 +0000

    resolve a fixme: the "nonexecutable stack directive" is actually
    a .section.  Switch to it with SwitchSection.

    However, I think that this directive should be safe on any ELF target.
    If so, we should hoist it up out of the X86 and SystemZ targets.

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

commit ce83c429c23fb6f94d987e49e39563fb2ccb9b1e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 07:17:54 2010 +0000

    remove a dead call.

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

commit a60bdbe226bb00daa15b7bc5a7fd9d3f0c1c2bc1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 07:00:21 2010 +0000

    use helpers.

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

commit 0952125a6ba77ae0bb54f995adc9dbbc0d5544a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 06:53:23 2010 +0000

    mcize visibility directives.

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

commit 5bec06f70cf3f98437d065cd7ddd80dfaa14d949
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 06:39:22 2010 +0000

    move the various directive enums out of the MCStreamer class
    into a new MCDirectives.h file.

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

commit 37bfafecbfdfd1d13c67939872f500b1b73c83e0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 06:17:14 2010 +0000

    Change constantexpr global variable initializers to convert the constants
    to MCExpr then emit them through MCStreamer with EmitValue.  I think all
    global variable initializers are now going through mcstreamer.

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

commit da960b1ecc70e2eb5b8fd2553d30f094b2c1ffb7
Author: Eric Christopher <echristo@apple.com>
Date:   Sat Jan 23 06:02:43 2010 +0000

    Don't lower splat vector load to relative to the esp if the
    stack may be misaligned.

    Update test accordingly.

    Patch by Evan Cheng!

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

commit 5cfb025a75f48ca48aacb4728e0fa2ab208e0cbb
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 05:51:36 2010 +0000

    mcstreamerize .no_dead_strip and .reference for static ctors/dtors.

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

commit 7aeeb28d19bdaece1ae9de1f16c3280a576f84c3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 05:45:28 2010 +0000

    stop testing for invalid output.

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

commit ea28a60728a6cf566ca89bb76b8eff841a6f78dd
Author: Eric Christopher <echristo@apple.com>
Date:   Sat Jan 23 05:29:06 2010 +0000

    Reapply 94059 while fixing the calling convention setup
    for strcpy.

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

commit d07f6755bbae6d71080f76f4067704e5ccd8f973
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 05:28:25 2010 +0000

    remove unneeded directive set.

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

commit d5071b187e87991fe21c9237bd05a4be888a9ca0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 05:26:25 2010 +0000

    use some helpers instead of duplicating logic.

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

commit 8977ba554ce5b1683adae55836e0710badcaa6f1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 05:19:23 2010 +0000

    mcize jump table and constant pool entry labels, .local on elf,
    and some .weak directives.

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

commit 0f700b2c30b62395cf6c35a63c5ae4dca45ddbd4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 04:54:10 2010 +0000

    emit .ascii and .asciz through MCStreamer.

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

commit a7fa27941f0d710932f12d55fe155abbcae09136
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 04:42:42 2010 +0000

    simplify code a bit.

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

commit fecdf6a06df7033f4c867bd13acfbeb966cd65d0
Author: Mon P Wang <wangmp@apple.com>
Date:   Sat Jan 23 04:35:57 2010 +0000

    InstCombine should not fold sext/zext of a vector and a bitcast to a scalar to a sext/zext

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

commit 1a7c14bf328f64ff4193dd3cf0295b8f93b8c3c2
Author: Ted Kremenek <kremenek@apple.com>
Date:   Sat Jan 23 04:01:37 2010 +0000

    Update CMake build.

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

commit d7466a925f7b8617abd8bc8b24bd7a5b3503316e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 03:11:46 2010 +0000

    remove one form of EmitString, just use EmitBytes instead.  We must
    be careful to add a \0 at the end though, because EmitString didn't
    do this.

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

commit f04952804f541d3122cfb43ec40cc0942325c23d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 03:11:10 2010 +0000

    remove this test.

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

commit b6ab361317fd3574732ff553d10208aac92d0fd3
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Jan 23 02:43:15 2010 +0000

    Added the skeleton for the implementation of the X86
    target-specific AsmLexer, and added the appropriate
    registration calls.

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

commit 059df4def56ac9f1eb215a3fb849a2f21891360a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Jan 23 01:21:27 2010 +0000

    Fix test.

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

commit c2ff4823326a56abb0ba669b821a5936b4352e8c
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Jan 23 01:19:28 2010 +0000

    Fix tests.

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

commit f7a921beb95ccea2238dbebe2c41d9178e894c3a
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Jan 23 00:40:33 2010 +0000

    Modified the register matcher function in AsmMatcher to
    be static.  Also made it possible for clients to get it
    and no other functions from ...GenAsmMatcher.inc by
    defining REGISTERS_ONLY before including GenAsmMatcher.inc.
    This sets the stage for target-specific lexers that can
    identify registers and return AsmToken::Register as
    appropriate.

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

commit da5a810fe5032fa06d1f50db89b0caf0c4af9be5
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 23 00:26:28 2010 +0000

    Avoid using "Type" as the variable name.

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

commit 17d6b5bc6ba2bedc3843f2650dc32f8f87240e22
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Jan 23 00:26:16 2010 +0000

    AsmMatcher: Add a comment.

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

commit d24eb84b7e60f8eee20cdf617eba33ebfa52b900
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Sat Jan 23 00:17:34 2010 +0000

    In mem2reg, for all alloca/stores that get promoted where the alloca has an associated llvm.dbg.declare instrinsic, insert an llvm.dbg.var intrinsic before each store

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

commit 2724561e93d576930911903b1f91abfe1681dc61
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 23 00:15:00 2010 +0000

    teach MCAsmStreamer::EmitBytes to use .ascii and .asciz

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

commit 0147ebbe1e565c30ea095212467d0c31c3cbfd9e
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Sat Jan 23 00:03:28 2010 +0000

    Make sure ValueFn starts off empty

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

commit 0122611496dacf43dcb8fd246258d0a835bc9988
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 22 23:49:45 2010 +0000

    Enable pre-regalloc scheduling load clustering by default.

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

commit c95d6a904c9d796664f720423f50a7a8e553dad9
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 22 23:49:11 2010 +0000

    Be more conservative with clustering f32 / f64 loads.

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

commit e1ca0cc113a5e7d4078729904274608de82c861d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 23:47:11 2010 +0000

    move "EOL" from asmprinter to dwarfprinter.  It should eventually
    be completely eliminated, but today is not that day.

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

commit 29f89d3d786ccb37ed00a96a4b439aa4ca95a4ec
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 23:43:14 2010 +0000

    remove uses of EOL.

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

commit 6d806e74cc94867843b050698b4daa39d5776321
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 23:40:08 2010 +0000

    add a new EmitCFAByte method and use it.

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

commit aa01d51d21d54f2ca00b78e4d2091d53533eaf5e
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 23:18:42 2010 +0000

    move uleb printing from asmprinter to dwarfprinter, mcize,
    cleanup and eliminate a bunch more uses of "EOL".

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

commit 7b1235ab731407403eea3a6b513ca1507fd973f1
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Fri Jan 22 23:04:39 2010 +0000

    Make OProfile support compile again after r93630 removed
    DebugLocTuple.  Also use an AssertingVH to ensure that MDNodes aren't
    destroyed while the FilenameCache is using them.

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

commit f91ddc3b77bfd40e84a928da86fac608cd113eb6
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 22:56:55 2010 +0000

    move sleb printing out of asmprinter into dwarf printer, make clients
    handle the comment better, MCize the non-.sleb case.

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

commit f57bfb4bcc2519b3e7409d385a4ff119ce21296c
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Jan 22 22:52:10 2010 +0000

    Remove MetadataBase class because it is not adding significant value.

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

commit 2ba10c12d0d4e205923380005bcd2a551fe3b707
Author: Sean Callanan <scallanan@apple.com>
Date:   Fri Jan 22 22:42:22 2010 +0000

    Added a Register token to AsmToken and the appropriate
    accessor method for its value.

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

commit 275991914793014fb284c1dec811d7684b3b2f1c
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 22 22:38:21 2010 +0000

    Ignore DEBUG_VALUE when building live intervals;
    this makes the code work transparently the same
    whether they're there or not.

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

commit e50e6d22c237b7287afa87cd358578cf1884111a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 22:38:16 2010 +0000

    add a new DwarfPrinter::EmitEncodingByte method which handles
    pretty printing encoding comments and eliminates redundancy on
    the client side.  We now get pretty dwarf like this again:

            .byte   255                                         ## @LPStart Encoding = omit
            .byte   0                                           ## @TType Encoding = absptr
            .byte   0x28                                        ## @TType base offset
            .byte   3                                           ## Call site Encoding = udata4
            .byte   0x1a                                        ## Call site table size
    ...

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

commit b70eff364cde6a60a00a0e549df9fd6d308d8355
Author: Sean Callanan <scallanan@apple.com>
Date:   Fri Jan 22 22:35:01 2010 +0000

    Filled out the skeleton of the TargetAsmLexer to behave
    exactly like an MCAsmLexer.  (The difference is that the
    TargetAsmLexer knows how to handle target-specific stuff
    like registers, whereas the MCAsmLexer is fully generic.)

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

commit 4c68039af93eedd5a3a85bcfd6e0c9e04c83faa9
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 22:23:57 2010 +0000

    rename the dwarf class to DwarfPrinter.  This matches the filename
    and much more accurately describes what it is all about.

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

commit 1d9f592d5ea82a8ccc47e86ca24b11fe7a32c91d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 22:19:51 2010 +0000

    fix indentation

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

commit 09bcfe29cc1206b4488ff52151b9aff6734aebd8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 22:09:00 2010 +0000

    inline away the trivial AsmPrinter::EOL() method.

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

commit 2b03593d029ac231ebcf9d581bcabcc3a4c40094
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:57:56 2010 +0000

    inline AsmPrinter::PrintHex into its two trivial callers.

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

commit c4baf399c89cac6a77f292eec358fcde663ba990
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:50:41 2010 +0000

    change this to be a static function instead of a method on asmprinter.

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

commit b8e3a9c1508eeeb8475fa824bc6188a383e089ba
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:43:28 2010 +0000

    make the loop comment printer print out a much better structured
    output.  An example:

            .align  4, 0x90
    LBB1_5:                                                     ## %while.cond3
                                                                ##   Parent Loop BB1_1 Depth=1
                                                                ## =>  This Loop Header: Depth=2
                                                                ##       Child Loop BB1_8 Depth 3
                                                                ##       Child Loop BB1_6 Depth 3

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

commit 7a083046e39014715254eec809993afe6557058f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:16:10 2010 +0000

    Changes to fix buffering that I forgot to commit with previous patch.

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

commit 2898d5c0c9f4a403de67ca714336612887d2220e
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:11:06 2010 +0000

    For blocks that are not loop headers, just print their loop depth and header BB.
    For loop headers, print Inner loop along with the other stuff so it doesn't take
    an extra line.  We now get stuff like this:

    LBB1_4:                                                     ## %land.end
                                                                ##   in Loop: Header=BB1_1 Depth=1
            notb    %al
            testb   $1, %al
            jne     LBB1_8

    and:

    LBB1_6:                                                     ## %while.cond7
                                                                ## Inner Loop Header: Depth=3
                                                                ##     Inside Loop BB1_5 Depth 2
                                                                ##   Inside Loop BB1_1 Depth 1

    which still isn't great for loop headers, but is much less verbose.

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

commit 992dadad54a34560aeb714f9b6330d50483e8242
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 21:00:45 2010 +0000

    reenable the label loop comments and switch them to use the formatted
    comment emission stuff.  I'm going to rewrite this though because the
    current output doesn't make sense.

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

commit b879eef258dd7a9b8480c7b2e1259a58de0278c4
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 20:16:37 2010 +0000

    Mark EH_RETURN64 as CodeGenOnly.

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

commit f9a0c6d6bf9f548fa5c0710eb87fbf81e38982e3
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Fri Jan 22 20:00:21 2010 +0000

    Another strncmp -> StringRef.startswith simplification.

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

commit b03dee3f599868a20c569540c53956914a71d25b
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 19:52:01 2010 +0000

    Convert some more random-comment-printing stuff to use
    AddComment and GetCommentOS.  Add a blank line between globals
    (even in non-verbose mode) to make the assembly more readable.

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

commit b671b3566275e21443b7430bef6610948a660c05
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 19:51:08 2010 +0000

    make this less constrained, we want blank lines between globals.

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

commit 643754db2ef4713fceda458b858e60e562ca815a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 19:17:48 2010 +0000

    add a new MCAsmStreamer::GetCommentOS method to simplify stuff
    that doesn't want to use twines.

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

commit 54bb43ce6bdbfc08a4c8651209c256c64c875afb
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Jan 22 19:16:40 2010 +0000

    Revert 94059.  It is breaking the MultiSource/Benchmarks/Prolangs-C/bison
    test on ARM.

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

commit 4daebf7f7de736ff476a1a219a95e524a81fec54
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 19:11:53 2010 +0000

    add missing break, PR6114, patch by M Wahab.

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

commit 5637abcbf760d7f372d8cdf20a2fe639aa801f87
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Jan 22 19:06:12 2010 +0000

    Fix/strengthen verification of llvm.dbg.declare

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

commit 54c6af0ac878c25b5854545cdb11cc7d1d41176e
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Jan 22 19:05:05 2010 +0000

    Keep ignoring pointer-to-pointer bitcasts

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

commit 0d63ba1ff03dbb2e5b2f7e7cc329c80ef8ff920a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 18:33:00 2010 +0000

    use both the Mangler and the CBE's mangler for identifiers,
    this should fix a problem duncan saw handling symbols with '.' in them.

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

commit 426fd0e36872e4959e3c40579c219fa4660e45fd
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 18:21:35 2010 +0000

    rename addComment -> AddComment for consistency.

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

commit cfd854a8b0cf3b1506b06476d66d2b882a4e0226
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Fri Jan 22 18:21:23 2010 +0000

    Simplify some uses of str(n)cmp with StringRef.

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

commit 8a7c2dd91fab40da7f5730e1bb47e32f1f4bba59
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 18:14:27 2010 +0000

    CMake: Don't try to descend into projects/compiler-rt, it doesn't work.

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

commit d6f53ec8a5f6329e9eb99fcd9721154e95863012
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 18:14:21 2010 +0000

    Make GetSourceVersion more portable, thanks Pawel!

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

commit f8b2a7fec64b897bdc32a1ce9aed6de2110a8937
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 18:14:14 2010 +0000

    Update CMake LibDeps

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

commit 3ea2167f18c86a5582b9a68051017ed54dfe0c71
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 18:10:54 2010 +0000

    make: Make .o files depend on Makefile, at least for now.

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

commit 6be4f1bb09a28c828765c25ae8137c1978bdb27d
Author: Edwin Török <edwintorok@gmail.com>
Date:   Fri Jan 22 15:51:31 2010 +0000

    Fix TimeValue::now() on Unix.

    TimeValue()::now().toEpochTime() is supposed to be the same as time(),
    but it wasn't, because toEpoch subtracted PosixZeroTime, but now()
    didn't add PosixZeroTime!
    Add a unittest to check this works.

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

commit 1bd4726718a54b82545b70f82de80a7790aeeeb2
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Jan 22 10:48:28 2010 +0000

    Revert r94066, which was the patch which added a Verifier pass after
    LoopStrengthReduce, as it's causing too much trouble (even with the
    old LoopStrengthReduce code).

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

commit a72e6a456823a00213f97a896fad80ac43225769
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 07:36:39 2010 +0000

    add comment support to the rest of the directives.

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

commit 7c50aa145f4d32af5f49598eee5d3a14a11961d8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 07:34:12 2010 +0000

    stop using strtoll, it gives windows heartburn.

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

commit 9eb7b072080725f485626551827d77072e6a3e6d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 07:29:22 2010 +0000

    Add the ability for MCStreamer to emit comments on the same line as directives.
    Switch over the asm-verbose comment for double values to use it.  We now get:

    _x:
    	.long	343597384                                   ## double 1.231200e+02
    	.long	1079953326

    For example, note that the comment is on the same line as the .long.  Woo.

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

commit 7e035d5fccfddc47297de0da99ee914d9a2bd214
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 07:06:15 2010 +0000

    pass "-fasm-verbose" into createAsmStreamer.

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

commit ac91dc93e5e0703418e786d0b53dafcfc588b600
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 06:49:46 2010 +0000

    Stop building RTTI information for *most* llvm libraries.  Notable
    missing ones are libsupport, libsystem and libvmcore.  libvmcore is
    currently blocked on bugpoint, which uses EH.  Once it stops using
    EH, we can switch it off.

    This #if 0's out 3 unit tests, because gtest requires RTTI information.
    Suggestions welcome on how to fix this.

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

commit 224823eaea4e1907b9a12bc9323d3a479aca3b1d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 06:29:25 2010 +0000

    give PassNameParser a home.

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

commit 22c5b90647c0f6db016708b0c818beb032926b95
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 06:25:37 2010 +0000

    add an out-of-line virtual method to CmpInst to give it a home.

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

commit 660a65c9b195dabacec7c583743ab48bc7fdd7cf
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 06:03:06 2010 +0000

    elimiante the dynamic_cast's from opt.

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

commit 228d59aef55e700c353f51d4d2e087b9f659a8ae
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 05:54:03 2010 +0000

    simplify code.

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

commit 0bc3c3b1cfae9e7dbc2bb023f0ff2b42f814e061
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 05:52:51 2010 +0000

    drop the pass name from the output.

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

commit 5f6a77614269d316aecbd92759ace12f5f1cf8a4
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 05:46:59 2010 +0000

    eliminate dynamic_cast from this file.

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

commit 8745ad5250e7744a3e2ea5962522c8d4dff1828d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 05:37:10 2010 +0000

    eliminate a bunch more unneeded dynamic_cast's.

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

commit 3205d176601749b3b9823acdf7584f2c165aee22
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 05:24:46 2010 +0000

    eliminate a bunch of dynamic_cast's.

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

commit 1efffa891157a377aa759adb556d32818dc1d8a8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 04:55:08 2010 +0000

    eliminate a bunch of dynamic_cast's.

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

commit c766713d70923e886ae2dde5840c83cb3f6fa74b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 22 03:36:51 2010 +0000

    Teach pre-regalloc scheduler to schedule loads from nearby addresses. It may improve cache locality. This is controlled by -cluster-loads for now.

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

commit ea0e0c0e1cfa23c6ed276798c7e6c98d00497cca
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 22 03:34:51 2010 +0000

    Add two target hooks to determine whether two loads are near and should be scheduled together.

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

commit 5444b9fe0858807f206081cab447f46d25a36e13
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 22 03:33:01 2010 +0000

    Add DenseMapInfo for signed long long.

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

commit c9539e24981a586ee732e16d2710dd7bf4be1a54
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 02:04:33 2010 +0000

    CMake: Add MCParser directory.

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

commit 54a7255c0b8f3703008ce88acf09afec3c801008
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Jan 22 02:04:28 2010 +0000

    lit: Separate test suite from test name with spaces, to make it easier to cut and paste.

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

commit fa52e910d9b9ffff0d86f7183cccad9d74330991
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:58:44 2010 +0000

    add new file

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

commit 0d0e32c35c92fb073da29ec06f5b54ffd6bb30c7
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:58:08 2010 +0000

    move some files out of the llvm-mc tool into the MCParser library so
    other tools can link it.

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

commit c1cd87d00fbb71385ddd4d2da812723ad9c6b5ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:55:10 2010 +0000

    forgot to svn add these, doh.

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

commit 808bf3bd80522a075959bea601c9e9ae06f72035
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:44:57 2010 +0000

    create a new MCParser library and move some stuff into it.

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

commit c28a9238761facfb1a2519da236192fd316f7700
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:17:12 2010 +0000

    remove some confused code that used strtoull

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

commit 2cea4f37aca55c4a1d6e24349d96ce488fca895f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 01:10:40 2010 +0000

    allow registering target lexers.

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

commit 8dbec783f4a5d12c6f883b8379e3c48685d2320f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 22 00:58:59 2010 +0000

    stub out a new TargetAsmLexer interface.

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

commit fa9de114313d06a89d317306683589ba43922d52
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Jan 22 00:46:49 2010 +0000

    Revert LoopStrengthReduce.cpp to pre-r94061 for now.

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

commit 1e4d5f45ee8b2a4602b3ea0fd5b133932eea4ae4
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Jan 22 00:28:27 2010 +0000

    Store flags in bitfields instead of masking them into the pointer for the left child.  This leads to some nice conceptually cleanups.

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

commit 5e634910a9e7d494064057658ca2847e629d26a7
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 22 00:08:13 2010 +0000

    Fix PR5694. The CMN instructions set the flags differently from CMP, so they
    cannot be directly interchanged for comparisons against negated values.
    Disable the CMN instructions for the time being.

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

commit 7205efd48b24a4d02771fd0e1f07c78ee6461163
Author: Ted Kremenek <kremenek@apple.com>
Date:   Thu Jan 21 23:42:57 2010 +0000

    Tidy up assertion syntax.  No functionality change.

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

commit 53bdfacf7beb2906e3dbecbe7d5f81f4c9f5338b
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 23:09:12 2010 +0000

    No need to look through bitcasts for DbgInfoIntrinsic

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

commit bf4f0e59d781441ebf28d7bc8b7b0eac8a23cf99
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 23:08:36 2010 +0000

    DbgInfoIntrinsic no longer appear in an instruction's use list

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

commit e498e711f16d8456d555e9b15bea0e02ed57f7f4
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 23:07:15 2010 +0000

    No need to look through bitcasts for DbgInfoIntrinsic

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

commit 45846ac009ca010097d85e2c548d97a6a70036e0
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 23:05:53 2010 +0000

    DbgInfoIntrinsics no longer appear in an instruction's use list; so clean up looking for them in use iterations and remove OnlyUsedByDbgInfoIntrinsics()

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

commit c95dce9668375cf950162fee2a64eb20ce297f77
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 23:01:22 2010 +0000

    When inserting expressions for post-increment users which contain
    loop-variant components, adds must be inserted after the increment.
    Keep track of the increment position for this case, and insert
    these adds in the correct location.

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

commit 06efd96affdf537dff3f5991aad8204ffb2d8d1d
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 22:46:32 2010 +0000

    Include IVUsers information in LSR's debug output.

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

commit f874582d8f5e44e304c58f824c61026f751bb4d1
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 22:42:49 2010 +0000

    Prune the search for candidate formulae if the number of register
    operands exceeds the number of registers used in the initial
    solution, as that wouldn't lead to a profitable solution anyway.

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

commit 59caf2b6453440d6b553b9a11be808608e41cd61
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 21 21:44:43 2010 +0000

    Trim unneeded includes.

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

commit 349291bfb714d8b1b75fd9c711995f990664b008
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 21:31:09 2010 +0000

    Add a comment.

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

commit 5c21610ada2f50338f60a4c311b61cabaacdda9a
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 21:29:25 2010 +0000

    It turns out that this #include is needed because otherwise
    ValueMapper.cpp ends up calling an out of line
    __ZNK4llvm12PATypeHolder3getEv, which is a template and llvm-config
    determines arbitrarily to use the one in libipo.  This sucks, but
    keeping the #include is a reasonable workaround.

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

commit 4e69ba2ec15421ddd7a9d18985bf32a087981520
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 21:20:51 2010 +0000

    unbreak the build, apparently without this transformutils starts depending on libipa?

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

commit 5be1d63a362791581a0c1c02bdfb85664b71f93b
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 21:05:54 2010 +0000

    tidy up

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

commit 0d62ac57a4a36d8a3208ee6a7efd02a2a6114b16
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 21:01:47 2010 +0000

    tidy up

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

commit 68abe9242583b94f39e6dd55f595ce87f3172f57
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 20:43:39 2010 +0000

    remove dead .erase.

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

commit ce178f1cad0e27378f696f07bec6c2ad9727ba08
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Jan 21 20:10:22 2010 +0000

    back this out for now. Growing Function is not good.

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

commit 9b80d3e6abe702b0570db64706220d71172a69fb
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 20:01:04 2010 +0000

    testcase for r94095

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

commit 2ca22403c61266e8f3039493f9e649aa01f3d74c
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 19:58:19 2010 +0000

    fix a problem with a missing _, testcase pending.

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

commit 399f540a943ada4219992eb5fbed256026ffc706
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 19:33:59 2010 +0000

    Don't need to include IntrinsicInst.h any more

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

commit 6b2e3d7c7fa479da9ad73c9cd5a6c891a68ca65e
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 21 19:26:20 2010 +0000

    No need to map NULL operands of metadata

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

commit 09e5cd4c6046361c494a73c048b94f1238f49672
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Jan 21 16:09:59 2010 +0000

    Add a simple script for getting a version tag from a svn/git-svn/git
    repository. Feel free to add support for your favorite VCS.

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

commit b1b797ca4dfdd5e70f8815092a7abe8c872c786a
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 21 15:40:14 2010 +0000

    struct/class mismatch.

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

commit b6ce7fcc5c5c28af35a89c9c1cfda56649e5a990
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 10:15:06 2010 +0000

    Make the parser include the lower level error message in its own error
    message, to be more informative.

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

commit 6decbcedb01ad0a677cda94b7d2e88c07144a06e
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 10:13:27 2010 +0000

    Avoid printing a spurious semicolon when there is no filename.

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

commit 5eac35732d05e5fde2933456cc74d6453fba0616
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 10:08:42 2010 +0000

    When re-using an existing cast for a user, it's still necessary to call
    rememberInstruction so that future users of that user will be inserted
    in the correct position. This fixes the Darwin selfhost.

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

commit 2f89af189aaa7413b37cf34bb6712abdfc6d5c47
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Thu Jan 21 07:03:21 2010 +0000

    Fix a crasher trying to fold each element in a comparison between two vectors
    if one of the vectors didn't have elements (such as undef). Fixes PR 6096.

    Fix an issue in the constant folder where fcmp (<2 x %ty>, <2 x %ty>) would
    have <2 x i1> type if constant folding was successful and i1 type if it wasn't.
    This exposed a related issue in the bitcode reader.

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

commit ccedfaf8a570d896c179fcbdf4c76cff9254bab3
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 06:11:03 2010 +0000

    remove a couple of asserts that use RTTI.

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

commit f351d251e90ab22adfc8323aca899d880c8d87fc
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 03:51:36 2010 +0000

    Run the verifier after LSR, to help catch use-before-def errors before
    they reach codegen.

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

commit 2003be1aa5b51b63f438ac33637b161ba97ec1db
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 21 02:09:26 2010 +0000

    Re-implement the main strength-reduction portion of LoopStrengthReduction.
    This new version is much more aggressive about doing "full" reduction in
    cases where it reduces register pressure, and also more aggressive about
    rewriting induction variables to count down (or up) to zero when doing so
    reduces register pressure.

    It currently uses fairly simplistic algorithms for finding reuse
    opportunities, but it introduces a new framework allows it to combine
    multiple strategies at once to form hybrid solutions, instead of doing
    all full-reduction or all base+index.

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

commit a0173bf117d7ff7ea00824e62d0457ad646bc7bb
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 21 02:07:07 2010 +0000

    eliminate dynamic_cast from the pass manager.

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

commit 4a4e8e8647c04d0dcf2b47f527ac7394187a7602
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 21 01:04:38 2010 +0000

    Add strcpy_chk -> strcpy support for "don't know" object size
    answers.  This will update as object size checking gets better information.

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

commit ea70dd4fcb20d2abf70a8c03157add6b03c0f2ac
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 21 00:55:14 2010 +0000

    Fix a minor issue in x86 load / store folding table. movups does an unaligned load so it doesn't require 16-byte alignment.

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

commit e96029f9f29e697bfccbc8f7bb0fe9426a58df6b
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Jan 21 00:43:30 2010 +0000

    Make sure that landing pad entries in the EH call site table are in the proper
    order for SjLj style exception handling.

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

commit df9e5096b6fe734bdcda8e724dd816624e0e6695
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Jan 21 00:19:58 2010 +0000

    Moved handling of inclusion from the AsmLexer to
    the AsmParser, breaking AsmLexer's dependence on
    SourceMgr.

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

commit 36c6b186829848ef935fc8d6388d77fc6c2bbea8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 23:30:28 2010 +0000

    simplify this code.

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

commit 6a9ae98ab368fdd5f7c9c4e2f130d1b2b05f27b6
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Jan 20 23:19:55 2010 +0000

    Changed the AsmParser to handle error messages itself
    rather than passing them off to the AsmLexer to handle.
    This means the AsmLexer no longer requires a SourceMgr
    to do error handling.

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

commit b0885e7b9b0f6b89af155696c4412afb25f8a56a
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Jan 20 23:03:55 2010 +0000

    SjLj EH introduces can introduce an additional edge to a landing pad and pad
    normalization needs to take this into account.

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

commit e155f8fbe86c8354938ba7dd3efce0578b99fc29
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Jan 20 22:45:23 2010 +0000

    Promoted the reference to the SourceMgr from AsmLexer
    into AsmParser, in preparation for making AsmLexer
    independent of the SourceMgr

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

commit 4b79aa91db34d6149052b68e0989f22200bf29b1
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Jan 20 22:18:24 2010 +0000

    Modified MCAsmLexer to return error information upward
    rather than printing it locally, reducing its dependence
    on SourceMgr.

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

commit 501eb0b812c54273e6621d5c3fe67b4c969316a8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 21:36:48 2010 +0000

    eliminate FnStubInfo, using MachineModuleInfoMachO instead.
    this makes function stub emission determinstic.

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

commit c0312ac5aef609cc96308d1ad389af8728c58ffe
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 20 21:36:02 2010 +0000

    make findDebugLoc a class method

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

commit 658deae41f27c8716ab47c2221238a7e091290ae
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 21:19:44 2010 +0000

    split function stub printing out to its own function,
    no functionality change.

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

commit 5432f843148c71db548070383c2a150255bc20bb
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 21:16:14 2010 +0000

    eliminate the GVStubs and HiddenGVStubs maps, and use
    MachineModuleInfoMachO instead.  This eliminates two sources
    of nondeterministic output in the ppc backend, but function
    stubs are still bad.

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

commit d11d8c1016cd1bcc66fe24bce6123aa12d3ba67b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 20:48:59 2010 +0000

    don't forget to initialize an instance variable!

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

commit 610d6cbe506606fc86525c0c30c68842e3723993
Author: David Greene <greened@obbligato.org>
Date:   Wed Jan 20 20:13:31 2010 +0000

    When XDEBUG is enabled, check for SelectionDAG cycles at some key
    points.  This will help us find future problems like the one
    described in PR6019.

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

commit 576e34ee28c04a3321e3693e1e431bbf9688f256
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 20:09:02 2010 +0000

    adopt getAdjustedAnalysisPointer in a few more passes.

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

commit 9917244e222bb4758cb5dd033de03763cad6e077
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 19:53:32 2010 +0000

    adopt getAdjustedAnalysisPointer in two more passes.

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

commit 73d5e3f43961009732292aadf5987ffac2dee486
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 19:51:46 2010 +0000

    adopt getAdjustedAnalysisPointer in BasicCallGraph.

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

commit d3ff296dffce1990825ce3503b5532f46f0491d9
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 19:26:14 2010 +0000

    add some new methods to adjust this pointers.  Not used yet.

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

commit a0252e0a4f296dee7670281ae95d43ca08e28478
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 19:25:45 2010 +0000

    add a helper method.

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

commit e8391018c707eecd15793967a7e076eee6eddd40
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 17:57:50 2010 +0000

    don't send null pointers through the constantexpr codepath unneededly.

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

commit 674ee7197741c9fdea7dc81a29969ff5d72aa5a6
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 17:53:51 2010 +0000

    reduce redundant are's.

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

commit 7d97c90f9d4c28592c4711451f52c502246ca3ef
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 20 17:51:28 2010 +0000

    Move per-function inline threshold calculation to a method.

    No functional change except the forgotten test for
    InlineLimit.getNumOccurrences() == 0 in the CurrentThreshold2 calculation.

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

commit cf85333d1f13d5b3d702cf865a7075136f76dcad
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 17:50:30 2010 +0000

    use getGlobalDirective(), don't hardcode .globl.  PR6093

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

commit ff9bf035c5b0e263e1f4da7785141eef996cd427
Author: David Greene <greened@obbligato.org>
Date:   Wed Jan 20 15:27:19 2010 +0000

    Fix an infinite recursion problem.  dbgs() should return errs() in
    release mode.

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

commit ac4b96795f374059d5989eac501d97a983183a0c
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 07:41:15 2010 +0000

    eliminate some uses of AsmPrinter::EmitIntXXX

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

commit c3663a67fde068e214d251c0c399c35b045a0a22
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 07:37:49 2010 +0000

    Backout r93990

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

commit b4f4d33117cd1e581608f0a1a24591d4bcb3173b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 07:33:29 2010 +0000

    inline and radically simplify printDataDirective.  It will eventually
    go completely away.

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

commit e03a029d04eabab1cc3164c336b34cb3b8004876
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 07:24:05 2010 +0000

    emit basic block labels with mcstreamer.

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

commit 17b54b8fd322deb00afde2bec9443984ad8c7e35
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 07:19:19 2010 +0000

    emit integer and fp zeros as (e.g.) .byte 0 instead of .space 1,
    for tidiness.

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

commit b1dee1cd01c05f2585b9561f81597af2f03c3a62
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 07:11:32 2010 +0000

    signficant cleanups to EmitGlobalConstant (including streamerization
    of int initializers), change some methods to be static functions,
    use raw_ostream::write_hex instead of a smallstring dance with
    APValue::toStringUnsigned(S, 16).

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

commit e4e1863f0d65b0efdbf69c607aedfa138c144a3c
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 06:57:02 2010 +0000

    Fix/strengthen verification of llvm.dbg.declare

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

commit d3792faac8c633d0d89915ea142f9e740675b2d4
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 06:56:16 2010 +0000

    Switch Elts from vector to SmallVector

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

commit 6ca943c75e9469b1c2a0439959c354c7c323a6a3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 06:53:37 2010 +0000

    switch ConstantFP emission to use MCStreamer, significantly
    simplifying the code.

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

commit 5a6317d5dcbd14e2c7b5001df315bd930d480244
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 06:45:39 2010 +0000

    make mcasmstreamer handle expanding 8 byte integer constants to
    4-byte constants if .quad isn't supported.  Switch a bunch of
    methods used by the dwarf writer to use OutStreamer.EmitIntValue.

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

commit 15fbb193b82579b419a06f4d86b8c0f08a086182
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 06:39:07 2010 +0000

    give createAsmStreamer an 'isLittleEndian' argument.

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

commit 996551e1439e0a0e34c022826ccd8f87b2b5b9e2
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 20 06:34:14 2010 +0000

    revert 93934, removing the MCAsmInfo endianness bit.  I can't
    stomache MCAsmInfo having this, and I found a better solution to
    this layering issue.

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

commit 84b83d85f7e1b7ef91558699bee248afe19e80a2
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 06:22:33 2010 +0000

    Fix if/else brackets; getFunctionForValue() is to be called for non-metadata values

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

commit 6bacf0a37188b473012e23bf916dca97727584df
Author: Chandler Carruth <chandlerc@gmail.com>
Date:   Wed Jan 20 06:01:02 2010 +0000

    Fix the conditions to unambiguously show the logic they represent. This is the
    logic enforced in the test case as well, so hopefully it is correct. Please
    review Victor.

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

commit e419cf483658b209342b05b465819759004ef7dc
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 05:49:59 2010 +0000

    Map operands of all function-local metadata, not just metadata passed to llvm.dbg.declare intrinsics

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

commit b671414043b6a956cc23051ef13ba48b86d8ae5a
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 05:44:11 2010 +0000

    Avoid unnecessary Elts array

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

commit 10e291fa4a937d83b23f7f5a293e1ff76e9f1961
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 20 04:45:57 2010 +0000

    Refactor common parts of MDNode::getFunction() and assertLocalFunction() into getFunctionForValue()

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

commit 475a3f29b6e1497b3a413506c1a5911312ccb0d6
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Jan 20 02:05:23 2010 +0000

    If a instruction belongs to another function (and not current function) as per debug info attached with the instruction then ignore the dangling lexical scope of this instruction. Such scopes are unreachable.

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

commit 9f878d30358199527a32ee39043cc5cee162dc7b
Author: David Greene <greened@obbligato.org>
Date:   Wed Jan 20 00:59:23 2010 +0000

    Add some asserts to check SelectionDAG problems earlier.

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

commit bf5ecb9ec5f838a6a720894b13584e90c238d2cf
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Jan 20 00:43:07 2010 +0000

    For 'install-clang' target, also traverse tools/clang/lib/Runtime.

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

commit 075532b7273ecaf827fca3e1683c9c14831af19a
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 20 00:19:24 2010 +0000

    Move findDebugLoc somewhere more central.  Fix
    more cases where debug declarations affect
    debug line info.

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

commit 7271e860285ff2a5f7b111f4ba55cc5426837a28
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 23:30:49 2010 +0000

    Fold (add x, shl(0 - y, n)) -> sub(x, shl(y, n)), to simplify some code
    that SCEVExpander can produce when running on behalf of LSR.

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

commit bc4aaeb19b543b2582c14e621da711a90f968956
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Jan 19 22:56:26 2010 +0000

    Wrap some comments to 80 columns.

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

commit 39f55232c932dd44ce3807a6d1967c98fae1970e
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 22:53:50 2010 +0000

    Make SCEVAddRecExpr's getType return a pointer type when the add
    has a pointer member. This helps reduce unnecessary bitcasting
    and uglygeps.

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

commit a5c5cf3c26fb368e1f28b4f8f6c06ab401058886
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 19 22:50:05 2010 +0000

    Fix a case where debug_value was perturbing the
    line number info.

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

commit 147d8bd28abfcc314802fd9123b09236ba95b62b
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 22:45:06 2010 +0000

    When doing address-mode sinking, expand the base register first, rather
    than the scaled register. This makes it more likely that subsequent
    AddrModeMatcher queries will match the new address the same way as the
    old, instead of accidentally matching what had been the base register
    as the new scaled register, and then failing to match the scaled register.
    This fixes some problems with address-mode sinking multiple muls into a
    block, which will be a lot more common with some upcoming
    LoopStrengthReduction changes.

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

commit e1644edcfb4b34a1fafc20e708820c5544cf24f4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 22:42:28 2010 +0000

    give MCAsmInfo a 'has little endian' bit.  This is unfortunate, but
    I really want clients of the streamer to be able to say "emit this
    64-bit integer" and have it get broken down right by the streamer.

    I may change this in the future, we'll see how it works out.

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

commit d86a19eac282c33ef3dd894a7286ef22a32ececb
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 22:27:22 2010 +0000

    Add a comment and tidy up some whitespace.

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

commit da9eea0223433c3c7c1d5995888b04fca0d3151f
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 22:26:02 2010 +0000

    Fix a typo and an 80-column violation in comments.

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

commit c56417c271387318cb2d6cd23da4e3483d1109c5
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 22:21:27 2010 +0000

    Give ScalarEvolution access to the DominatorTree. It'll need this
    to make more intellegent AddRec folding decisions.

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

commit f304d1a34c6af7a35230cbaa3cabea35229810a9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 22:16:33 2010 +0000

    simplify the rest of fp constant printing.

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

commit 132bf14002c41c445a57af51652adec7d7ff7e04
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 22:11:05 2010 +0000

    simplify the code for printing x86 long double, don't do work
    for -fverbose-asm unless it's on.

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

commit 77abfc1e6ce83fc23427e1b0f07a97bf3d9a417a
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Jan 19 22:08:34 2010 +0000

    Identify predicate and optional-def operands when printing machine
    instructions.

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

commit ed6d8c436e06abdd9b9993c32e21876ef0ddb648
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 22:03:38 2010 +0000

    add a new EmitIntValue method that MCStreamer impls can optionally define
    and that clients can use.

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

commit 8149786c50b3532bf702b45ace4b2388a1341d41
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 21:55:32 2010 +0000

    Add a new helper function to IVUsers for returning the "canonical"
    form of an expression. This is the expression without the
    post-increment adjustment made, which is useful in determining
    which registers will be used by the expansion.

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

commit 68867702f7a6049e8b8a8a6b193424a3c0505aaf
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 19 21:51:51 2010 +0000

    Add nounwinds.

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

commit 0b51ee89fee658d8ef29b8060e15767fc67455b6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 21:51:22 2010 +0000

    eliminate AsmPrinter::EmitZeros: just use MCStreamer directly.

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

commit bda38003386beaad6a24d5b821738a0bd46f64b4
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Jan 19 21:44:56 2010 +0000

    Promoted the getTok() method to MCAsmParser so that
    the two token accessor functions are declared consistently.
    Modified the clients of MCAsmParser to reflect this change.

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

commit dddb79d966889b268f642461bbb932c9f2c822cf
Author: Xerxes Ranby <xerxes@zafena.se>
Date:   Tue Jan 19 21:26:05 2010 +0000

    Stubs for getHostCPUFeatures API. This implements part of PR5389.

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

commit e044e95d47bc670e115a814ebe80cafbaa783cff
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Jan 19 21:08:28 2010 +0000

    Remove predicates when changing an add into an unpredicable mov.

    Since the mov is executed unconditionally, make sure that the add didn't have
    any predicate.

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

commit 632fa82c8d0060a9049ee0ec5d6badabbe7ebaaa
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 19 20:59:04 2010 +0000

    Update CMake list.

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

commit 396e20751d87b0194dcc9e4b947a1575338d25f7
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 19 20:37:34 2010 +0000

    Add some new debugging APIs to print out "raw" SelectionDAGs to make
    understanding CannotYTetSelect and other errors easier.

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

commit 7bb069114798422089019fb5ca25b462cfc0d5fd
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Jan 19 20:27:46 2010 +0000

    Propagated the parser-side Lex function's declaration to
    MCAsmParser, and changed the target-specific AsmParsers
    to use it.

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

commit f7d4aa347f157579aa9a192e68506850d9780d4c
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Jan 19 20:22:31 2010 +0000

    Added a Lex function to the AsmParser, to allow handling
    of include directives to occur within the parser itself.
    This will break the lexer's dependency on a SourceMgr as
    input.

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

commit db5b0d575b7cb1f776fbcf4a766bf146a9f7627f
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Jan 19 19:57:07 2010 +0000

    Fix a bug introduced on r92564 where the name "Node" was already
    in use by Mips.

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

commit cafc2da44c01a7d1a766451bd55a0f6d9cebdf35
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 19:46:13 2010 +0000

    Generalize mcasmstreamer data emission APIs to take an address space
    identifier.  There is no way to work around it.

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

commit c19dbe068d8b59c298a4d835f0d7c5ada6bd2954
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 19 19:45:51 2010 +0000

    Do not extend extension results beyond the use of a PHI instruction at the start of a use block. A PHI use is expected to kill its source values.

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

commit a62bf10496e55c0a70ddc0c6b21502e34d794333
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 19:10:44 2010 +0000

    refactor code to be static functions instead of methods on AsmPrinter.
    This fixes some bugs handling address spaces.

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

commit b07e5f66f20e04da9f41e3ab172c35a5167dd525
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 18:58:52 2010 +0000

    mcstreamerize AsmPrinter::EmitZeros, at least when emitting to the
    default address space.

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

commit 689f7609fc35781483edf60e5be16030abc931b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 18:52:28 2010 +0000

    add an MCAsmStreamer::EmitFill specialization of EmitFill that
    emits one directive instead of N.  Not doing this would be a
    significant regression on the # bytes generated by .fill.

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

commit dea52e11c0b7f330a62b6cd9964abff399e97ded
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 18:45:47 2010 +0000

    add a "MCStreamer::EmitFill" method, and move the default implementation
    (which just iteratively emits bytes) to MCStreamer.

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

commit 264871c452f0b74abbce18f24f542d0d3d468187
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 18:37:01 2010 +0000

    remove MAI::ZeroDirectiveSuffix, which is only used by MASM,
    which we don't support anymore.

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

commit 3b139e487e2130ae43ccff63246fad86d23df9c0
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Jan 19 18:31:11 2010 +0000

    For aligned load/store instructions, it's only required to know whether a
    function can support dynamic stack realignment. That's a much easier question
    to answer at instruction selection stage than whether the function actually
    will have dynamic alignment prologue. This allows the removal of the
    stack alignment heuristic pass, and improves code quality for cases where
    the heuristic would result in dynamic alignment code being generated when
    it was not strictly necessary.

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

commit 21782ed354253d6780e6caa48d6e8bc0f1dbe4f0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 18:16:19 2010 +0000

    optimize ~(~X >>s Y) --> (X >>s Y), patch by Edmund Grimley
    Evans!

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

commit 01dfd518ef5a3c0680a6c91283371ced13ff8525
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Jan 19 17:00:43 2010 +0000

    On pic function calls some arguments were marked dead and
    the instruction to load those args removed. This fix PR6071

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

commit a1ecb26fd9ca637d5154f07c2a5692652f3b69b6
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Jan 19 16:42:10 2010 +0000

    The change in r90189 adds a link in a directory outside the iPhone platform
    directory when building the llvmCore_Embedded project.  Fix this by putting
    the iPhone platform directory into DEST_DIR instead of DEST_ROOT.  I also
    noticed what appears to be an unintentional use of DEVELOPER_BIN instead of
    DEVELOPER_DIR, so I fixed that and changed to use DEVELOPER_DIR in some places
    that were hardcoded to "Developer".  Finally, the other changes here allowed
    some refactoring and simplification, which I have done.

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

commit d93965f3a98c09263a9983d28b91c0c5a06a9b05
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Jan 19 12:53:04 2010 +0000

    load f64 +0.0 in a cleaner way. This fix part of PR5445

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

commit 37e6aad4b09529afa22b87248909da7b43d7a8d0
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Jan 19 12:37:35 2010 +0000

    Fix return registers for mips eabi

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

commit dcb6f254d32e9c8dc2a44654d70177334896583d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:41:24 2010 +0000

    mcstreamer'ize the rest of EmitGlobalVariable that is used on
    darwin.  The next big piece to get global variables streamerized
    is EmitGlobalConstant.

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

commit eb8331e45b56034b1f29be2e90e7a980525d8e32
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:39:54 2010 +0000

    don't let asm-verbose break the check-next lines in these tests.

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

commit 8ee4950d6fd5bf796878193a8c7a6e2b80ae71e4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:25:51 2010 +0000

    stop using the .lcomm pseudoop on darwin, instead, directly use the
    .zerofill directive.  Streamerize its generation.

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

commit fc7b1053d54d819adea030bea5445aa685ed2c1c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:22:22 2010 +0000

    fix parsing .comm directives on systems which do not represent alignments
    as a power of 2.  This fixes MC/AsmParser/directive_comm.s

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

commit 30301d70964c8da1d1c1686b2c42ae70f51f752b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:21:23 2010 +0000

    only darwin has zerofill

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

commit c412fbf41da6e79306dda0cf5a2f445f841389bd
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 19 06:19:05 2010 +0000

    MDNodes are not expected to disappear or replaced by another MDNode, so there is no need to pay the cost of WeakVH and ValueMaps.

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

commit be5475c17deca20f05263e9d6e33c700a835bc4e
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 19 06:09:04 2010 +0000

    Avoid including DebugInfo.h in AsmPrinter.h

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

commit 3c87acb187e34b2bcd4db357de44d321417b1147
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:08:15 2010 +0000

    zap the ARM version of PrintGlobalVariable, which I missed.

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

commit 370ee59d0a37bc4cb159dead5c391fe79e85628c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 06:01:04 2010 +0000

    mc'ize some stuff, don't comment out .lcomm directive in -fverbose-asm mode.

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

commit a9934f0312e4caa9a7366d70b7f9dcf624101ff7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 05:51:42 2010 +0000

    factor this code better.

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

commit 42a203b73bbc908258a8c2cee070559c300f3bfe
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 05:38:33 2010 +0000

    Now that we have everything nicely factored (e.g. asmprinter is not
    doing global variable classification anymore) and hookized, sink almost
    all target targets global variable emission code into AsmPrinter and out
    of each target.

    Some notes:

    1. PIC16 does completely custom and crazy stuff, so it is not changed.
    2. XCore has some custom handling for extra directives.  I'll look at it next.
    3. This switches linux/ppc to use .globl instead of .global.  If .globl is
       actually wrong, let me know and I'll fix it.
    4. This makes linux/ppc get a lot of random cases right which were obviously
       wrong before, it is probably now a bit healthier.
    5. Blackfin will probably start getting .comm and other things that it didn't
       before.  If this is undesirable, it should explicitly opt out of these
       things by clearing the relevant fields of MCAsmInfo.

    This leads to a nice diffstat:
     14 files changed, 127 insertions(+), 830 deletions(-)

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

commit 9408d24e1a589d705bda5a8ced414809ac0a27b6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 05:25:38 2010 +0000

    use %object like other elf targets, gas accepts either.

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

commit 7c7b3b869fb6912f28ebbf3e939cf1fa6f6e6da0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 05:23:59 2010 +0000

    simplify the mips target to print .size and .type for c strings
    just like all other elf targets.  Bruno, if this isn't right, please
    let me know + why :)

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

commit 6359ed28f836123afe82d7d276a4a173bb638587
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 05:08:13 2010 +0000

    hookize the cygwin ".linkonce" directive.

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

commit 7fe06165d0b7b91b466ef0faced7bd91a03ad44f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:59:55 2010 +0000

    more cleanups.  Emit the .local directive even on cygwin/mingw.
    I'm not sure that this is correct, but it causes no test failures,
    and just emitting a .comm without protecting its linkage somehow
    is surely not right.

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

commit 5a5510cf167f6288af982a43eb172af46e93e48c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:53:18 2010 +0000

    some cleanups

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

commit c9b123031148e07082e9ad2393b5657bf3ba2483
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:48:20 2010 +0000

    add a bool for whether .lcomm takes an alignment instead of basing this on "isdarwin".

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

commit 2a21601ea57eb29fe58399ca68e90d7710f08292
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:39:15 2010 +0000

    hoist handling of external globals and special globals up to common code.
    This makes a similar code dead in all the other targets, I'll clean it up
    in a bit.

    This also moves handling of lcomm up before acquisition of a section,
    since lcomm never needs a section.

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

commit 874fdbc7755aa6634c126e3f8027dabc6617f0f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:34:02 2010 +0000

    move production of .reference directives for static ctor/dtor list on
    darwin into common code.

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

commit bf679f8f253409980d143ffe3f8dac1b541f12aa
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Jan 19 04:32:48 2010 +0000

    Fix a crash in scalarrepl for memcpy/memmove where the source and destination
    are the same.  I had already fixed a similar problem where the source and
    destination were different bitcasts derived from the same alloca, but the
    previous fix still did not handle the case where both operands are exactly
    the same value.  Radar 7552893.

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

commit 7337615ab96c5bce72b08012ebd4dbe95f316811
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:21:20 2010 +0000

    use BSSLocal classifier to identify 'lcomm' data instead of
    duplicating the logic (differently) in lots of different targets.

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

commit b1ef66c3db822b58d683ec34f1d460838fb3edec
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 04:15:51 2010 +0000

    make TLOF subclassify BSS based on linkage type into private, external
    and everything else (weak).

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

commit 1eef2e76c6a89407e6f6aa92986019cd86824ea9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 03:13:44 2010 +0000

    now that elf weak bss symbols are handled correctly, simplify a bunch of code.

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

commit 3a717abc755b03e1b910512fb956784f56df853e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 03:06:01 2010 +0000

    fix a significant difference between llvm and gcc on ELF systems:
    GCC would put weak zero initialized mutable data in the .bss section,
    we would put it into a crasy '.gnu.linkonce.b.test,"aw",@nobits'
    section.  Fixing this will allow simplifications next up.

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

commit 7ca96cb1376934774c5f69e6a25affbc8d45261e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 02:48:26 2010 +0000

    introduce a section kind for common linkage.  Use this to slightly
    simplify and commonize some of the asmprinter logic for globals.

    This also avoids printing the MCSection for .zerofill, which broke
    the llvm-gcc build.

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

commit 174cddac3e5998c65b10a56e41fef76b51b2bb6a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 02:46:56 2010 +0000

    there is no need to emit a .section above .comm on linux.

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

commit b604cae660fe5b0750188a59e27b93d79d0d5d76
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Jan 19 02:44:01 2010 +0000

    Even more explanation.

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

commit dcebc08f0cb3ca07bceeeba153c403600cb6c32c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 02:13:06 2010 +0000

    change an accessor to a predicate.

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

commit 0b3f8751bf270cc0e292aea4a8bc1343964d8312
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 02:09:44 2010 +0000

    Cleanup handling of .zerofill on darwin:

    1. TargetLoweringObjectFileMachO should decide if something
       goes in zerofill instead of having every target do it.
    2. TargetLoweringObjectFileMachO should assign said symbols to
       the right MCSection, the asmprinters should just emit to the
       right section.
    3. Since all zerofill stuff goes through mcstreamer anymore,
       MAI can have a bool "haszerofill" instead of having the textual
       directive to emit.

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

commit ab150043d7947faa967d367679f2738d64708167
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Jan 19 01:32:44 2010 +0000

    Remove this fixme, looking at the linker source, all targets pad to 4 bytes.

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

commit 5d0f0887e332f44c7f7341fbe473b0ed3bb0537b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 19 01:28:09 2010 +0000

    remove extraneous ;

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

commit 13026cf2cbaddc405f8b34ce847cdb2f24f2a7ca
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 19 01:26:02 2010 +0000

    Revert accident check-in from r93165.

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

commit 288d2eeab618759992858e9a72a8b90cbd3745f8
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Jan 19 01:20:15 2010 +0000

    Fix comment.

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

commit 410c2a5c12cdaaa9686da1db9a64d0b7aeff924d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 19 00:44:15 2010 +0000

    Fix r93758. Use isel patterns instead of c++ selection code to select rbit and make sure we pick different instructions for ARM vs. Thumb2.

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

commit 94a1c602a2b12485a851ad283ec7c14375334320
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 19 00:35:20 2010 +0000

    Test case for r93758.

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

commit 9fa890d694455ec4718633a1fa732953b946fca6
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 19 00:12:05 2010 +0000

    Reverting.

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

commit d03ad18a7004198ff00b6b33b618cf3493851a11
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 19 00:10:52 2010 +0000

    Revert 93811 per request.

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

commit f482719e48ad43d7b2cdb395111f5677caaef940
Author: Dale Johannesen <dalej@apple.com>
Date:   Mon Jan 18 23:34:55 2010 +0000

    Enable code to emit dbg.declare as DEBUG_VALUE
    comments (fast isel, X86).  This doesn't seem
    to break any functionality, but will introduce
    cases where -g affects the generated code.  I'll
    be fixing that.

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

commit 041fb126b6b299d7b595d7261528503ecc1ffa31
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 18 22:55:08 2010 +0000

    Add comment that MDNode::getFunction() is not to be used by performance-critical code (currently only used by AsmWriter)

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

commit 14f91a3da3c835ef8b57b25c0936e405a19b0217
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Mon Jan 18 22:38:31 2010 +0000

    Make opt -O3 act more like clang -O3 etc., by making the inlining thresholds
    match.

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

commit 81718ed416e1564ede7a5d65d299aaf25ea59ef8
Author: Eli Friedman <eli.friedman@gmail.com>
Date:   Mon Jan 18 22:36:59 2010 +0000

    Add some potentially interesting transformations to README.

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

commit 326cb3536de8fc6c3c3ad19d73d6e4e80e2f6bae
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Jan 18 22:36:35 2010 +0000

    - Add getLSDAEncoding to the PowerPC backend.
    - Greatly improve the comments to the getLSDAEncoding method.

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

commit 5cd1ffa32f2cb6ce51447804807d6e086e607a49
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 22:27:43 2010 +0000

    make llvm-config more portable to windows versions of perl,
    patch by Michael Beck!

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

commit dd16da9a692dee7befbfb1699abe85f9cf7ac161
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 22:19:16 2010 +0000

    my instcombine transformations to make extension elimination more
    aggressive changed the canonical form from sext(trunc(x)) to ashr(lshr(x)),
    make sure to transform a couple more things into that canonical form,
    and catch a case where we missed turning zext/shl/ashr into a single sext.

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

commit 8b9c5f1875684043ecb65a5bf711ece3699e7897
Author: Sean Callanan <scallanan@apple.com>
Date:   Mon Jan 18 22:16:54 2010 +0000

    Added a newline at the end of SMLoc.h

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

commit 9b93f747cf6e8b097776619dbd35b238b9473645
Author: Sean Callanan <scallanan@apple.com>
Date:   Mon Jan 18 22:11:34 2010 +0000

    Changed the comment in the file header for SMLoc
    to something more accurate.

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

commit 02aceb027bc0da9bce100366e45df046c0aa826d
Author: Eric Christopher <echristo@apple.com>
Date:   Mon Jan 18 22:11:29 2010 +0000

    Have FastISel handle llvm.trap().

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

commit 52ab36d3758b279fe12cb3010a70a05100fa2b87
Author: Sean Callanan <scallanan@apple.com>
Date:   Mon Jan 18 22:07:51 2010 +0000

    Split SMLoc out in its own header so that it can
    be used independently of SourceMgr.

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

commit 53b47a5d360d1664c9325cff112c44d37e17fc56
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Jan 18 22:01:39 2010 +0000

    Minor cleanup for jump table printing. Need a reference, not a pointer, for
    printing via <<. Otherwise we just print the pointer value.

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

commit bb7347bbd893104b53eeebbd0c45c85b350ea9f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 22:00:46 2010 +0000

    filecheckize this.

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

commit e40f06f8a11c74df8868132c920cb77ceb97996a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 21:58:32 2010 +0000

    filecheckize

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

commit 7352e5fcb6e842db329423cb9556710877692fbf
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 21:55:43 2010 +0000

    remove a redundant test, filecheckize another.

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

commit e4027dfeed6f42ef5e66b236d45a1a2e60bdeb56
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 18 21:38:44 2010 +0000

    Canonicalize -1 - x to ~x.

    Instcombine does this but apparently there are situations where this pattern will escape the optimizer and / or created by isel. Here is a case that's seen in JavaScriptCore:
      %t1 = sub i32 0, %a
      %t2 = add i32 %t1, -1
    The dag combiner pattern: ((c1-A)+c2) -> (c1+c2)-A
    will fold it to -1 - %a.

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

commit e07f7e6e5dce1bf367720c0b5bad1c724257e643
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 21:09:05 2010 +0000

    update mkpatch, patch by Garrison Venn!

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

commit b754fd33c09170de2231747307dcff08d0780a02
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 18 20:42:09 2010 +0000

    Make findDbgDeclare/findDbgGlobalDeclare local static functions; avoid Elts array

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

commit 7b452d36b62d8e683d725a509d1205fd28266587
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 18 20:36:54 2010 +0000

    Simplify MDNode::getFunction() and assertLocalFunction() by avoiding extra Function* variable and smallptrset since function-local metadata cannot be cyclic

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

commit 8c2481288f3038e03b91cb9c2bef53781c9b2985
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Mon Jan 18 20:15:56 2010 +0000

    The most significant encoding bit of GPR:$src or GPR:$dst was over-specified in
    the various MOV (register) instructions (16-bit Thumb), including tBRIND (the
    indirect branch).  Instead of '1', it should be specified as '?', because GPR
    only specifies the register class, which includes both hi-and-lo registers.

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

commit 5c57dc1513859a02b984b60e63765104a131ff40
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Jan 18 19:58:49 2010 +0000

    Patch by David Conrad:

    "On ARMv6T2 this turns cttz into rbit, clz instead of the 4 instruction
     sequence it is now."

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

commit f9112229d2d7340819bd23f3d7bdde067b480543
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 18 19:52:14 2010 +0000

    While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,
    because it points to an alloca instruction through metadata.

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

commit dfca7fe1f42122ff72218a20955aaba6e3d50e5e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 19:50:32 2010 +0000

    reject some invalid IR.  We already assert and reject this from the
    .ll parser, but PR6070 wants it in the verifier too.

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

commit fbc40f52875a6b326f93a2e6814734dd83960cf4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Jan 18 19:47:53 2010 +0000

    Add FIXME comment.

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

commit 85e7c4f09ab94c69ccd95cd5b17005ed0abce032
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Jan 18 19:36:27 2010 +0000

    - Add a comment to the callback indicating that it's *extremely* not a good
      idea, but unfortunately necessary.
    - Default to using 4-bytes for the LSDA pointer encoding to agree with the
      encoded value in the CIE.

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

commit 4f7713f9134c3a3834e6498bbf790d5e764a332c
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 18 19:15:57 2010 +0000

    Make printing of metadata more robust when function is not found (which is the normal situation for non function-local metadata)

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

commit 27574da04679e7cb0b4b03a83335da52b4e20a31
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Jan 18 17:52:28 2010 +0000

    Don't try to build compiler-rt if it happens to be checked out into projects/

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

commit 1ab3a8fcae6df8adad5e2682fc270969419a6297
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 18 14:39:20 2010 +0000

    Unnamed symbol index should be >= 1. This was lost during the mangler refactoring.  Fixes PR6067.

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

commit 8f6642009ebcd484a34d92293dbf6db29e679f78
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 18 12:40:05 2010 +0000

    Fix refacto reported by Nicolas Geoffray.

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

commit 87fa2352aeb07f8e0b269871a80d52355fca4307
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Jan 18 01:24:43 2010 +0000

    Emit spaces after commas in Neon register lists.  This is more consistent
    with the rest of the assembly output, is easier to read, and matches the
    expected output for gcc's Neon tests.

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

commit aba316e220817acfe6fa8c8a044eb24eb50c28b1
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 01:21:08 2010 +0000

    switch x86 zerofill emission over to use MCStreamer.

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

commit 202c058004e33a3b67fdb29b5cc9ec943a13e5c0
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 00:59:24 2010 +0000

    Change CurrentFnSym to be a non-const pointer since asmprinter mutates it
    as it emits code.  Switch .globl directives to use OutStreamer instead of
    doing it textually (in x86)

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

commit f875d80e50d72653003c0ddcaeab1d22fb8c3f8e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 00:37:40 2010 +0000

    remove the MAI argument to MCExpr::print and switch overthing to use << when printing them.

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

commit 6fef0d73ffadeadf64f07c1eec37def910672263
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 18 00:21:06 2010 +0000

    unbreak x86 jump tables with my previous patch.

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

commit 9e6929cecb2b335ecfa2a8a03b1999f8b42ba399
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 21:43:43 2010 +0000

    now that MCSymbol::print doesn't use it's MAI argument, we can
    remove it and change all the code that prints MCSymbols to use
    << instead, which is much simpler and cleaner.

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

commit d5b47594306373fc8575f085c249b78ce1612fcc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 20:11:03 2010 +0000

    rename NameNeedsEscaping -> NameNeedsQuoting, eliminate the check
    for first character which is a digit, mangler would have taken care
    of this already.

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

commit 3ef5bbe350ce2d891504f48f890e479b44ef200b
Author: Owen Anderson <resistor@mac.com>
Date:   Sun Jan 17 19:33:27 2010 +0000

    Convert some of the dynamic opcode lookups into static ones.

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

commit 41ecf0789b084646955350b929159850d8c523c0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 19:32:29 2010 +0000

    stop the CBE from using Mangler::appendMangledName, which is a private function, it is mangling types, which don't matter how they are done.

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

commit 6d9f5425542ddc1bff3f938072aee616ad5df600
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 19:24:35 2010 +0000

    fix uninit member, thanks to Benjamin Kramer for identifying the bug.

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

commit e3f46600b6888bbd00b2c8474d3ab655dcd4fa3d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 19:23:46 2010 +0000

    Get MCSymbol out of the mangling business, and move all the logic
    to Mangler.  Now MCSymbol just decides whether to slap quotes around
    a symbol when printing it.

    This also fixes some weirdness where two MCSymbols could be created
    for the same symbol, if one needed to be mangled and got mangled to
    the other one.

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

commit 142aab7ce398a5c22a49b20e98480afb296a0920
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Sun Jan 17 19:20:45 2010 +0000

    Really fix this. I checked that on ARM I get

    PASS: LLVM::FrontendC/pr5406.c (3463 of 5030)

    and on X86 I get

    XFAIL: LLVM::FrontendC/pr5406.c (3465 of 5030

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

commit 12c01c63b773d0c42c9c1c437ff0bc7febe64bc4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 19:09:12 2010 +0000

    reduce this test and convert to filecheck, hopefully the linux buildbot
    will tell me something more useful.

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

commit bf219686faea97a3f9ea0b7dbc7553f510e697cf
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 18:52:16 2010 +0000

    factor this code better how that the string version of getNameWithPrefix
    takes a twine.

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

commit 0bde2eb86ff04d5825d1fa8b09e16f40f34b7af3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 17 18:22:35 2010 +0000

    now that mangler is in libtarget, it can use MCAsmInfo instead of clients
    having to pass various fields from it in.  Simplify.

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

commit a8d62f79e5837e02170076058dcc9e449bf9ecf0
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Jan 17 17:47:24 2010 +0000

    Don't create a (empty) output file, and don't warn about bitcode output
    to a console, when --analyze is used.

    Similarly, avoid creating an empty output file when --disable-output is used.

    Print a warning when the -o option appears with either --analyze or
    --disable-output, to indicate that the option is being ignored.

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

commit ac84db634a2bafc0c428590b48a64d1b0f7dad7e
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Jan 17 07:46:39 2010 +0000

    Switch some functions to take Twines, eliminate uses of StringExtras.h.

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

commit 51f9d45e973650ed6a167b86eda894a38f4d0690
Author: Owen Anderson <resistor@mac.com>
Date:   Sun Jan 17 06:49:03 2010 +0000

    Fix comment.

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

commit 898b3166e1145f6fe74105640198dce98e4e7aa6
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sun Jan 17 06:35:17 2010 +0000

    The Neon "vtst" instruction takes a suffix that is the element size alone --
    adding an "i" to the suffix, indicating that the elements are integers, is
    accepted but not part of the standard syntax.  This helps us pass a few more
    of the Neon tests from gcc.

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

commit 8babff07481f87f567cecd364bc4577de76e4890
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sun Jan 17 05:58:23 2010 +0000

    Fix an off-by-one error that caused the chain operand to be dropped from Neon
    vector load-lane and store-lane instructions.

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

commit 918de29db68a1d8d21ea0a34aa1c93ff83b78a19
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Sun Jan 17 05:40:41 2010 +0000

    Looks like XFAIL has to list every unsupported arch

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

commit 4945cd19c8aabfe0a634f2e78c01144bdcacabe8
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Sun Jan 17 04:44:55 2010 +0000

    Add test for pr5406

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

commit b7956b93ffdb4b8d827ec25ad0b1d9e18a4e8e1d
Author: Nate Begeman <natebegeman@mac.com>
Date:   Sun Jan 17 03:49:01 2010 +0000

    Add a note for the macho streamer and remove a used of the mangler from the soon to be defunct machowriter pass.

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

commit ca4aeb4525609adb322854c713e84848b756d489
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sun Jan 17 00:21:21 2010 +0000

    Reduce fsub-fadd.ll and merge it into fsub-fsub.ll. Rename fsub-fsub.ll to
    fsub.ll and FileCheckify it.

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

commit a59a888da6ed949c0c7a6d871ad1d9cf50ebcc79
Author: Kenneth Uildriks <kennethuil@gmail.com>
Date:   Sat Jan 16 23:37:33 2010 +0000

    When checking for sret-demotion, it needs to use legal types.  When using the return value of an sret-demoted call, it needs to use possibly illegal types that match the declared Type of the callee.

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

commit b003b846f9d4c265f61d046f491e3d16702a9c32
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Jan 16 22:23:09 2010 +0000

    Update CMake files for Mangler move.

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

commit a60a217b035888c38661434340b3f5fd4c66767c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:57:06 2010 +0000

    move the mangler into libtarget from vmcore.

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

commit b8847fb8c52aaa40198c601873266891b0e3f8bb
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:55:24 2010 +0000

    fix a warning.

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

commit 33959a9e7f61d7249be8fb360bdf0da288cf264b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:35:09 2010 +0000

    this doesn't need to suck in Mangler.

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

commit 3a0efac16a896559cb18570b0a7b2eae0b6d907d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:34:51 2010 +0000

    remove obsolete comment.

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

commit f7748a284c5abb09dc68621444926a455eef1a83
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:34:01 2010 +0000

    bugpoint doesn't need the mangler at all.  DisambiguateGlobalSymbols
    dates to a time when two different LLVM values could have the same
    name but different types.  Simplify it to just assign names to unnamed
    things and let the core symtab resolve duplicates.

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

commit 8439bce99a19536d04df9260e331a52f15f32491
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:25:13 2010 +0000

    add a thing to investigate.

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

commit 55e28ccff810d226c0c6091f4ae016f6366c4f8e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:20:34 2010 +0000

    remove calls to dead methods.

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

commit 96a9c1abb4d233ee069596d6760d26b10b6005c9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 21:08:46 2010 +0000

    reapply the mangler gutting patch.

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

commit 5bf5bf2e7d107419a6fad2a12f40e17c1edee0f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 20:56:05 2010 +0000

    remove use of getMangledName.

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

commit c92c100404e8038a18c2c826b218dc429c54da83
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 20:53:11 2010 +0000

    unbreak the build.

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

commit aacc26910ff6cf037d2348cf87e398c74f2c9996
Author: Rafael Espindola <rafael.espindola@gmail.com>
Date:   Sat Jan 16 20:27:59 2010 +0000

    Revert 93648.
    Mangler::getMangledName is used from lto
    Mangler::setUseQuotes is used in the AsmPrinter
    Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter

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

commit 348719fcca5acf13888ff1ebc6f39616d53709d4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 19:08:51 2010 +0000

    Mangler::getMangledName is now dead, remove it and all the other stuff in Mangler that is now transitively dead.  woo.

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

commit b8ae1059885f503e204afa822e572924c5b6ca76
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 18:50:28 2010 +0000

    Change DIEObjectLabel to take an MCSymbol instead of std::string.

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

commit d7fb57b07101bd18ed21e66a697f2318cc9276f4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 18:37:32 2010 +0000

    rename GetPrivateGlobalValueSymbolStub -> GetSymbolWithGlobalValueBase,
    and add an explicit ForcePrivate argument.

    Switch FunctionEHFrameInfo to be MCSymbol based instead of string based.

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

commit 6bf71129a8dcba34ee552a62c32afc60b777cf4c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 18:17:26 2010 +0000

    eliminate uses of getMangledName from AsmPrinter.cpp, last up is
    dwarf emission which is going to be more invasive.

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

commit deb6480e8c0f9957776cd85776697d698b77294b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 18:12:14 2010 +0000

    switch liblto to use the new getNameWithPrefix() method instead of getMangledName.

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

commit da1fd911d9c7f93fafbcdf0aea3a0ca224dc8338
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 18:06:34 2010 +0000

    add an inefficient version of getNameWithPrefix that returns an std::string.

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

commit b1680ba80e18f456f4383480e243be9c711b6eae
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Jan 16 16:14:55 2010 +0000

    Revive dead assert.

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

commit 271432c7b8cbaf1468f5baa4bda5c49efdec58db
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sat Jan 16 14:06:58 2010 +0000

    Provide magic define on mingw to not generate inline variants of ctyper functions.
    Otherwise we'll end with random cyclic deps between libraries due to this.
    Proposed by Gianluigi Tiesi!

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

commit 827d0a70e1e7981294e37e7cf0478c61bd12916c
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Sat Jan 16 13:38:07 2010 +0000

    Fix PR6047

    Nodes that had children outside of the post dominator tree (infinite loops)
    where removed from the post dominator tree. This seems to be wrong. Leave them
    in the tree.

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

commit 7b20c1082305927ea567088e0b401021e0fa4133
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Sat Jan 16 10:56:41 2010 +0000

    Create Generic DOTGraphTraits Printer/Viewer

    Move the DOTGraphTraits dotty printer/viewer templates, that were developed for
    the dominance tree into their own header file. This will allow reuse in future
    passes.

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

commit cdd64b676c2c2344e2af4ce8f98aeff067a64b59
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 16 06:17:40 2010 +0000

    No need to use WeakVH here.

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

commit 3b6871fa24c288179594ea68723a5177d71005ea
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 16 06:09:35 2010 +0000

    Replace DebugLocTuple with DILocation.

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

commit 203807de50ff570e432a3c7ceb7a3927020b6dc3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 03:38:27 2010 +0000

    fix build failure.

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

commit ae29e280b4cd3d6a58753fc1aee48d2050200c31
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 02:16:09 2010 +0000

    remove a couple of actively incorrect uses of getMangledName.

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

commit 2fb92f38e45ee2f3a094bea7fea390c074601113
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 02:15:38 2010 +0000

    this doesn't need the mangler.

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

commit 4e11fda49973e3a35989637c14c541d0bd9ccccf
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 02:09:06 2010 +0000

    more string -> sym, getMangledName is now gone from this file.

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

commit 5e090cd388e0a7bf61d4edd8005a16da7b9968bd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 02:00:23 2010 +0000

    use symbols instead of strings, eliminating a bunch of getMangledName
    calls.  Add FIXMEs about a bunch of nondeterminism in stub output.

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

commit b1f1746269d0dd70323ea937cdb8f4b9ba1d7c73
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:45:47 2010 +0000

    simplify some code.

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

commit c0dfaadaf26e4e12ed13518e00ce5b9cb8833a2e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Jan 16 01:40:55 2010 +0000

    Retrying r91337:

    The CIE says that the LSDA point in the FDE section is an "sdata4". That's fine,
    but we need it to actually be 4-bytes in the FDE for some platforms. Allow
    individual platforms to decide for themselves.

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

commit 7436757d1b33ca7d98cf6033c9a1fe2a69ec9d6a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:40:07 2010 +0000

    eliminate uses of mangler and simplify code.

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

commit 0749eb83aa0bc6dd1dcf8254ec9092ecc1d02a45
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:37:14 2010 +0000

    fix inverted conditional

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

commit 7638c073a6855e6f2dfb741d38400722343a1e0b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:24:10 2010 +0000

    CurrentFnName is now dead, remove it.

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

commit 2522de6c3522d9fcb675a6e475627d77fb571370
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:21:04 2010 +0000

    get pic16 off CurrentFnName

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

commit 446261c29a0546ca6cdc24888c57be4b89dc7dc4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:17:26 2010 +0000

    remove the string form of printVisibility.

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

commit 59f9b8d65347a5879da41ea085ee5e25d0148926
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:12:01 2010 +0000

    switch more stuff onto MCSymbols

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

commit 89ea3fae1f8c21940ddc558ee3ce452bdbc27800
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Jan 16 01:06:58 2010 +0000

    Temporarily revert r93581. It was causing failures in the ExecutionEngine tests
    on the build bots.

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

commit 531f41f143edacea65cb9e180ac4eb7ffd229aaf
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 01:00:27 2010 +0000

    eliminate uses of deprecated mangler apis

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

commit d3ae4b3e28a02444d7427dd9ed48bf5ef1a13ce2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 00:53:22 2010 +0000

    this teestcase takes a long time to crash, remove it.  If someone cares about this, they should file a bug, it's not doing any good as an xfail.

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

commit 953d13e493e91783ddb2a67d612304b5f2913f0e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 00:51:39 2010 +0000

    switch X86 target off CurFunctionName and MCIze more.
    Note that the code wasn't calling DecorateCygMingName
    when emitting the ".ascii -export" stuff at the end of
    file for DLLExported functions.  I don't know if it should
    or not, but I'm preserving behavior.

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

commit 5d1a921e3dce79d2fa285a0e6c47bececcae1047
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sat Jan 16 00:42:25 2010 +0000

    Treat indirect branches specially only during pre-regalloc tail duplication,
    not during the later post-alloc tail duplication.

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

commit 0f12db74fae87be9a712ad05de76f82ea2d227f1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 00:32:38 2010 +0000

    MCize tis, and make it keep CurrentFnSym up to date with CurrentFnName.

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

commit f7ba5f6184e332f0c879b766a13189f65ea6fa95
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sat Jan 16 00:29:50 2010 +0000

    Run the pre-register allocation tail duplication pass by default.  Remove
    the -pre-regalloc-taildup command-line option, and add a new
    -disable-early-taildup option.

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

commit a00eeba57fc2405aebcb5f60edc85d0a9db5078c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 00:24:20 2010 +0000

    revert the x86 part of my last patch, cygwin is mutating CurrentFnName!

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

commit fe6bade0cfbaed4767874df3563cfafa203e24bc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 16 00:21:18 2010 +0000

    MCize a bunch more stuff, eliminating a lot of uses of the mangler
    and CurrentFnName.

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

commit d861a34eda1609250704c75bb0e609eae608d0e0
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Jan 16 00:00:20 2010 +0000

    Fix llvm_supports_binding for lit, problem noticed by Bob!

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

commit 1f6e93c08eb967c4737e83b616a821556396deec
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:56:03 2010 +0000

    remove two write-only sets.

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

commit f6ff5b0eae10c12935517046ac22a19199faf8c1
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:55:16 2010 +0000

    supplement CurrentFnName with CurrentFnSym, which will eventually
    replace it.  Upgrade Alpha, Blackfin, and part of CellSPU to not
    use mangler anymore.  CellSPU needs more invasive surgery.

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

commit ef4314798ee96814fdba9ebd4b21a148926b9738
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Fri Jan 15 23:49:16 2010 +0000

    Fix bug 5992: O'Caml's llvm_create_module was treating the context as a string.

    Thanks Andy Ray for catching this!

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

commit 2a07ff98622eb583b245a917d77210c7f8781619
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:38:51 2010 +0000

    add a version of AsmPrinter::printVisibility that takes an MCSymbol.

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

commit d373d64307ac024599597ef23045df735ae65d59
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:31:55 2010 +0000

    use MCSymbol instead of getMangledName() in all cases except one.

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

commit 9eee1f8280772968a4dc5e8404ef86ffddb15a97
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Jan 15 23:29:34 2010 +0000

    BumpPtrAllocator: Have the DefaultSlabAllocator created at runtime, not initialization time.  This removes one of the 'init_constructors' reported in <rdar://problem/7545356>.

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

commit 8e995e6e8a88e5242a31a8af2438b2a36388ec87
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 23:29:29 2010 +0000

    Adjust some comments per review.

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

commit 1bfba6b89965c5603cc45276f26e58fd1653fd1f
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 23:28:49 2010 +0000

    Remove unneeded argument per review.

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

commit 2f28673e879a011f5215d6a28b40d6367b4ac9e2
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:26:49 2010 +0000

    mc'ize a bunch of symbol stuff, eliminating std::strings.

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

commit 9a14ba5c574a8b04b53c7b1a7986c5d10cbca3a7
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:25:11 2010 +0000

    add another helper

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

commit d16ad064033e18d0d47c241f3f01b3795209016a
Author: David Greene <greened@obbligato.org>
Date:   Fri Jan 15 23:23:41 2010 +0000

    Fix PR6019.  A load has more than one use if it feeds a bitconvert that
    has more than one use.

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

commit c8eb8c2f4e596a1ab722718266a5b6f0717b70c3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 23:18:17 2010 +0000

    add a AsmPrinter::GetGlobalValueSymbol and GetExternalSymbolSymbol
    helper method, use it to simplify some code.

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

commit 4f6532ddb9565c661380bd1527325ad33e6079c7
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Jan 15 22:59:46 2010 +0000

    Update CMake build.

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

commit 8fe97053fc985508b8d629993aa9191807a13841
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Jan 15 22:59:11 2010 +0000

    Update CMake build.

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

commit d90b88b011686d6c1b131d0c0ceef3df4642be04
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 22:27:37 2010 +0000

    add testcase for r93564

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

commit c447e6125b58ac553dd9a2d6f6c598026d2af437
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Jan 15 22:22:58 2010 +0000

    Add comments to the dump() and dumpr() routines.

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

commit bfdeaf45c4d93fc17429c215e5505208473dc8bc
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 22:22:35 2010 +0000

    DEBUG_VALUE is now variable sized, as it has a
    target-dependent memory address representation in it.
    Restore X86 printing of DEBUG_VALUE; lowering is
    done in X86RegisterInfo using the normal algorithm.

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

commit 453ab0706b3198193d3acfef13c34c66ce74d255
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 22:21:03 2010 +0000

    Update Thumb1 storeRegToStackSlot() and loadRegFromStackSlot() to properly
    handle physical registers R0-R7 when described as having a non-tGPR register
    class.

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

commit 4168808fe01dfc527475693ffd0c726e980d0250
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Jan 15 22:18:15 2010 +0000

    Fix a typo that Anton noticed.

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

commit 0ba3d00b5879ceb182da72896f29153a00fbe979
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Jan 15 22:08:16 2010 +0000

    Add FIXME.

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

commit 71beb8feb0b2e3c377c5d3b936069d2b199ac769
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Jan 15 21:55:02 2010 +0000

    Fix a comment typo.

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

commit 73fd9c83e00f7d2bf07e7f75313b681bd3f4d618
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 21:50:19 2010 +0000

    move "Metadata Nodes and Metadata Strings" section to the right place in the
    document and edit it.

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

commit bbc90a5a01951497d5dc2507c1775d9ff7acbca2
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Jan 15 21:36:30 2010 +0000

    Remove the InlineHint attribute. There are no current or planned
    users.

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

commit e15db684275e0506cd64dfc38c985cb6ba8ae9d6
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:19:43 2010 +0000

    zext / truncate is free on msp430. Inform codegen about this.

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

commit 4cc89fdd65c6f81bdfbc6ec96b35c4f6790ccaa8
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:19:26 2010 +0000

    Reenable tests

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

commit ca2c00780023f4cd7b54ab2a07d9fc5002a22c8a
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:19:05 2010 +0000

    Add branch relaxation pass (shamelessly stolen from PPC).

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

commit 30a211f4c265bab1c39b2c1a8a9c270daee3023b
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:18:39 2010 +0000

    Provide instruction sizes & encoding. No opcodes yet (but not needed so far).

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

commit 8b2004f244c39f94b246a79986371dd065b9332a
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:18:18 2010 +0000

    Enable bit tests and setcc stuff.

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

commit 8eb9e38a4cce4233cdffea05aac2d36228fd2190
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:18:02 2010 +0000

    Add micro-optimization which allows us to fold imm into cmp. This allows us to save 1 word (sometimes) and reduce register pressure.

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

commit fd786d76b3d1b57877add6c201a7867509eb6758
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 21:17:13 2010 +0000

    Add instruction formats & support stuff

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

commit a2b456eaa5f994c054d917816b26a28299da091a
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Fri Jan 15 20:00:12 2010 +0000

    Don't make changes to the MBB in MachineBasicBlock::canFallThrough().

    This fixes the regression for -pre-regalloc-taildup in
    MultiSource/Applications/lambda-0.1.3.

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

commit ad56f482f17812b99b2e77f54515f8200352a405
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Fri Jan 15 19:59:57 2010 +0000

    Simplify logic. Any functional change is unintended.

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

commit 693b9b9302abeff91f1aceef1306ae86cbbf0bdf
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 19:51:05 2010 +0000

    unbreak the build, grr symlinks.

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

commit 629df86d513070bd13703907edd1c69b72ae8af4
Author: David Greene <greened@obbligato.org>
Date:   Fri Jan 15 19:43:23 2010 +0000

    Add some debug routines to SelectionDAG to dump full DAGs.
    print/dumpWithDepth allows one to dump a DAG up to N levels deep.
    dump/printWithFullDepth prints the whole DAG, subject to a depth limit
    on 100 in the default case (to prevent infinite recursion).

    Have CannotYetSelect to a dumpWithFullDepth so it is clearer exactly
    what the non-matching DAG looks like.

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

commit ee7d12b25df77d42d1bcffd7046332b5dd97a5b5
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 19:39:23 2010 +0000

    fix a bug in range information for $42, eliminate an
    unneeded argument from ParseExpression.

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

commit 36d2c22a8e1432fd06128d200ba6ccb49e51681b
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 19:33:43 2010 +0000

    add range information for mem X86Operand's, now all
    X86Operand's have range info.

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

commit 717b29aac15677bb6a4c036d2f9a9bf5940f75b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 19:28:38 2010 +0000

    extend MCAsmParser::ParseExpression and ParseParenExpression
    to return range information for subexpressions.  Use this to
    provide range info for several new X86Operands.

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

commit 6294228b30eb581423436a809c82918b969294bf
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 19:06:59 2010 +0000

    give X86Operand a ctor and start passing SMLoc's into it.

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

commit 7707ba938b7fd1fe21dcf1d3b0ac3037f4705c25
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Jan 15 19:04:09 2010 +0000

    Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast).
    This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.
    It also strips old llvm.dbg.declare intrinsics that did not pass metadata as the first argument.

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

commit 8f898ca2753736c7e11c484e42d88d7961419137
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 18:58:14 2010 +0000

    Revert 93499.  After discussion with Chris we agreed
    FrameIndexes should be lowered, but the same way as
    everything else (target dependent) rather than in a
    special hacked way.  The lowering needs to be done
    for eventual purposes of Dwarf generation.

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

commit 27bb05ccb043c00e540ea029c489c1ce9f904100
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 18:51:29 2010 +0000

    add range location info for registers, change
    X86Operand::Create* implementations to avoid
    copy ctor use.

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

commit 9b46007e33ac6a48c13d3fe68f248aec89f821ee
Author: Nate Begeman <natebegeman@mac.com>
Date:   Fri Jan 15 18:51:18 2010 +0000

    Hook up llc's -filetype=obj to use MCStreamer if an MCCodeEmitter is available.
    Remove most of old Mach-O Writer support, it has been replaced by MCMachOStreamer

    Further refactoring to completely remove MachOWriter and drive the object file
    writer with the AsmPrinter MCInst/MCSection logic is forthcoming.

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

commit f5e9cd74949a5925c5add6c321e92bc7f22adb29
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 18:44:13 2010 +0000

    clean up the memory management of the operands.

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

commit d5983540ba915aece4a3ff729a1c732f3e331e04
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 18:27:19 2010 +0000

    refactor ParseRegister to avoid using X86Operand as a temporary
    datastructure when parsing a mem operand.

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

commit e89193d2cb6afa5faa0e765e9921f2e5f58cce23
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 15 18:08:37 2010 +0000

    mention that unwind isn't to be trusted, patch by Dustin Laurence

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

commit ec9c454e07862c7e231a64160742d0d3b920f35d
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Jan 15 17:36:47 2010 +0000

    Revert r93504 because older uses of llvm.dbg.declare intrinsics need to be auto-upgraded

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

commit 1485c4468ade4217247b73687cc0ff87571a6301
Author: Jay Foad <jay.foad@gmail.com>
Date:   Fri Jan 15 11:29:26 2010 +0000

    Test case for http://llvm.org/PR6028.

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

commit b88a798d8d5c36a2f5fac2bccb1fef2a748d43be
Author: Jay Foad <jay.foad@gmail.com>
Date:   Fri Jan 15 08:32:58 2010 +0000

    Fix http://llvm.org/PR6028, an assertion failure when an UndefValue of
    integer type is used.

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

commit 46373fd75a2f39a1cb4541496be4606bb7bc8ac1
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Jan 15 06:29:17 2010 +0000

    Change pre-regalloc tail duplication to only duplicate indirect branch blocks.
    The pre-regalloc pass caused some regressions in both compile time and
    performance of the generated code, and it did not improve performance, except
    for indirect branches.  I also moved the check for single-block loops to speed
    up the common case when running the taildup pass before reg allocation.

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

commit cf85d133908c0e8f5e792bbf09092055f71eed8b
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Jan 15 03:37:48 2010 +0000

    Improve llvm.dbg.declare intrinsic by referring directly to the storage in its first argument, via function-local metadata (instead of via a bitcast).
    This patch also cleans up code that expects there to be a bitcast in the first argument and testcases that call llvm.dbg.declare.

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

commit 3c33762fcb92d4a2c4c87a7f166505dfda5cbbeb
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 02:09:27 2010 +0000

    Temporary disable tests

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

commit 5be890ef254c10c5871deb84651e5b2f90e1dc00
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 01:54:55 2010 +0000

    Lower FrameIndex operand of DEBUG_VALUE (specially) and
    print it as a comment on X86.

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

commit 425b0c803d727037201f52e9d7fdf223736bd5a6
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 15 01:50:44 2010 +0000

    Remove DEBUG_DECLARE, looks like we don't need it.
    Also, DEBUG_VALUE has side effects.

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

commit d00ca94481e1c38a2a5884c87a8da208912c873f
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Jan 15 01:29:49 2010 +0000

    Fix cmp emission on msp430: we definitely should turn stuff like
    "icmp lhs, rhs" into "cmp rhs, lhs". This should fix PR5979.

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

commit 91d4f32da253072020f37da01eb947fb8bd4321e
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Jan 15 01:12:22 2010 +0000

    Do not use AT_specification die for static variables. It confuses gdb.

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

commit 0825dec9f18e44ff96408276170622a0e6b242f4
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Fri Jan 15 00:41:53 2010 +0000

    Make sure include/llvm/MC/MCParsedAsmOperand.h can be compiled alone.

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

commit 03d20786894c4ab368f97af77e4828dc564fd99b
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 00:36:15 2010 +0000

    fix 80-column violations

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

commit 6372016c7b349b213b895d740e5b7bc0b40fa617
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Jan 15 00:34:26 2010 +0000

    new test case for r93485.

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

commit c8ac0913ba36a147c8acb2c1aed76950c3b8d4e7
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 00:32:47 2010 +0000

    Fix 80 column violations and clean up whitespace

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

commit acec84b4922b79d3acf92d223df92ed503dca857
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Jan 15 00:26:31 2010 +0000

    Do not emit multiple AT_container_type attributes.
    We need to find a better way to emit this info.

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

commit 1989192870be588160bb734d82925a9179ed097f
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 00:22:18 2010 +0000

    Name change for consistency. No functional change.

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

commit 10ba8daf837c1f7fb7cafb4afed4ad114d37936c
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Jan 15 00:18:34 2010 +0000

    EmitAtomicCmpSwap() custome inserter needs to delete the MI passed in. EmitAtomicBinary() already does this.

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

commit 58ccfc49fcce74bc3f2cd74fdc84094e74c119d7
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Jan 14 23:15:26 2010 +0000

    Teach PPC how to replaceMachineCodeForFunction correctly.  (Fixes
    JITTest.FunctionIsRecompiledAndRelinked.)

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

commit a95384dff87b4fe65ae259a9a53910241ef69c67
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 14 23:00:10 2010 +0000

    Pad my commit stats by reducing indentation in this now separate
    commit.

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

commit f408b41c261983d08bf9141af11291fd915ee0a4
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Thu Jan 14 22:42:17 2010 +0000

    Added 16-bit Thumb Load/Store immediate instructions with encoding bits so that
    the disassembler can properly decode Load/Store register/immediate instructions.

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

commit fc694ce682d80a8149e088e6b8ee0a7ba0587e70
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 14 22:29:57 2010 +0000

    add virtual methods to get the start/end of a MCParsedAsmOperand,
    the default implementation returns "unknown".

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

commit e7a3316c3b862ad5cbd09dec363be38823e831fd
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 14 22:21:20 2010 +0000

    Split the TargetAsmParser "ParseInstruction" interface in half:
    the new ParseInstruction method just parses and returns a list of
    target operands.  A new MatchInstruction interface is used to
    turn the operand list into an MCInst.

    This requires new/deleting all the operands, but it also gives
    targets the ability to use polymorphic operands if they want to.

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

commit c999433f9c9e584dfbc2df0e7dc5272b43748fdf
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Thu Jan 14 22:09:38 2010 +0000

    Add variable-width shifts for MSP430

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

commit 3efae6ff7ba5a267b0b36edd33b95628da762665
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Thu Jan 14 22:09:11 2010 +0000

    Remove pseudo-MI in custom inserter.

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

commit 6a459b4479c77af81ba823280341fe062c88d60f
Author: Dale Johannesen <dalej@apple.com>
Date:   Thu Jan 14 21:50:17 2010 +0000

    Fix a comment.

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

commit cd9185b6346e881c9d2635d5249c4a597433831a
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 14 21:48:00 2010 +0000

    Few minor changes that were requested. No functional change.

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

commit 1421e8d59a8d0728fe2fee64c4af58d0010c4d76
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Jan 14 21:38:31 2010 +0000

    Add comment explaining the necessity of r93456

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

commit 76eeaa86c9e230c1b703a40e56d6befdb7d3fd06
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 14 21:32:45 2010 +0000

    prune #includes in TargetAsmParser.h
    Pass in SMLoc of instr opcode into ParseInstruction.
    Make AsmToken be a class, not a struct.

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

commit e6bb82e68dccb6fac93d38b546780c139ee42fa4
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Jan 14 21:22:16 2010 +0000

    Dwarf EH prepare needs to be run after SjLj prepare. Otherwise,
    catch info can get misplaced when a selector ends up more than one block
    removed from the parent invoke(s). This could happen when a landing pad is
    shared by multiple invokes and is also a target of a normal edge from
    elsewhere.

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

commit d4fb247eac24e7a5171d800a978be992a65b7a32
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 14 21:21:40 2010 +0000

    introduce MCParsedAsmOperand

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

commit 9ca6088b0692b85eea2b216ccdf121d805fe8e55
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 14 21:20:55 2010 +0000

    introduce the MCParsedAsmOperand class.

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

commit 10b2777d3dce6d1a4fa87bf43a920495f3a06836
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 14 21:04:31 2010 +0000

    Small tweak to inline cost computation. Ext of i/fcmp results are mostly optimized away in codegen.

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

commit 10e7e9adfddaa1acbcbf173570e5eb40005143eb
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Thu Jan 14 20:19:51 2010 +0000

    Remove spurious semicolon.
    Patch by Diego Iastrubni!

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

commit f9b54563dd72aa7b5a2050f1a70806397f0b1005
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 20:12:34 2010 +0000

    In debug builds, assert that function-local metadata has only 1 parent function

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

commit 73e6912a5aba875961ab45d88cbefd4d46543104
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 14 20:12:34 2010 +0000

    Reduce the inlining cost of functions that contain calls to easily,
    and frequently optimized functions.

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

commit 48d78e65301407f8d89fafb3b5a10c1ddeb735ca
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 19:54:11 2010 +0000

    Simplify code that chooses when to enumerate function-local metadata operands

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

commit b16eb0065a1e5617bc5a107a6bccb4b09b3be232
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 19:38:44 2010 +0000

    Avoid modifying ValueEnumerator's MD ValueList by choosing which function-local MD to write based on the function currently being written

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

commit 1dbcea51a7abb6d7a55fda3d0ba5c63b54e97b4a
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Jan 14 18:19:56 2010 +0000

    ARM "l" constraint for inline asm means R0-R7, also for Thumb2.

    This is consistent with llvm-gcc's arm/constraints.md.

    Certain instructions (e.g. CBZ, CBNZ) require a low register, even in Thumb2
    mode.

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

commit dee49e3d45b73fc22613f633c38440b3767202d6
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Jan 14 10:19:55 2010 +0000

    Use ENABLE_ASSERTIONS throughout.

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

commit 8da116c6cd70b3661dac3c6d885cb1f657600eef
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Jan 14 03:08:49 2010 +0000

    Fix a codegen abort seen in 483.xalancbmk.

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

commit 7f496b825a85d619a45776c8c46cbb6886a6b5c1
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 14 02:24:50 2010 +0000

    Test for r93409.

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

commit c6e1d7a4611e9fe3d69cda8a738f890c40538ca9
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 02:12:41 2010 +0000

    Extend testcase to also test llvm.dbg.value intrinsic

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

commit 95592437ed8b3c8d1a14f3490073cebb3f344f3f
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 01:51:28 2010 +0000

    Now that LLParser, AsmWriter, BitcodeReader, and BitcodeWriter all correctly support function-local metadata, test it.

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

commit aa582d67a059ab1999517d1f14474ff25c5bd211
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 01:50:08 2010 +0000

    In WriteFunction(), write function-local metadata before we write the instructions, so instruction's references to metadata are fully resolved by the time they get written.

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

commit 5412ca3a3a686cb06c984865e3118b941db04079
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 01:47:37 2010 +0000

    Fix printing of function-local metadata in AsmWriter

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

commit a330aab51d6044064e5201c3c1ab16d4be658833
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 01:46:02 2010 +0000

    Clean up unnecessary return and brackets

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

commit 87d3a90383b71868031d97fe264fddd1e2ed9c47
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Jan 14 01:45:14 2010 +0000

    Add MDNode::getFunction(), which figures out the metadata's function, if it has function that it is local to.

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

commit 2879e52c70ed1285c567a64cf38bd8f477b2ebad
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Jan 14 00:54:10 2010 +0000

    Don't fold insufficiently aligned ldr/str into ldm/stm instructions.

    An unaligned ldr causes a trap, and is then emulated by the kernel with
    awesome performance. The darwin kernel does not emulate unaligned ldm/stm
    Thumb2 instructions, so don't generate them.

    This fixes the miscompilation of Multisource/Applications/JM/lencod for Thumb2.

    Generating unaligned ldr/str pairs from a 16-bit aligned memcpy is probably
    also a bad idea, but that is beyond the scope of this patch.

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

commit bb8f25926bb5b8b7f2379aef21146bac3be71867
Author: Stuart Hastings <stuart@apple.com>
Date:   Thu Jan 14 00:34:53 2010 +0000

    Erm, previous patch was wrong; Thanks Bill\!

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

commit ea40d109ac1753ddea6cf3b082e9ab6e1a1d4965
Author: Stuart Hastings <stuart@apple.com>
Date:   Thu Jan 14 00:22:05 2010 +0000

    Enable assertions by default for Apple-style builds.

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

commit 2a07383e0c6355c9edb54978310024b33fe25fa7
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 23:29:11 2010 +0000

    this is an SSE-specific issue.

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

commit 0479e24dab45053317f2586ce4cb8c213e3416dd
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 23:28:40 2010 +0000

    X86 if conversion + tail merging issues from PR6032.

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

commit dee74d4ab14c941d0003b8d95fa5e60b582e4ba9
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Jan 13 23:23:17 2010 +0000

    When the visitSub method was split into visitSub and visitFSub, this xform was
    added to the FSub version. However, the original version of this xform guarded
    against doing this for floating point (!Op0->getType()->isFPOrFPVector()).

    This is causing LLVM to perform incorrect xforms for code like:

    void func(double *rhi, double *rlo, double xh, double xl, double yh, double yl){
      double mh, ml;
      double c = 134217729.0;
      double up, u1, u2, vp, v1, v2;

      up = xh*c;
      u1 = (xh - up) + up;
      u2 = xh - u1;

      vp = yh*c;
      v1 = (yh - vp) + vp;
      v2 = yh - v1;

      mh = xh*yh;
      ml = (((u1*v1 - mh) + (u1*v2)) + (u2*v1)) + (u2*v2);
      ml += xh*yl + xl*yh;

      *rhi = mh + ml;
      *rlo = (mh - (*rhi)) + ml;
    }

    The last line was optimized away, but rl is intended to be the difference
    between the infinitely precise result of mh + ml and after it has been rounded
    to double precision.

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

commit 960771588082bb9fe697624096580e165f9276de
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Wed Jan 13 22:21:43 2010 +0000

    Add getSource() to SuccIterator

    Get the source BB of an iterator.

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

commit 616dea8327f0370ea69a54cc79e2803e417c4a2b
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Wed Jan 13 22:21:28 2010 +0000

    Extend SuccIterator

    Implement most of the missing methods to make SuccIterator random access.
    operator[] is still missing.

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

commit 965db796f1201b52df303ff41221a659d39cdb0d
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:51:41 2010 +0000

    this test requires SSE, thanks to jyasskin for pointing this out.

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

commit 09d94b4acb609bce0d15b8beafe23f52a0b858d6
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:31:39 2010 +0000

    makeNameProper is now private!

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

commit 7900c7f84b4e297c330ed9a26e2d473fcc7b3d56
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:29:21 2010 +0000

    fix ELF section mangling stuff for weak symbols to not use
    obsolete Mangler interfaces.

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

commit c8793d14fbb27b193921c73ffe63dde055fa16e1
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 13 21:25:04 2010 +0000

    Fix comment typo

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

commit d6f55a432675b2f52facfd8939c1d26f88e78670
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:21:29 2010 +0000

    tidy

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

commit df0b6d7e5ed6cb65554035f8fbea434cff3b575f
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:12:34 2010 +0000

    reduce duplicate mangling logic by using MCSymbol::printMangledName.

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

commit 3c94fcbaaa65cf3d1087415c3d60a46aa0da6e4b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 21:09:59 2010 +0000

    expose a static function as a static method on the MCSymbol class.

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

commit 9c1d0b9323b2bff46ddc11699f57baec614551f2
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Wed Jan 13 21:00:26 2010 +0000

    Fixed a couple of places for Thumb MOV where encoding bits are underspecified.

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

commit 19fe4af382d6bb8a31838e342784cd0cc44a4d34
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 13 19:54:39 2010 +0000

    Fix pasto

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

commit 54758997a3ac305e2c51585da42f863e53a2393d
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 19:54:07 2010 +0000

    stop the CBE from using deprecated Mangler stuff.

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

commit 2ed7889c515877e2f8cb8e9f596d7d4d6fc2ba28
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 13 19:37:33 2010 +0000

    Write function-local metadata as a metadata subblock of a funciton block

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

commit 0340dc0ec231c7535d724c6c01e3f44f73c1e7b3
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 13 19:36:16 2010 +0000

    Enumerate function-local metadata (and its types and operands) only during function-incorporation, global metadata continues to be enumerated during creation of ValueEnumerator

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

commit f59e8a1ea5029df0c2d4eea293eaa577431e841e
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 13 19:34:08 2010 +0000

    Parse function-local metadata inside function blocks

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

commit fb7b3cd5adabbf4c902197b01f72ccc82d98ae79
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 19:19:17 2010 +0000

    Use the GV version of getNameWithPrefix in TargetLoweringObjectFileCOFF::
    SelectSectionForGlobal, unbreaking weak globals with no-name.

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

commit 90a30f6b36e071aa921d37a1a4149f6b1ae5a01f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 19:16:39 2010 +0000

    Commit some changes I had managed to lose last night while refactoring the code. Avoid change use of PHI instructions because it's not legal to insert any instructions before them.
    This fixes PR6027.

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

commit d419147ec0d4c5d2a3d96eba1c78311f8aec5870
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 19:13:16 2010 +0000

    just finish MCizing FnStubInfo which cleans it up and simplifies it.

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

commit bde11f050c25642786a63d3d3f05e6692424a9f2
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 19:05:36 2010 +0000

    don't call getNameWithPrefix repeatedly and unnecesarily.

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

commit a3ec2e4720c7de4b562c0d519f1c33c2119b9d89
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 19:00:57 2010 +0000

    properly use MCSymbol to print the strings aquired from getNameWithPrefix.

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

commit ddae339112715bdd2ab047c1e2538148de0ba811
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Jan 13 12:45:23 2010 +0000

    Introduce Twine::toStringRef, a variant of toVector which avoids the copy if the
    twine can be represented as a single StringRef. Use the new methode to simplify
    some twine users.

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

commit 304c727f425ee8a09635749ec34b35e02bef7e10
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 08:45:40 2010 +0000

    Re-enable extension optimization pass.

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

commit 2c897bdd8b75aec10543f120426ffea9c1b7572d
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 08:08:33 2010 +0000

    upgrade and MC'ize a few uses of makeNameProper.

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

commit 966e4ef2a684bb3ee93a487cc0e6cc2e9eb386e3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 08:04:24 2010 +0000

    MC'ize this a bit and upgrade APIs

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

commit 74183db4e9e8a85836d586ccf72019195b612fea
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 08:02:14 2010 +0000

    add a fixme, ELF MCSection isn't quite right and weak unnamed globals are broken
    on linux (even though they are pointless, they shouldn't ICE).

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

commit 05cda846ddf16a2dbcac2f09327db9e106fae9ec
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 08:01:32 2010 +0000

    For now, avoid issuing extract_subreg to reuse lower 8-bit, it's not safe in 32-bit.

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

commit c5f8fa4ca174f7fa976d59e20f24bf9f193495e0
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 07:59:13 2010 +0000

    Add comment; refactor; avoid pulling in DT if it's not used.

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

commit ccf845edcf88afbb660deaf9c20e00b3ee4ad0a1
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:56:59 2010 +0000

    eliminate some uses of Mangler::makeNameProper.

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

commit c8fb18e8cc79cb0355b8fee837b6f51d96231bf7
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:50:21 2010 +0000

    don't add the \1 to the name.

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

commit 5fd08dfd9703ea1fc0c9bc2782cd98e85cdee1cc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:30:49 2010 +0000

    remove uses of deprecated functions, this generates slightly
    different BlockAddress labels, but nothing semantically important.

    Add a FIXME that BlockAddress codegen is broken if the LLVM BB has
    an empty name (e.g. strip was run).

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

commit 1aeb82bda71e77b46708f462b14d6648e4004ab8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:16:53 2010 +0000

    use the new form of getNameWithPrefix, not makeNameProper.
    Among other things, this would do very weird things if the
    basic block name had (e.g.) a space in it on darwin:
    makeNameProper would add quotes, then the mcsymbol would
    escape the quotes.

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

commit 8554c4b4eb14c6f8839e1e9da505ede3ceaa3094
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:12:06 2010 +0000

    add new isSingleStringRef()/getSingleStringRef() methods to twine,
    and use them to avoid a copy of a string in getNameWithPrefix in
    the common case.  It seems like Value::setName and other places
    should use this as well?

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

commit 6ef48d37c161d181c193cd3dc86fab223b8be87b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 07:01:09 2010 +0000

    ugh, my last patch just sped up a method and changed all the clients
    that I want to completely eliminate.  Add fixme's so I remember this
    in the future, and add the missing helper that they should be upgraded
    to use instead.

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

commit 8555d56b331b441c9cfb278e652d40c0102c94c3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 06:38:18 2010 +0000

    change Mangler::makeNameProper to return its result in a SmallVector
    instead of returning it in an std::string.  Based on this change:

    1. Change TargetLoweringObjectFileCOFF::getCOFFSection to take a StringRef
    2. Change a bunch of targets to call makeNameProper with a smallstring,
       making several of them *much* more efficient.
    3. Rewrite Mangler::makeNameProper to not build names and then prepend
       prefixes, not use temporary std::strings, and to avoid other crimes.

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

commit 49467cf4256adab9782dd05759777ca75148a200
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 05:02:57 2010 +0000

    my mistake, Mangler::makeNameProper wants to take a twine, not a stringref!

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

commit 16d05834c00d11735341953f6accdd32d3eac548
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:55:33 2010 +0000

    change makeNameProper to take a stringref instead of std::string.

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

commit bf7a9fffad13ee0fb75cebb98d2d8312ff5383fa
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:50:20 2010 +0000

    give StringRef a const_iterator member.

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

commit 4d62af3950127427e5f904b8004919ef381072ce
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:39:46 2010 +0000

    fix assert in AsmPrinter::EmitGlobalConstantLargeInt to match reality.

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

commit b3765504574b67a8c3e89e0c056423fb8334222e
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:38:16 2010 +0000

    reduce nesting and code duplication in AsmPrinter::EmitGlobalConstantLargeInt.

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

commit 2c570dbcdbe8bfe5ff078ef06d0ee7c12fa32bb8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:34:19 2010 +0000

    reduce indentation and add a fast-path to EmitGlobalConstant for 8-byte
    integers on 64-bit systems.

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

commit cd5ef537f3658f4734185c70b9435acdae531cb0
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 13 04:29:19 2010 +0000

    reduce indentation and use early exits in AsmPrinter::EmitConstantValueOnly

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

commit 95282170f6843740044a41dcc30d042cc7e47e40
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 13 03:18:30 2010 +0000

    Revert 93270 pending investigation of how stray non-constant values end up in ValueEnumerator's ValueList during WriteConstants()

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

commit aa2c7c9f33ed984d5af005078e1c30678db84faf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 01:51:43 2010 +0000

    Disable opt-ext pass to unbreak the build for now.

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

commit 25940625d845c474210d9940397b146f683f4f0f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 01:43:20 2010 +0000

    Remove debug option I accidentally left in.

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

commit 1e91681a48a184f596f8c643818256e91ebd34fb
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 13 01:39:38 2010 +0000

    Fix a comment.

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

commit a4db937f5a15424e4dc9911c07c58fa966da6269
Author: Ted Kremenek <kremenek@apple.com>
Date:   Wed Jan 13 01:02:47 2010 +0000

    Update CMake file.

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

commit 046133233074e04a758692bfd1e875798ac01a95
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 13 00:43:06 2010 +0000

    Remove the JustSP single-register regclass.

    It was only being used by instructions with the t_addrmode_sp addressing mode,
    and that is pattern matched in a way that guarantees SP is used. There is
    never any register allocation done from this class.

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

commit 778dd2177f8b89fd437800f07c6145872d692227
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Wed Jan 13 00:31:43 2010 +0000

    Try to fix the ARM and PPC buildbots. The -mattr=vector-unaligned-mem
    flag doesn't exist there, and this is an x86 test.

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

commit e08fff54a2915f5331f7e75b5f4804dd3f2eb368
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 13 00:30:23 2010 +0000

    Add a quick pass to optimize sign / zero extension instructions. For targets where the pre-extension values are available in the subreg of the result of the extension, replace the uses of the pre-extension value with the result + extract_subreg.

    For now, this pass is fairly conservative. It only perform the replacement when both the pre- and post- extension values are used in the block. It will miss cases where the post-extension values are live, but not used.

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

commit 1241c35b04181da7531854b368c578376a742ddb
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 13 00:00:24 2010 +0000

    Further progration of metadata operands.  The
    dumper doesn't really do what I want yet, but
    at least it doesn't crash now.

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

commit 1495b487162ff38614701d9bee37ce73bee627fd
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 12 23:37:59 2010 +0000

    Make WriteConstants() more robust against stray values in ValueEnumerator's ValueList

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

commit 38e538d376a4e74d2ada0a9903e6af61dca22fd0
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Jan 12 22:18:56 2010 +0000

    Fix a comment typo.

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

commit d0d8d00330d45e9557c704f7fe4a936d3609e0f9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 12 22:00:04 2010 +0000

    use consistent tag kinds for ilist_traits

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

commit 49767c9b7438184bd5f7493c7df8e75b5e144068
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 12 20:41:47 2010 +0000

    1) Use the new SimplifyInstructionsInBlock routine instead of the copy
    in JT.

    2) When cloning blocks for PHI or xor conditions, use
    instsimplify to simplify the code as we go.  This allows us to
    squish common cases early in JT which opens up opportunities for
    subsequent iterations, and allows it to completely simplify the
    testcase.

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

commit f6b96ec9866167982b456a7db765d527f1e0a873
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 12 19:40:54 2010 +0000

    add a helper function.

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

commit d6c1d2cb7af59f5c697b1b91910950ec29f78373
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 12 18:57:56 2010 +0000

    Use Twine, instead of StringRef, for consistency.

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

commit 21870c5a2e9c2e2eaeca86d12e4c275149756b13
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 12 18:34:06 2010 +0000

    Use ilist_tratis to autoinsert and remove NamedMDNode from MDSymbolTable.

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

commit 5e224cf3893ddc20b5e7019f5047f83eebdf7c4b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 12 18:31:19 2010 +0000

    Eliminate or_not_add and just use AddedComplexity so isel tries or_is_add patterns first.

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

commit 3bec0cfa089896fc7e07ab5abb845ee532cea393
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 12 18:29:23 2010 +0000

    Add nounwind.

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

commit be355f34e0729dc040a599a40f008359749ef014
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Jan 12 17:46:16 2010 +0000

    Revert commit 93204, since it causes the assembler to barf
    on x86-64 linux with messages like this:
    Error: Incorrect register `%r14' used with `l' suffix

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

commit 6cd9f36b7f3d97c1193d072def590065923cd469
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Jan 12 08:30:46 2010 +0000

    Fix typo.

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

commit 4f4f4fffdf4e5f4ad319059e9357fe7ad84d17ca
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Jan 12 08:21:07 2010 +0000

    Tweak commit 91745, which changed target data for both Mingw and Cygwin,
    to not touch Cygwin: the change caused llvm-gcc build failures due to
    long double getting the wrong size.  Patch by Aaron Gray.

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

commit 997d1728fd33bca27402a6e5cf0cd0534797b172
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 12 04:52:47 2010 +0000

    Make several tests less fragile.

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

commit 1a59eb84ed47f553845393e105eb0196d2d6253e
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 12 04:42:54 2010 +0000

    Reapply the MOV64r0 patch, with a fix: MOV64r0 clobbers EFLAGS.

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

commit 9712cf3a0da6e93f9db5a918b921ddbabbb86753
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 12 04:32:35 2010 +0000

    Update a partially obsolete comment.

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

commit 07e7dea947431ede055a7748fe215f8d7e988653
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 12 04:30:26 2010 +0000

    Fix a typo in a comment.

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

commit 2a62df736986d233c475d9c2c7ea0a8fb84e5d6d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 12 02:07:50 2010 +0000

    tidy up

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

commit b015ab7e76239fd9b863085d68efa91aca28619c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 12 02:07:17 2010 +0000

    Teach jump threading to duplicate small blocks when the branch
    condition is a xor with a phi node.  This eliminates nonsense
    like this from 176.gcc in several places:

     LBB166_84:
            testl   %eax, %eax
    -       setne   %al
    -       xorb    %cl, %al
    -       notb    %al
    -       testb   $1, %al
    -       je      LBB166_85
    +       je      LBB166_69
    +       jmp     LBB166_85

    This is rdar://7391699

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

commit dac07fb1458578df9b6c67b46c47d84c71f899b3
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Jan 12 02:01:53 2010 +0000

    Add MO_Metadata as an operand kind.  Not used yet.

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

commit 31b41036ecde0388929108c70d9b7eb6e4083065
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 12 00:09:37 2010 +0000

    Add TargetInstrInfo::isCoalescableInstr. It returns true if the specified
    instruction is copy like where the source and destination registers can
    overlap. This is to be used by the coalescable to coalesce the source and
    destination registers of instructions like X86::MOVSX64rr32. Apparently
    some crazy people believe the coalescer is too simple.

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

commit c69888cabe7acaa6519450d14d298dec25183978
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 23:41:09 2010 +0000

    some cleanup, and make it obvious that ProcessJumpOnPHI only works
    on branches by renaming it and checking for a branch at the call site.

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

commit 1adfa777684a24ff3df8e6696a817bef91b448ef
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 23:18:33 2010 +0000

    disable this testcase, PR5997

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

commit 05622b857d032f6f89ad793571f63d342c7d5eae
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 11 22:59:27 2010 +0000

    Add manual ISD::OR fastisel selection routines. TableGen is no longer autogen them after 93152 and 93191.

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

commit 3881d24e33e918b8e1d54f218eae0ca91027055e
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 11 22:53:48 2010 +0000

    Add documentation for llvm.dbg.value intrinsic

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

commit 3f974093444a869ceef2dd3b387c79865509991d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 22:49:40 2010 +0000

    reenable the piece that turns trunc(zext(x)) -> x even if zext has multiple uses,
    codegen has no apparent problem with the trunc version of this, because it turns
    into a simple subreg idiom

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

commit 6250d378fe142679dfa3e5a4a7b1b323105cef17
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 22:45:25 2010 +0000

    Disable folding sext(trunc(x)) -> x (and other similar cast/cast cases) when the
    trunc has multiple uses.  Codegen is not able to coalesce the subreg case
    correctly and so this leads to higher register pressure and spilling (see PR5997).

    This speeds up 256.bzip2 from 8.60 -> 8.04s on my machine, ~7%.

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

commit 20c0ca95d363b027d9bedc913ec7d81ff5fa5c6f
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 11 22:31:58 2010 +0000

    Consolidate ConvertGlobalValIDToValue, ConvertGlobalOrMetadataValIDToValue, and ConvertValIDToValue into a more powerful ConvertValIDToValue() that does all three's work

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

commit c8941ccfa492c94bf8062817a47a415619b8a497
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Jan 11 22:22:46 2010 +0000

    Remove trailing white spaces in post dominators header file

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

commit e9098bd84df3595bfd9632d9c9e55949e9de34b5
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Mon Jan 11 22:22:32 2010 +0000

    Add getNode() to post dominators.

    Implement the same interface as already available for dominators.

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

commit 49e359621c5491296d272ec35279fa7ef4e5a20a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 11 22:03:29 2010 +0000

    Extend r93152 to work on OR r, r. If the source set bits are known not to overlap, then select as an ADD instead.

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

commit 068a9320de8dd78f523946fa8d4119942e224ef5
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 21:58:19 2010 +0000

    reduce this to a sensible testcase.

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

commit f0c408a4063856e29326c2c6bc099ff439b560e4
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 11 21:50:35 2010 +0000

    Shorten up this testcase.

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

commit aa59ffe04ff0e87196a592b9b241b994e5460de7
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 11 21:13:41 2010 +0000

    Revert 93158. It's breaking quite a few x86_64 tests.

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

commit 4a7e7902eae583ed525562bc68dd6ae0fde4d3ac
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Mon Jan 11 21:02:33 2010 +0000

    Avoid adding PHI arguments for a predecessor that has gone away when a BRCOND was constant folded.

    This fixes PR5980.

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

commit 1d6e1b5be983dd6f7fc72e2556189cabb0a6de67
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 11 20:33:12 2010 +0000

    Remove unused string functions.

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

commit e7aaefe2f92f0cec4ea74fd407e0a43428d2abc2
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 11 20:18:04 2010 +0000

    Do not turn 8-bit OR to ADD since ADD8ri is not 3-addressfiable.

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

commit 351d0bd7097d298a5fb32601cb4fd7e6dd57f7f5
Author: Mon P Wang <wangmp@apple.com>
Date:   Mon Jan 11 20:12:49 2010 +0000

    Disable transformation of select of two loads to a select of address and then a load if the
    loads are not in the default address space because the transformation discards src value info.

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

commit 0f786eaf08109f7350f52d027c60572ffa5308e9
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 11 19:45:18 2010 +0000

    Add StrInStrNoCase, a StringRef version of CStrInCStrNoCase.

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

commit 9a1969a435ea1079bb763f40c2f7e7eba343774c
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 11 19:35:55 2010 +0000

    Add top level section for named metadata.

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

commit 6ce22094023895d13ca93858e56e45011876ab99
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Mon Jan 11 19:19:26 2010 +0000

    Improve unclear bits and inaccuracies in structure and insertvalue
    documentation.

    Patch by Dustin Laurence!

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

commit 5f02c5eaf2e18b7ac09cd8b27c0b0e3b7083612f
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Mon Jan 11 18:53:47 2010 +0000

    Update the -tailcallopt description to match djg's improvements to the calling
    convention.

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

commit 78104868cacedaabbdd6fd942414bf7b77a6011e
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 11 18:52:33 2010 +0000

    s/NextValueNo/NextMDValueNo while processing metadata.

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

commit ca226531ab9fc85000221a7b160b55b10dcdce1b
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 11 18:44:35 2010 +0000

    Turns out llvm-gcc still uses SplitString with a vector. Add it back until I
    have a fix.

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

commit 086ac78ea4d4ea944a75869c5fd357edba4eaedb
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Mon Jan 11 18:03:24 2010 +0000

    Reimplement getToken and SplitString as "StringRef helper functions"

    - getToken is modeled after StringRef::split but it can split on multiple
      separator chars and skips leading seperators.
    - SplitString is a StringRef::split variant for more than 2 elements with the
      same behaviour as getToken.

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

commit d379d96918d8063d25a36c522868d72e29b5ed86
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:58:34 2010 +0000

    Use a 32-bit and with implicit zero-extension instead of a 64-bit and if it
    has an immediate with at least 32 bits of leading zeros, to avoid needing to
    materialize that immediate in a register first.

    FileCheckize, tidy, and extend a testcase to cover this case.

    This fixes rdar://7527390.

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

commit 6fb7a5024fb9a98ff181c5d2a9c77c7953e0d084
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:37:57 2010 +0000

    Re-instate MOV64r0 and MOV16r0, with adjustments to work with the
    new AsmPrinter. This is perhaps less elegant than describing them
    in terms of MOV32r0 and subreg operations, but it allows the
    current register to rematerialize them.

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

commit d21da3e6e415e725824e03262520efbb8149a58a
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:24:27 2010 +0000

    Generalize this check to avoid depending on a specific register assignment.

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

commit 543461a93129eb01a82e917940c0d951af32c7b3
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:23:56 2010 +0000

    Make this test less trivial, to avoid spurious failures.

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

commit e15b21f014ffe1186cd8b9884802b6bea7e2888e
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:21:05 2010 +0000

    Pattern top-level operators don't need to be restricted to a
    single user. The _su forms are intended for non-top-level nodes.

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

commit 6d79e4f053a8cbebdc1476544d883afaf2a5902e
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 11 17:14:46 2010 +0000

    Reword this comment to reference a more fundamental issue.

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

commit 06603838de13691e164ec2bfa1f56da2e10ecc3f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 11 17:03:47 2010 +0000

    Select an OR with immediate as an ADD if the input bits are known zero. This allow the instruction to be 3address-fied if needed.

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

commit 8b55fc02bb4b4c844cd50f489f700f2e8c8ee2e0
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 11 16:29:42 2010 +0000

    Implement a feature (-vector-unaligned-mem) to allow targets to
    ignore alignment requirements for SIMD memory operands.  This
    is useful on architectures like the AMD 10h that do not trap on
    unaligned references if a status bit is twiddled at startup time.

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

commit 6425510605b8e664e589fc31eb3d15f042d9e02c
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Mon Jan 11 07:45:19 2010 +0000

    Respond to Chris' review:
    Make InsertDbgValueIntrinsic() and get Offset take and recieve a uint64_t.
    Get constness correct for getVariable() and getValue().

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

commit 390fcc5ffcc455ce1afc7d6ca153b65876b634d0
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 06:55:24 2010 +0000

    add one more bitfield optimization, allowing clang to generate
    good code on PR4216:

    _test_bitfield:                                             ## @test_bitfield
    	orl	$32962, %edi
    	movl	$4294941946, %eax
    	andq	%rdi, %rax
    	ret

    instead of:

    _test_bitfield:
            movl    $4294941696, %ecx
            movl    %edi, %eax
            orl     $194, %edi
            orl     $32768, %eax
            andq    $250, %rdi
            andq    %rax, %rcx
            movq    %rdi, %rax
            orq     %rcx, %rax
            ret

    Evan is looking into the remaining andq+imm -> andl optimization.

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

commit 4c6ee8169dfcedb5bcb680ab4d212e204f7073c3
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 04:05:13 2010 +0000

    Extend CanEvaluateZExtd to handle and/or/xor more aggressively in the
    BitsToClear case.  This allows it to promote expressions which have an
    and/or/xor after the lshr, promoting cases like test2 (from PR4216)
    and test3 (random extample extracted from a spec benchmark).

    clang now compiles the code in PR4216 into:

    _test_bitfield:                                             ## @test_bitfield
    	movl	%edi, %eax
    	orl	$194, %eax
    	movl	$4294902010, %ecx
    	andq	%rax, %rcx
    	orl	$32768, %edi
    	andq	$39936, %rdi
    	movq	%rdi, %rax
    	orq	%rcx, %rax
    	ret

    instead of:

    _test_bitfield:                                             ## @test_bitfield
    	movl	%edi, %eax
    	orl	$194, %eax
    	movl	$4294902010, %ecx
    	andq	%rax, %rcx
    	shrl	$8, %edi
    	orl	$128, %edi
    	shlq	$8, %rdi
    	andq	$39936, %rdi
    	movq	%rdi, %rax
    	orq	%rcx, %rax
    	ret

    which is still not great, but is progress.

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

commit 5e08c3a19a6e45bd15e41c3df04b8ba3c7d84dcb
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 03:32:00 2010 +0000

    Remove the dead TD argument to CanEvaluateZExtd, and add a
    new BitsToClear result which allows us to start promoting
    expressions that end with a lshr-by-constant.  This is
    conservatively correct and better than what we had before
    (see testcases) but still needs to be extended further.

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

commit 41314c1f6da6dcfa806218e750a7ccd8442269ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 11 02:43:35 2010 +0000

    improve comments, remove dead TD argument to CanEvaluateSExtd.

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

commit aa031d29fcb36598ad0e7524eeba7b968775f15c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 20:30:41 2010 +0000

    teach sext optimization to handle truncs from types that are not
    the dest of the sext.

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

commit 6ee51f8654f7a3765441c34af43c81032ecce836
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 20:25:54 2010 +0000

    teach zext optimization how to deal with truncs that don't come from
    the zext dest type.  This allows us to handle test52/53 in cast.ll,
    and allows llvm-gcc to generate much better code for PR4216 in -m64
    mode:

    _test_bitfield:                                             ## @test_bitfield
    	orl	$32962, %edi
    	movl	%edi, %eax
    	andl	$-25350, %eax
    	ret

    This also fixes a bug handling vector extends, ensuring that the
    mask produced is a vector constant, not an integer constant.

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

commit f3d8a44a4116b338dc5e1760c4fc8c0b435c9afe
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 20:21:42 2010 +0000

    fix a buggy assertion, CreateIntegerCast should allow
    integer vectors as well as just integers.

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

commit df77d76913bc96239d8c630f52a28fff8cf7b1a7
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Sun Jan 10 18:48:49 2010 +0000

    Suppress a warning on gcc 4.4.

    warning: suggest parentheses around ‘&&’ within ‘||’.

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

commit 178ec6095c2522d6da1e7a66a2cc5f3ecab775e0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 07:57:20 2010 +0000

    simplify CanEvaluateSExtd to return a bool now that we have a
    simpler profitability predicate.

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

commit d26a9010287c3b76b4328c0a6bb9de4e847d475b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 07:42:21 2010 +0000

    the NumCastsRemoved argument to CanEvaluateSExtd is dead, remove it.

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

commit cef643a7cffcf37249fa8908c048d290b7bce03f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 07:40:50 2010 +0000

    now that the cost model has changed, we can always consider
    elimination of a sign extend to be a win, which simplifies
    the client of CanEvaluateSExtd, and allows us to eliminate
    more casts (examples taken from real code).

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

commit 86de4ca0f1cc0d95d6c1def0b5f96c4e50ce9ddd
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Sun Jan 10 07:14:18 2010 +0000

    Compute isFunctionLocal in MDNode ctor or via argument in new function getWhenValsUnresolved().
    Document PFS argument to ParseValID() and ConvertGlobalOrMetadataValIDToValue().

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

commit 771e466242edb92436d5ae93b42307dcbaad1044
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 07:08:30 2010 +0000

    change the preferred canonical form for a sign extension to be
    lshr+ashr instead of trunc+sext.  We want to avoid type
    conversions whenever possible, it is easier to codegen expressions
    without truncates and extensions.

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

commit b814f837bf9ca083a1a702e14010d84326d556b6
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 06:59:55 2010 +0000

    fix indentation of switch statements, no functionality change.

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

commit 79046fd0ead7d80018ab7732414c4a0c21b41b15
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 06:50:04 2010 +0000

    fix pasto that broke bootstrap.

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

commit 812e446a719dc38e01d58493701c62a46e537e2b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 02:50:04 2010 +0000

    simplify CanEvaluateZExtd now that we don't care about the number of
    bits known clear in the result and don't care about the # casts
    eliminated.  TD is also dead but keeping it for now.

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

commit 2d9228e406d76b4e18d98d03047a834651c4114f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 02:39:31 2010 +0000

    two changes:
    1) don't try to optimize a sext or zext that is only used by a trunc, let
       the trunc get optimized first.  This avoids some pointless effort in
       some common cases since instcombine scans down a block in the first pass.
    2) Change the cost model for zext elimination to consider an 'and' cheaper
       than a zext.  This allows us to do it more aggressively, and for the next
       patch to simplify the code quite a bit.

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

commit 0ac8ce223227de5de5ba9e3d7d8b0d676a4a578b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 02:22:12 2010 +0000

    enhance CanEvaluateZExtd to handle shift left and sext, allowing
    more expressions to be promoted and casts eliminated.

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

commit a3d7c306da4bc3477bb10bfd43f61ba0f235f04e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 01:35:55 2010 +0000

    remove an xform subsumed by EvaluateInDifferentType.

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

commit a44d31b166a84c4e0ff14905c04db781f381a7e9
Author: Julien Lerouge <jlerouge@apple.com>
Date:   Sun Jan 10 01:07:22 2010 +0000

    Fix nondeterministic behavior.

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

commit b66b27420b31735c5cf7e7b035689ed6170f27fc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 01:04:31 2010 +0000

    clean up this xform by using m_Trunc.

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

commit dc13154dc85bd26c17815527804c78aa708a1809
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 01:00:46 2010 +0000

    inline and remove the rest of commonIntCastTransforms.

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

commit e20f3dd45a603f728d13dde43873750c96cefdae
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 10 00:58:42 2010 +0000

    Inline the expression type promotion/demotion stuff out of
    commonIntCastTransforms into the callers, eliminating a switch,
    and allowing the static predicate  methods to be moved down to
    live next to the corresponding function.  No functionality
    change.

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

commit 440048c27b6462450387d9dc744064cd3e90d6dc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 23:25:21 2010 +0000

    hopefully unbreak the ocaml bindings.

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

commit 1192d8ccdbf231d0f3eda9f9397bfc3e5f022e25
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 22:30:40 2010 +0000

    add 3 passes which have been added but aren't used afaik.

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

commit 8b943dd8ffc9684e48e30a306565ae6467c57c17
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 22:27:07 2010 +0000

    "In order to ease automatic bindings generation, it would be helpful if boolean values were distinguishable from integers. The attached patch introduces "typedef int LLVMBool;", and uses LLVMBool instead of int throughout the C API, wherever a boolean value is called for."

    Patch by James Y Knight!

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

commit d009f94244e0583126a9a9ca23bdf231b3090119
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Jan 9 19:44:16 2010 +0000

    Clarify the requirements for a "tail call" to actually be optimized into a
    jump.  People clearly weren't finding the extra requirements in
    CodeGenerator.html.

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

commit c70bab79d5cb10d92c18942db5f5424f72797dae
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 19:24:49 2010 +0000

    fix bogus test

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

commit dba1e402d851dcba8d48285c9306febe0d2bd59d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 19:24:18 2010 +0000

    fix bogus test

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

commit 7fbedd2bbeb4a01472d40d9766c16bc01d357c86
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 19:20:07 2010 +0000

    fix PR5983, reject function bodies with no blocks per the grammar.

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

commit 12b4c9732917701a648e626fcbd39c86156c15dc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 19:15:14 2010 +0000

    improve documentation for linkonce to be less confusing.

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

commit 7375479e2bd1a4037b5848e6ee117f417d0002b3
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Jan 9 18:56:43 2010 +0000

    Fix http://llvm.org/PR5729: x86-64 tail calls were putting their targets into
    R11, and then asserting that the target was in R9.  Since R9 isn't reserved for
    the target anymore, and is used as an argument, this patch changes the
    assertion.

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

commit 8175c3426e34da1fbe54723f5b2bd4ef370ca951
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 18:40:31 2010 +0000

    2010 is upon us.

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

commit 2f2b306981280b43b98cdff2e00baebadbb8a36c
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Jan 9 18:17:45 2010 +0000

    Use WriteAsOperand instead of getName() to print loop header names,
    so that unnamed blocks are handled.

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

commit 305ce175ae439b529189564849a59d6789cd5ac2
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Jan 9 17:22:48 2010 +0000

    Tighten up the vim LLVM IR syntax highlighting regex for labels, and add a
    highlighting rule for identifiers.

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

commit f235cf58d7574682e14df6827d92ddf2506e1d82
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Jan 9 17:15:21 2010 +0000

    Set the vim auto-indent setting for open braces after case statements to
    follow LLVM source convention.

    Before:
      case X: {
                stuff;
              }

    After:
      case X: {
        stuff;
      }

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

commit d5f58e5c06081e60b4a8ba938799d9e1dc97da95
Author: David Chisnall <csdavec@swan.ac.uk>
Date:   Sat Jan 9 16:27:31 2010 +0000

    Fixed linking of modules containing aliases to constant bitcasts.  Existing behaviour first tried to replace the aliases with the global that they aliased (rather than the bitcast), causing a crash on an assert because the types didn't match.  When this was fixed, it then did the same thing creating the new alias (creating an alias with a different type to its aliasee).

    Linking modules containing aliases to GEPs is still not quite right.  GEPs that are equivalent to bitcasts will be replaced by bitcasts, GEPs that are not will just break.  Aliases to GEPs that are not equivalent to bitcasts are horribly broken anyway (it might be worth adding an assert when creating the alias to prevent these being created; they just cause problems later).

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

commit b2f154bef2486073b253f93bfb96ec95c408af49
Author: Duncan Sands <baldrick@free.fr>
Date:   Sat Jan 9 08:30:33 2010 +0000

    Suppress use of uninitialized variable warning.

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

commit 9c42e1823c0491834a21f08f60b31b21e781594f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 06:01:36 2010 +0000

    only factor from expressions whose uses are empty and whose
    base is the right expression type.  This fixes PR5981.

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

commit c807a81409786d58f6a73a018da26fd66aec0790
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Jan 9 02:13:55 2010 +0000

    Revert an earlier change to SIGN_EXTEND_INREG for vectors. The VTSDNode
    really does need to be a vector type, because
    TargetLowering::getOperationAction for SIGN_EXTEND_INREG uses that type,
    and it needs to be able to distinguish between vectors and scalars.

    Also, fix some more issues with legalization of vector casts.

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

commit 43bc13b68b86c2136326ff0a245fa065dac9ee7c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 9 02:02:37 2010 +0000

    clean up this code, add a fixme.

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

commit 041890c13119d3b398ff4df9644e95bf517a94d3
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 9 01:44:59 2010 +0000

    Delete NamedMDSymTable while destrucing Module.
    Disable  copy ctor and operator= for NamedMDSymTable. Hide typedef that should be public.

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

commit 976e43dbca87ed25b2e078948978ea737db514b7
Author: Dale Johannesen <dalej@apple.com>
Date:   Sat Jan 9 01:24:25 2010 +0000

    Add DEBUG_DECLARE.  Not used yet.

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

commit 459c5a1e2e8f64e3519858e3d5309c9fb3073ec1
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 9 01:24:03 2010 +0000

    NamedMDNode is never used so there is no need to enumerate it here.

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

commit 0a18fe82407938da5ec62ce497217fb044b55918
Author: Julien Lerouge <jlerouge@apple.com>
Date:   Sat Jan 9 01:06:49 2010 +0000

    Fix nondeterministic behavior.

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

commit f36c6867337e26f5f6168442255605b12cafbd35
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 9 01:02:22 2010 +0000

    NamedMDNode element is either null or MDNode. Otherwise this is a malformed NamedMDNode record.

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

commit 580749d7f096d447d30de5706d7b38d0d587f131
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Jan 9 00:30:14 2010 +0000

    Derive NamedMDNode from Value.

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

commit 53d17bd41e372d6302b8a283f646be7fa17420dc
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Jan 9 00:21:08 2010 +0000

    Dan pointed out checking whether a node is dead by comparing its opcode to ISD::DELETED_NODE is not safe. Use a DAGUpdateListener to remove dead nodes from work list instead.

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

commit 0b8c4f4b010dc5abc8748141f5de17cb0bc74d6b
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Jan 8 23:51:25 2010 +0000

    Add DEBUG_VALUE.  Not used yet.

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

commit 2c8f4c8af62d1e45c1a24e7d217e796edfe5e9fe
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 8 23:41:50 2010 +0000

    Fix a critical bug in 64-bit atomic operation lowering for 32-bit. The results of the cmpxchg8b instructions are being thrown away when it branches back to the top of the checking loop. This means the loop always compares against the old value and this can result in a dead lock.

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

commit 2ee164a6e66a3c0f9495567836990aa210876a0f
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Jan 8 21:42:39 2010 +0000

    Grammar thinko.

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

commit e169d8bfd07d97c608156c4696e9a418f738fb6c
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Jan 8 21:37:11 2010 +0000

    Remove unnecessary dyn_cast and add a comment.  Part of a WIP.

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

commit 632002f4605f3f0e39f15710cf441f556c2b9b03
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 8 19:28:47 2010 +0000

    mplement a theoretical fixme.

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

commit 91cf1207b83e466dfb7381aa324e5c01189e0ed8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 8 19:19:23 2010 +0000

    rename CanEvaluateInDifferentType -> CanEvaluateTruncated and
    simplify it now that it is only used for truncates.

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

commit 3ec49f0e24bbdf5053c68b534df66206b866871f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 8 19:14:57 2010 +0000

    Fix comment.

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

commit e19af54f0e8886ceb55f47b97acc4eefe682a5ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 8 19:04:21 2010 +0000

    teach instcombine to delete sign extending shift pairs (sra(shl X, C), C) when
    the input is already sign extended.

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

commit b57b7a0c6f3feb355f11f581b34d49250397a6a4
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 8 19:02:23 2010 +0000

    fix PR5978 by peeling the loop so that we avoid shifting the
    result int by 8 for the first byte.  While normally harmless,
    if the result is smaller than a byte, this shift is invalid.

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

commit 1c1e23389ba5f7a3ca69a1720ea2db76f3e37984
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Jan 8 17:51:48 2010 +0000

    Suppress an unused variable warning when assertions are off;
    remove some trailing whitespace while there.

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

commit 8e9676ce83ade2878871f01328687e024ced157c
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 8 17:48:19 2010 +0000

    tidy up some stuff duncan pointed out.

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

commit 8c04e69b9f0bfba83df8f3fe13af454e10bc2bf3
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Fri Jan 8 17:41:33 2010 +0000

    Minor change, change the order of two "let Inst{...}" stmts within multiclass
    T2I_bin_ii12rs definition.

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

commit 312d366163543c423e407d7bd5051a89d4431ff3
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Jan 8 08:24:49 2010 +0000

    After further thought revert the patch to make fast-isel avoid
    putting relocations into the constant pool - this isn't needed
    for correctness and in the rare occasion it happens would pull
    us out of fast isel for the block.

    If fast-isel application startup time ever becomes an issue we
    can add better support for these addresses instead of bailing.

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

commit 23432d0d8762223b47e8f109ba2bdf8b75e77160
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 8 02:36:12 2010 +0000

    ReplaceAllUsesOfValueWith may delete other nodes that the one being replaced. Do not delete dead nodes again.

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

commit a3d6fff46b5a1832301135850c601a13a0b5c6ac
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Jan 8 01:29:19 2010 +0000

    Fix what looks to me obvious instruction definition bugs.
    1. CMPXCHG8B and CMPXCHG16B did not specify implicit physical register defs and uses.
    2. LCMPXCHG8B is loading 64 bit memory, not 32 bit.

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

commit 134dcfa3d569587348308e8cd8d995e1597752d1
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Jan 8 00:05:33 2010 +0000

    Remove extraneous include.

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

commit 0c4eb989ed9e2cf7e6724b63bcd1cc6f2ef944a0
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Thu Jan 7 23:50:41 2010 +0000

    Add assert to check dominance dfs numbers.

    Compare the dominance information calculated using a dominance tree walk to the
    information calculated based on DFS numbers, if XDEBUG is enabled.

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

commit 689b8144d6689b1c08c163d883185f3bdbb1c0bf
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Thu Jan 7 23:50:25 2010 +0000

    Remove workaround in PostDominators

    Remove a FIXME and unify code that was necessary to work around broken
    updateDFSNumbers().  Before updateDFSNumbers() did not work correctly for post
    dominators.

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

commit 1bdcc0cf6f202d4c83a7bd3233a46c5d84e9752f
Author: Tobias Grosser <grosser@fim.uni-passau.de>
Date:   Thu Jan 7 23:50:06 2010 +0000

    Fix DFS number calculation for postdominators

    The DFS number calculation for postdominators was broken. In the case of
    multiple exits that form the post dominator root nodes, do not iterate over
    all exits, but start from the virtual root node. Otherwise bbs, that are not
    post dominated by any exit but by the virtual root node, will never be assigned
    a DFS number.

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

commit 3d9ecce309b7d133b6fe6a841dd52980ffb5c273
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 23:44:37 2010 +0000

    teach ComputeNumSignBits to look through PHI nodes.

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

commit 6adf1ba76c4533dbe08142585838b5d72506f0be
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 23:42:23 2010 +0000

    filecheckize

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

commit ce802c07d5d10744bff2b16fd88c46e25a5cf948
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 23:41:00 2010 +0000

    Enhance instcombine to reason more strongly about promoting computation
    that feeds into a zext, similar to the patch I did yesterday for sext.
    There is a lot of room for extension beyond this patch.

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

commit 1c106b561b6d796f1f0e4ef28deb5c677f367857
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 21:59:23 2010 +0000

    Fix rdar://7517201, a regression introduced by r92849.
    When folding a and(any_ext(load)) both the any_ext and the
    load have to have only a single use.

    This removes the anyext-uses.ll testcase which started failing
    because it is unreduced and unclear what it is testing.

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

commit 2b32b5663d77046c560d61f05468b0dc87b4bb8c
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 21:53:27 2010 +0000

    factor this code better and reduce nesting at the same
    time, no functionality change.

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

commit b8c38fb2275c52c1a7b206e34a5f6d1b8b096d9e
Author: David Greene <greened@obbligato.org>
Date:   Thu Jan 7 21:43:58 2010 +0000

    Revert r92939.  These intrinsics get matched to LLVM instructions,
    so removing at Chris' request.

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

commit 656988c1575af7f102ecda3b5c5c8322c405a596
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 7 20:58:44 2010 +0000

    APInt'fy TargetLowering::SimplifySetCC to fix PR5963.

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

commit 41caa6c9b6fb1312853324bc3bfc34559ad2c63c
Author: David Greene <greened@obbligato.org>
Date:   Thu Jan 7 19:47:43 2010 +0000

    Add some "missing" instrinsics to make the SSE intrinsic set a bit more
    orthogonal.

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

commit 8352338331930938b73930737b4fd543e42b35a8
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 7 19:46:15 2010 +0000

    Simplify code. No intended functionality/performance change.

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

commit 5382bfd8db0236ef99b2b960216afb73befa2db1
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 7 19:45:14 2010 +0000

    If the data requires a relocation then don't attempt to
    add it to the constant pool for fast-isel. We already
    don't add it for the normal case.

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

commit dd05649bf260ba98f9c3e3ae7bc0c8ad0e5af0af
Author: Eric Christopher <echristo@apple.com>
Date:   Thu Jan 7 19:44:05 2010 +0000

    We need to put any kind of data with a relocation into a
    not-readonly segment on darwin.

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

commit cb5497752b116baa3397e336a16ab2e9111ba941
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Jan 7 19:39:36 2010 +0000

    Use separate namespace for named metadata.

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

commit f106d055dbf1a26a4067c6110a3b8e41534f2bbc
Author: Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com>
Date:   Thu Jan 7 18:46:52 2010 +0000

    Fix occurrence typo

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

commit 5b725deb1d7ed94eb583d92e6acf5d92e641dedf
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 17:53:10 2010 +0000

    constant materialization could be improved.

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

commit a4eae42f0c15257ff2cbed2c57b062b6d715c2c7
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 7 17:50:57 2010 +0000

    Kill dead store.

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

commit 405091faf70c7f5cecdf4b76e28cc877adacac53
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 7 17:29:08 2010 +0000

    Remove dead variable.

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

commit 8426b4a20e9aea0aae90eaa3ef55564e12d57257
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 7 17:27:56 2010 +0000

    Use pop_back_val instead of back()+pop_back.

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

commit a3b7277cf7bfcda19691eebb85c8d20f9e1ccaa9
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Jan 7 13:50:07 2010 +0000

    Use a do-while loop instead of while + boolean.

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

commit 378d545652e3c580e7743c3dc8fa468441150c9d
Author: Duncan Sands <baldrick@free.fr>
Date:   Thu Jan 7 09:05:26 2010 +0000

    Correct spelling.

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

commit ba1c49f15360dd69858b7ea2c6b3c58aace4f0a9
Author: Duncan Sands <baldrick@free.fr>
Date:   Thu Jan 7 05:48:42 2010 +0000

    Be less stingy as to how many selects and phi nodes we
    are prepared to look through.

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

commit 76476aaaaab38d36caccf3bccf553f5ee459f6f9
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Jan 7 02:24:06 2010 +0000

    More trivial optimizations to a function well outside the critical path

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

commit 4c106cdb8573b5701646dff97629fb99d59540d7
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 01:20:20 2010 +0000

    handle ConstantVector while I'm in here.

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

commit 4f9fe1268eb4f437cf4de50dfc7e06e8cd7a30a0
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Jan 7 01:16:21 2010 +0000

    fix a globalopt crash on 'bullet' (handling evaluation of a store
    to an element of a vector in a static ctor) which occurs with an
    unrelated patch I'm testing.  Annoyingly, EvaluateStoreInto basically
    does exactly the same stuff as InsertElement constant folding, but it
    now handles vectors, and you can't insertelement into a vector.  It
    would be 'really nice' if GEP into a vector were not legal.

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

commit f26b80901d602701715d3e3fbe37e0feb797b636
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Jan 7 00:54:06 2010 +0000

    Fix a minor regression from my dag combiner changes. One more place which needs to look pass truncates.

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

commit eacfcd677a4dc1df383eb9ff45fde0c40ab8f98b
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Jan 7 00:51:54 2010 +0000

    Switch StringRef::edit_distance over to using raw pointers, since both
    std::vector and llvm::SmallVector have annoying performance
    tradeoffs. No, I don't expect this to matter, and now it won't.

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

commit ccaafd35c2650453cf54d46edc6dedc8d2d70bff
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Thu Jan 7 00:51:04 2010 +0000

    Add comments.

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

commit e7cdaa0ff91a8386fbef22a48c85d624391b8cd4
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Jan 6 23:54:42 2010 +0000

    80 column violations

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

commit e9366a47925207e0030d12df091d6e1cbc5edbf9
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 6 23:52:46 2010 +0000

    Allow double defs after tail duplication.

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

commit aaf7d07332307f7c820f78f2a6ea877b99fa2d98
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 6 23:47:07 2010 +0000

    Add Target hook to duplicate machine instructions.

    Some instructions refer to unique labels, and so cannot be trivially cloned
    with CloneMachineInstr.

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

commit fd8159b018f0d5ac327caefee632f2be39b3b8d1
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Jan 6 23:45:18 2010 +0000

    Addressing mode 6 (load/store) instructions can't encode an immediate offset
    for stack references.

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

commit f7a3afef91f77182a51be83fa01730000bf358d9
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Jan 6 22:21:25 2010 +0000

    Anti-dependency breaking needs to be careful regarding instructions with
    multiple register definitions.

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

commit 1f156c4013526c48cb06ed664925b6a7084e9c05
Author: Eric Christopher <echristo@apple.com>
Date:   Wed Jan 6 20:04:44 2010 +0000

    Move the object size intrinsic optimization to inst-combine and make
    it work for any integer size return type.

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

commit 0bf0c4cd67b385c7290306ae40562c2f84908e60
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 6 19:43:21 2010 +0000

    Comment.

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

commit 8d5cbef24ef9b259a6d57d972bc98b1bda631540
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Jan 6 19:38:29 2010 +0000

    Teach dag combine to fold the following transformation more aggressively:
    (OP (trunc x), (trunc y)) -> (trunc (OP x, y))

    Unfortunately this simple change causes dag combine to infinite looping. The problem is the shrink demanded ops optimization tend to canonicalize expressions in the opposite manner. That is badness. This patch disable those optimizations in dag combine but instead it is done as a late pass in sdisel.

    This also exposes some deficiencies in dag combine and x86 setcc / brcond lowering. Teach them to look pass ISD::TRUNCATE in various places.

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

commit deeae7a6f0c289aaaac133ccd0d22ca0a4fddbe0
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Jan 6 17:16:00 2010 +0000

    Fix struct/class mismatch

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

commit eedb188d34d1a46dd69672f4c6415a373fab9118
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Wed Jan 6 17:00:21 2010 +0000

    When parsing function-local metadata, create a function-local MDNode

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

commit a11e87a37e60a5a4c20b8ffc3de0b4675b2510cd
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Jan 6 16:48:02 2010 +0000

    80 column and whitespace cleanup

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

commit 39e48e077790523cb83189dcc6880e043968b75c
Author: Duncan Sands <baldrick@free.fr>
Date:   Wed Jan 6 15:37:47 2010 +0000

    Fix a README item: have functionattrs look through selects and
    phi nodes when deciding which pointers point to local memory.
    I actually checked long ago how useful this is, and it isn't
    very: it hardly ever fires in the testsuite, but since Chris
    wants it here it is!

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

commit 1ba4ba754705f4a8261f5cc206b7550da264b82e
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Jan 6 09:20:39 2010 +0000

    Formatting.

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

commit ad48c6101e1a05463a319d633b5c792cdcefc8dd
Author: Lang Hames <lhames@gmail.com>
Date:   Wed Jan 6 08:53:34 2010 +0000

    Fixed malformed -*- lines in PBQP headers.

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

commit 4a124104bd575702d3cf747362f2f7aed4e24d5c
Author: Duncan Sands <baldrick@free.fr>
Date:   Wed Jan 6 08:45:52 2010 +0000

    Partially address a README by having functionattrs consider calls to
    memcpy, memset and other intrinsics that only access their arguments
    to be readnone if the intrinsic's arguments all point to local memory.
    This improves the testcase in the README to readonly, but it could in
    theory be made readnone, however this would involve more sophisticated
    analysis that looks through the memcpy.

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

commit 40520aaab0accf660fb90961ebb571ae4a53bc5b
Author: Duncan Sands <baldrick@free.fr>
Date:   Wed Jan 6 05:49:26 2010 +0000

    This is testing a darwin specific feature, so only turn
    it on for darwin (it fails on linux).

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

commit f0e50c434a117c15a8fa1207c0d771a4d7c30149
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 6 05:32:15 2010 +0000

    tweaks suggested by Duncan

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

commit 5ad00c5540f2395f1f1f818fdc8472c94d4ec5b3
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 6 02:21:00 2010 +0000

    Reenable debug info on PPC.  Works well enough to
    bootstrap.

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

commit f1650604edab7e4dfa06acf9d3d443d10e55020b
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Jan 6 02:20:18 2010 +0000

    Make sure debug info hook gets called when emitting
    synonyms for PPC.

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

commit c936035986b63efc9b4939a00f8c7b6c89a4ee7c
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Jan 6 01:56:21 2010 +0000

    Teach instcombine's sext elimination logic to be more aggressive.
    Previously, instcombine would only promote an expression tree to
    the larger type if doing so eliminated two casts.  This is because
    a need to manually do the sign extend after the promoted expression
    tree with two shifts.  Now, we keep track of whether the result of
    the computation is going to be properly sign extended already.  If
    so, we can unconditionally promote the expression, which allows us
    to zap more sext's.

    This implements rdar://6598839 (aka gcc pr38751)

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

commit e3949409ec0f7daae0bb00b1de69c8e7d4aa6ef8
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Jan 6 00:29:28 2010 +0000

    Add <imp-def> and <imp-kill> operands when replacing virtual sub-register defs and kills.

    An instruction like this:

      %reg1097:1<def> = VMOVSR %R3<kill>, 14, %reg0

    Must be replaced with this when substituting physical registers:

      %S0<def> = VMOVSR %R3<kill>, 14, %reg0, %D0<imp-def>

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

commit a92950a1d89495ff71eeb810afe8a97b91f5d26d
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Jan 6 00:23:35 2010 +0000

    The previous code could potentially cause a cycle. Allow ordering w.r.t. a 0 order.

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

commit 395df6e62a71cfe78544c48bb31428913130eb2a
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Jan 6 00:09:23 2010 +0000

    Only check the ordering if there is an ordering for each nodes.

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

commit 8a6edbd5f2a4ab57f4a7a1599bcdd6fc0656910a
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Jan 5 23:48:12 2010 +0000

    Add a semi-primitive form of scheduling via the "SDNode ordering" to the
    bottom-up scheduler. We prefer the lower order number.

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

commit e890c0582d64784ef5f46687633b771490d09e17
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 23:00:30 2010 +0000

    simplify this code.

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

commit 2e69f124da5e693c022f26f386cf379aaa8ddbf0
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 22:52:54 2010 +0000

    Move this test from test/Transforms/IndVarSimplify to
    test/CodeGen/X86, as doesn't use -indvars, and it does use
    llc -march=x86-64.

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

commit 5c782402abd47ff98c20462f0b4323ee21b3e961
Author: Bill Wendling <isanbard@gmail.com>
Date:   Tue Jan 5 22:39:10 2010 +0000

    Don't assign the shift the same type as the variable being shifted. This could
    result in illegal types for the SHL operator.

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

commit 577421fcce5123c07142cf8b566f5018104ed7b8
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Tue Jan 5 22:37:28 2010 +0000

    Undo r92785, it caused test failure.

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

commit c7812806be7e9d35a22891f10db8c0141fc1913b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 22:30:42 2010 +0000

    make this a static function instead of a method.

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

commit f76867ade835085ac472ee8c2f1bd642f241bc85
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 22:26:32 2010 +0000

    Don't use the ISD::NodeType enum for SDNode opcodes, as CodeGen
    uses several kinds of opcode values which are not declared within
    that enum. This fixes PR5946.

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

commit e1caa0958db19c416203c167b9dc71c9ef518200
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 5 22:22:14 2010 +0000

    Re-add parsing of function-local metadata; this time with testcase.

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

commit 45056b1b3b40428cdd2bc868b3e22b08ed7661da
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 22:21:18 2010 +0000

    more rearrangement and cleanup, fix my test failure.

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

commit 71713e4d7e08616092cf0c5b5c125cd007137b39
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 22:07:33 2010 +0000

    cleanup

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

commit 22c5d59dbbc02e05a9820f8e47677dccae7bc3e9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 22:01:41 2010 +0000

    remove two trunc xforms that are subsumed by EvaluateInDifferentType.
    The only difference is that EvaluateInDifferentType checks to ensure
    they are profitable before doing them :)

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

commit f907f09e3beff5f5cdbf73f03f1176b10a192ade
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:54:09 2010 +0000

    merge some tests.

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

commit ca9de8db30b09ed84437d208bcce979a4ca54e28
Author: Johnny Chen <johnny.chen@apple.com>
Date:   Tue Jan 5 21:51:46 2010 +0000

    Add Rt2 to the asm format string for 32-bit Thumb load/store register dual
    instructions.  Thumb does not have the restriction that t2 = t+1.

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

commit 76efae2ec697bdfda9a990d8dcf7f4274618e2be
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:48:13 2010 +0000

    merge cast2 into cast.ll

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

commit 3e2aa9c6d05ae92967563d4f5ee67b820e49d679
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 21:47:32 2010 +0000

    Allow null to be an element of NamedMDNode. e.g. !llvm.stuff = !{!0, !1, null}

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

commit eb6543085aa2fd762d8b4f3d7e1e99b5f6076af9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:46:22 2010 +0000

    remove useless test.

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

commit 2ec43a964e0ede67b993f0d57d5bfb7e074e20c7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:43:08 2010 +0000

    another example.

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

commit 97b05e1f2cdeb9cefbc7a384f84386929110307d
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Jan 5 21:38:37 2010 +0000

    Don't specify CR sub-registers as implicit defs of BL instructions.

    It is enough to give the super registers CR0, CR1, ..., and specifying the
    sub-registers as well causes confusion in the liveness computations.

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

commit a861e464d1b2bc60b4af7e816c39c4caa71a38da
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:37:44 2010 +0000

    remove a useless negative test, add a rdar # to an xfail that I'm working on.

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

commit 51d53cad7db9e399c42021ee089a80e0a03ca846
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:32:59 2010 +0000

    clean up tests.

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

commit cb055724810e5b4d84c0505ba305a5aecfb93513
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:16:30 2010 +0000

    just remove this xform which is subsumed by others.

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

commit 5b1ab26cbc910289f76aa19ec6a510e4e6dab8cd
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Jan 5 21:13:46 2010 +0000

    Fix comment for CheckDebugInfoIntrinsics

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

commit 606a958f8d5d8e3417b6b4f8e14c4c55e90d1a42
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:11:17 2010 +0000

    move a trunc-specific transform out of commonIntCastTransforms into visitTrunc.

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

commit 93ec5843d1fc59fa69c7e3161a7b06634a6cf78c
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 21:08:02 2010 +0000

    Restore dump() methods to Loop and MachineLoop.

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

commit ad813fb581b9cff83a73b9880dcbd76979caf0d4
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 5 21:05:54 2010 +0000

    Move remaining stuff to the isInteger predicate.

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

commit 63da1cba0e6d07487bab072e7ee77908f6de5c5b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 21:04:47 2010 +0000

    move a zext specific xform out of commonIntCastTransforms into visitZExt and modernize it.

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

commit f6a0623e233f3816bb29e604afa10eb584d6cda3
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Tue Jan 5 20:59:36 2010 +0000

    Remove livein checks from machine code verifier.

    A phi operand that is implicitly defined in a predecessor becomes an undefined
    register after phi elimination. This causes a lot of false positives when the
    verifier is checking if live-in registers are live-out from all predecessors.

    Removing the verifier checks seems like a better solution than insisting on
    IMPLICIT_DEF instructions in predecessor blocks.

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

commit b422edb4b823f29dd8858b7f737da4a06fda5696
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 20:57:30 2010 +0000

    move a trunc-specific xform out of commonIntCastTransforms into visitTrunc

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

commit 16d493af3fff031e1a79708744aa7379b1373b61
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 20:56:24 2010 +0000

    reduce indentation

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92766 91177308-0d34-0410-b5e6-96231b3b80d8

commit 479ee3c9e53cb0c4ace0963cf7541c5a85c58f3f
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Jan 5 20:45:43 2010 +0000

    Regenerate

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92763 91177308-0d34-0410-b5e6-96231b3b80d8

commit 59dfe2ddb5972ceff4ead29fa4a9e489b3e1f01d
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Jan 5 20:45:13 2010 +0000

    Proper deduce z/System LLVM target from target triple when
    --enable-targets=host is specified.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92762 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6aa6bf8f7f435c02ff239cd88e1c2f95b19b9708
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 20:41:31 2010 +0000

    NamedMDNode is a collection MDNodes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92761 91177308-0d34-0410-b5e6-96231b3b80d8

commit ee780ee28aeb83c8fb2138865ff5f9cf824d43d0
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 5 20:07:06 2010 +0000

    Convert a ton of simple integer type equality tests to the new predicate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92760 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2b915ae131104fa253c8e31aa4bb675f267deed3
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 5 20:04:48 2010 +0000

    Add a new predicate for integer type equality tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92759 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1c7426eee32d132c4a02177f159ac66ea9a0f331
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 19:11:42 2010 +0000

    Add an !eq() operator to TableGen.  It operates on strings only.
    Use !cast<string>() to compare other types of objects.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92754 91177308-0d34-0410-b5e6-96231b3b80d8

commit 29773ea81f20037e51adf9e56bd24cb274047534
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 18:24:00 2010 +0000

    Add an entry on SmallBitVector.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92747 91177308-0d34-0410-b5e6-96231b3b80d8

commit eb9dcdd909be81b7e6e7a609e23c9009316a1353
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 18:09:56 2010 +0000

    optimize comparisons against cttz/ctlz/ctpop, patch by Alastair Lynn!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92745 91177308-0d34-0410-b5e6-96231b3b80d8

commit c8ddc0968cd2bba6da3ef3138036e036d84217cd
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 17:55:26 2010 +0000

    Delete useless trailing semicolons.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92740 91177308-0d34-0410-b5e6-96231b3b80d8

commit 28bdf411d6ec32297ce6739980ef866a52530312
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 17:50:58 2010 +0000

    Nick Lewycky pointed out that this code makes changes unconditionally.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92739 91177308-0d34-0410-b5e6-96231b3b80d8

commit b9640cd0439ef4ba5c00ea37abe90703e0acf842
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 17:47:41 2010 +0000

    Have TableGen emit code that uses dbgs() rather than errs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92738 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3a3811590dfe3fd6170d52f93058069df8e2caa3
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 16:59:17 2010 +0000

    If a scope has only one instruction then first instruction is also the last instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92736 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6fbfa9687086a4012cede8a5a2783359368a3098
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 16:31:45 2010 +0000

    Set Changed properly after calling DeleteDeadPHIs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92735 91177308-0d34-0410-b5e6-96231b3b80d8

commit f67674f4d2952ba521a50341d53f7c3eadd1e43b
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 16:27:25 2010 +0000

    Use do+while instead of while for loops which obviously have a
    non-zero trip count. Use SmallVector's pop_back_val().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92734 91177308-0d34-0410-b5e6-96231b3b80d8

commit e287750464c4fd8cec6c4f69b1a6e92579e4300b
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 16:20:55 2010 +0000

    Fix indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92733 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1457eefb50e703a2714db72d294650b972e5aaae
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 15:45:31 2010 +0000

    Make RecursivelyDeleteTriviallyDeadInstructions,
    RecursivelyDeleteDeadPHINode, and DeleteDeadPHIs return a flag
    indicating whether they made any changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92732 91177308-0d34-0410-b5e6-96231b3b80d8

commit c5827eb7c9743b407e423ecebe7e0d5600e835d9
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 15:28:21 2010 +0000

    Some versions of GCC don't like non-static data members in sizeof
    in this context.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92731 91177308-0d34-0410-b5e6-96231b3b80d8

commit b564a5e38a3d697a2dcdc0fd3c67b5fee589eee5
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 15:04:49 2010 +0000

    Add a SmallBitVector class, which mimics BitVector but uses only
    a single pointer (PointerIntPair) member. In "small" mode, the
    pointer field is reinterpreted as a set of bits. In "large" mode,
    the pointer points to a heap-allocated object.

    Also, give BitVector empty and swap functions.

    And, add some simple unittests for BitVector and SmallBitVector.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92730 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7dc6d30881a65dc537c0c3a5c1c005e1449c2133
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 5 13:32:48 2010 +0000

    Add newline at EOF.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92727 91177308-0d34-0410-b5e6-96231b3b80d8

commit 858baacd9c8cfae680149e4d72dab591a5fd637c
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Jan 5 13:12:22 2010 +0000

    Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92726 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7e464881096a6ef718ee688d080abd7e701371b0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:54:43 2010 +0000

    prune some #includes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92712 91177308-0d34-0410-b5e6-96231b3b80d8

commit bb72cf3929ba8042b0b230763cee02cdd0c88288
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:50:36 2010 +0000

    split and/or/xor out into one overly-large (2000LOC) file.  However, I think
    it does make sense to keep them together, at least for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92711 91177308-0d34-0410-b5e6-96231b3b80d8

commit ae482825f6ac21f924a210234a2e4b6c6a4fa82d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:45:02 2010 +0000

    missed file with previous commit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92710 91177308-0d34-0410-b5e6-96231b3b80d8

commit d351cbf681772a64c07daeec87855c801bf9d74d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:44:46 2010 +0000

    split instcombine of shifts out to its own file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92709 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1af5dfe4f0862350ab2a35a629d5b63fac6576a6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:42:10 2010 +0000

    eliminate getBitCastOperand and simplify some over-complex inbounds stuff.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92708 91177308-0d34-0410-b5e6-96231b3b80d8

commit d2297ce9d1815478d31dac279a7ad3a669f5d7ba
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:32:13 2010 +0000

    split call handling out to InstCombineCalls.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92707 91177308-0d34-0410-b5e6-96231b3b80d8

commit d5d0e61248bfc0b9cfb4983065e565c210b07791
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:23:56 2010 +0000

    optimize cttz and ctlz when we can prove something about the
    leading/trailing bits.  Patch by Alastair Lynn!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92706 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d84c24f92b885713398c90b2dcee259f25403f5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:20:54 2010 +0000

    this inline function moved to addsub

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92705 91177308-0d34-0410-b5e6-96231b3b80d8

commit d703eac299f29f6268be2618668e57901083542a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:18:46 2010 +0000

    split add/sub out to its own file.  Eliminate use of
    dyn_castNotVal in the X+~X transform.  dyn_castNotVal is
    dramatic overkill for what the xform needed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92704 91177308-0d34-0410-b5e6-96231b3b80d8

commit 42fae658f2d2901ec44ce0517ce3daf5d71b0895
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:04:23 2010 +0000

    all the places we use hasOneUse() we know are instructions, so inline
    and simplify.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92700 91177308-0d34-0410-b5e6-96231b3b80d8

commit 814855971448ccc6e772c0303d6f042a0cda674e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 07:01:16 2010 +0000

    eliminate AssociativeOpt and its last uses.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92697 91177308-0d34-0410-b5e6-96231b3b80d8

commit b93a1fd7e5455a00306a7a09fc46c669dd7021d9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:59:49 2010 +0000

    inline the FoldICmpLogical functor.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92695 91177308-0d34-0410-b5e6-96231b3b80d8

commit 026ba2cf2249ae64bebe4eaab7d5aef1403d010a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Jan 5 06:52:31 2010 +0000

    Code refactoring.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92694 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7ba5f27addb99d481ae5f685d05ffb42cb211871
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:29:13 2010 +0000

    inline the 'AddRHS' transformation, simplifying things significantly.
    Eliminate the 'AddMaskingAnd' transformation, it is redundant with this
    more general code right below it:
      // A+B --> A|B iff A and B have no bits set in common.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92693 91177308-0d34-0410-b5e6-96231b3b80d8

commit 96a816542b98c6dd14b4667aab400745a7b0d5a7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:24:06 2010 +0000

    remove massive over-genality manifested as a big template
    that got instantiated.  There is no reason for instcombine
    to try this hard for simple associative optimizations.  Next
    up, eliminate the template completely.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92692 91177308-0d34-0410-b5e6-96231b3b80d8

commit a2b8ec3e8c5a05a4bd69a22927c489089c21b421
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:09:35 2010 +0000

    split mul/div/rem instructions out to their own file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92689 91177308-0d34-0410-b5e6-96231b3b80d8

commit eae8d32eaa2fb3119af67221c7bafd3bb8d5857d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:05:07 2010 +0000

    clean up header.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92688 91177308-0d34-0410-b5e6-96231b3b80d8

commit 79604e01bb64b3bee0d1d0351840057de0617702
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 06:03:12 2010 +0000

    split select out to its own file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92687 91177308-0d34-0410-b5e6-96231b3b80d8

commit c025853866d3e56dc2f627a6dda97a9333575256
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 05:57:49 2010 +0000

    split out load/store/alloca.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92685 91177308-0d34-0410-b5e6-96231b3b80d8

commit f61c5394db9842cefb9e44f9f9fda7c19e698a2e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 05:42:08 2010 +0000

    reduce indentation

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92684 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0dad9c196c6bae7a062746c7868a2b75e297f4d8
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 05:36:20 2010 +0000

    split vector stuff out to InstCombineVectorOps.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92683 91177308-0d34-0410-b5e6-96231b3b80d8

commit 05b3d10412bbe139175225e2cf949e34c80fe2a4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 05:31:55 2010 +0000

    split PHI node stuff out to InstCombinePHI.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92682 91177308-0d34-0410-b5e6-96231b3b80d8

commit 766096ee360c85c4fcc6b3b98d2086a661c9c5ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 05:21:26 2010 +0000

    convert various IntrinsicInst's to use class instead of struct.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92681 91177308-0d34-0410-b5e6-96231b3b80d8

commit a0a35fed9af18017f2961af9428a1547298db3c4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Jan 5 04:55:35 2010 +0000

    fix an infinite loop in reassociate building emacs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92679 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41698a6dfd9977a8ed968c2bc89d8250ea4d9328
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:55:22 2010 +0000

    Change this back to errs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92674 91177308-0d34-0410-b5e6-96231b3b80d8

commit 99c71a3dee39e19a3edbd470803924eeb3f9add4
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:53:59 2010 +0000

    These should probably be errs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92673 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43c60b5c700d72299f9d1885fa1a6b1920027ae0
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 01:47:06 2010 +0000

    Delete renaming use of dead dbg intrinsics.

     Intrinsic::dbg_stoppoint
     Intrinsic::dbg_region_start
     Intrinsic::dbg_region_end
     Intrinsic::dbg_func_start

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92672 91177308-0d34-0410-b5e6-96231b3b80d8

commit 531076d281fa2d7f6f21af87a04250d3e8ba913d
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 01:46:14 2010 +0000

    Use StringRef.startswith().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92671 91177308-0d34-0410-b5e6-96231b3b80d8

commit f851739c54a45d6643904d97c5100325bb85d3d0
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:36:30 2010 +0000

    Fix a build error by adding a missing commit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92670 91177308-0d34-0410-b5e6-96231b3b80d8

commit 95303c43a6cb6fc0aebea1dbd6e86c0382cb7e92
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:34:26 2010 +0000

    Fix a build error and change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92669 91177308-0d34-0410-b5e6-96231b3b80d8

commit ff668bd0afa5c8aaf510fc78048e80d7b378ab26
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 01:31:15 2010 +0000

    Remove an unneeded svn:ignore property.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92668 91177308-0d34-0410-b5e6-96231b3b80d8

commit d48b9d36ce2411d9fb784811fa3479b434ec528a
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:32 2010 +0000

    Enable debug buffering.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92667 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6f48e8a93bed1a5d72096a27d7dc1561b47c3205
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:21 2010 +0000

    Enable debug buffering.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92666 91177308-0d34-0410-b5e6-96231b3b80d8

commit 215fdbe5e0022bbfcafad1db0a2e1e5e039279f7
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:18 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92665 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6da905440f801558cb0d8c02b8006e09557c3c07
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:14 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92664 91177308-0d34-0410-b5e6-96231b3b80d8

commit 382d2a453480a0e7f6538e11b2d50c69e1a6e8f1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:09 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92663 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0529d6db651b0a96d48cca38021e7bfaf5b2a43
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:06 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92662 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9b306fece97e14dcdc4de5aea270666b25435532
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:04 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92661 91177308-0d34-0410-b5e6-96231b3b80d8

commit 529ac770e9009a1d9de97a61ff8d07822c121587
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:02 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92660 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0a29a72319f76ef7ed6a4f14a5bce833f077dc3
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:30:00 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92659 91177308-0d34-0410-b5e6-96231b3b80d8

commit faaddb09209ce9bb8f1a658f9cbb5f0d17e57e43
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:58 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92658 91177308-0d34-0410-b5e6-96231b3b80d8

commit f67089ae87e5f4296c88caa9bb019d26190efd2c
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:55 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92657 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6cce0b1be6f65dc8f24824de8eb148aa405e76b6
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:39 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92656 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b37d570f100622830b7241a5eb243b9fff46184
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:36 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92655 91177308-0d34-0410-b5e6-96231b3b80d8

commit 15337a687640c9c72d8432c2afdb97cc39d26d24
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:34 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92654 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7c671aefc167ae8dbe46837005688c6c81327948
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:29 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92653 91177308-0d34-0410-b5e6-96231b3b80d8

commit 67301b17b8350759c64aa5547fbe83f1baa60f6e
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:26 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92652 91177308-0d34-0410-b5e6-96231b3b80d8

commit 852dc4d82b4582ed260b39d67f6572796c080c0b
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:23 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92651 91177308-0d34-0410-b5e6-96231b3b80d8

commit 835365cac97924398689e0d69a671ac7b418c055
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:19 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92650 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56882e97c4e97a6e86d7d2a0d80d58777f87ab47
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:14 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92649 91177308-0d34-0410-b5e6-96231b3b80d8

commit 73c006972f9bc3832d232f61959b743a189121b4
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:13 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92648 91177308-0d34-0410-b5e6-96231b3b80d8

commit f1d5c5991760fc2994c124126fa74ab392c6d97a
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:08 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92647 91177308-0d34-0410-b5e6-96231b3b80d8

commit 59b924335b7c0b1c5b17d981b4bf3148be8dd628
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:29:03 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92646 91177308-0d34-0410-b5e6-96231b3b80d8

commit 52363b09d7378733ef5bd5590b756726800dbf4a
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:58 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92645 91177308-0d34-0410-b5e6-96231b3b80d8

commit f5bedcbea0e754ae0ba67a59b53e27b8dbfdd331
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:53 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92644 91177308-0d34-0410-b5e6-96231b3b80d8

commit 59a30016da3daa3f4695b20ab00488e7a9ae072d
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:52 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92643 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3efbfee970d7c1c6d2560c9b4be9c9de67b788a0
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:47 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92642 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ce5f8e7404a61aad3ac1bc59a56fb2a60ba5cbf
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:43 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92641 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8a83d59f3668d34acac46c08cc033307ab4618c5
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:40 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92640 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7ecd022a2e67c3c1794e8fe4ebc8f25c7d7f8da9
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:37 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92639 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd26a7de77554c3e38d88661013a77efc635ed32
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:32 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92638 91177308-0d34-0410-b5e6-96231b3b80d8

commit 22c7c1119b22f529ef2b985877face5791b88829
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:29 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92637 91177308-0d34-0410-b5e6-96231b3b80d8

commit f7d144c6fab0a60928503264f3baf4d17cfbdaa1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:29 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92636 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2583a55dd3aebdacbbfd99603c13996b4cd3d8d0
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:22 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92635 91177308-0d34-0410-b5e6-96231b3b80d8

commit 60bd5f7897b0d386d71a73844fd3883839821c5a
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:17 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92634 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4185b0fe17814035e6e28c5c0e93b182d23c9125
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:12 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92633 91177308-0d34-0410-b5e6-96231b3b80d8

commit f9a9a0690f376b5dfaecea0d6349cb59dd29c033
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:10 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92632 91177308-0d34-0410-b5e6-96231b3b80d8

commit adea762453eb41624f37e151d284fc20d3ea721c
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:07 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92631 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0ceab92772248e28c3964b7c9245b679c72b23ae
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:07 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92630 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9c9ab7a78ba28729d7c8098927c0bb7c8cc7fcd0
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:28:05 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92629 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61317a6a3789541b9dcd6341916ff31d51cc738f
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:59 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92628 91177308-0d34-0410-b5e6-96231b3b80d8

commit a088f76653c57e8157e6743ae486485dc63a47a9
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:54 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92627 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4d91eb1ee673dc2eb83a82525475b2083efd81be
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:53 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92626 91177308-0d34-0410-b5e6-96231b3b80d8

commit d1bc08c7f8e3a9959c33ff114ec3ad30af55b0d5
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:51 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92625 91177308-0d34-0410-b5e6-96231b3b80d8

commit 64f3b3b649fefc065b7714c977d4360d459a4766
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:47 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92624 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0afa05d4487081749fd2f4a4ff2e16300a52d535
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:44 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92623 91177308-0d34-0410-b5e6-96231b3b80d8

commit 79aa2ea6f0e98b1d6c832eaf0f44abbb23c116d5
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:39 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92622 91177308-0d34-0410-b5e6-96231b3b80d8

commit ba58be830bb1c1b429cf85d401d8b92e66dc1329
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:39 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92621 91177308-0d34-0410-b5e6-96231b3b80d8

commit f25948108fbaecb985ab3a2fbbf7d9fa1916338e
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:33 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92620 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8892465cc5cfe8e6f279de9d6246430953e5d21a
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:30 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92619 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0011785b1d262783eda1dcdabac5a3581dc7c0f9
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:26 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92618 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9196a5558243d71d7ed72a838774896b43deff08
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:24 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92617 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35d99dcce0486fca2656a5d8eaa1cf5cc923c530
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:23 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92616 91177308-0d34-0410-b5e6-96231b3b80d8

commit fd461df87ab202fcd702744b79511eaeaf66448b
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:21 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92615 91177308-0d34-0410-b5e6-96231b3b80d8

commit fac2751e262b8306477c6917daeb9ac789e49502
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:19 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92614 91177308-0d34-0410-b5e6-96231b3b80d8

commit 79a83e8d8a7d451171e547edf4a0db10bbaf5cf0
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:17 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92613 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc227c754c5faa7c071e58f0d698e73eef797b28
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:15 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92612 91177308-0d34-0410-b5e6-96231b3b80d8

commit d21e9eeed93ebc545767c0376a7f1a175b4f4672
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:11 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92611 91177308-0d34-0410-b5e6-96231b3b80d8

commit d3c9cb59fdf2754f6ff8000d7a5e36c527c504a9
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:09 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92610 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c4e1a2a7ace4fee36c8ba69f4151b95a6548944
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:06 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92609 91177308-0d34-0410-b5e6-96231b3b80d8

commit dd7f741e59d004e03a265b2d7c8f712a62448c37
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:04 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92608 91177308-0d34-0410-b5e6-96231b3b80d8

commit a3c7a47197bede65dccfa27ffa814326aba414d3
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:27:01 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92607 91177308-0d34-0410-b5e6-96231b3b80d8

commit c634876cea513c5a275b638287a51025be46a067
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:57 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92606 91177308-0d34-0410-b5e6-96231b3b80d8

commit e76939b714e55cb85990bcbc6b116374f41404fa
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:54 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92605 91177308-0d34-0410-b5e6-96231b3b80d8

commit 068c60489d7c516ea14920e63d19668c931868af
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:52 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92604 91177308-0d34-0410-b5e6-96231b3b80d8

commit 57ed64508e31f5cbe84a9cf9d647bcf2a1b3c3d7
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:49 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92603 91177308-0d34-0410-b5e6-96231b3b80d8

commit a37114727346745e667dc003990e9afbd3747f88
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:45 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92602 91177308-0d34-0410-b5e6-96231b3b80d8

commit d91e136d7029b08fda45b8787f5072a8a1299f47
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:44 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92601 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7564d1640d9e6392eea3411c4225d223754abe2e
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:41 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92600 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0da7f3da989122349e5f88adec40a0f6fa289886
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:39 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92599 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2bbf04af3985f22c4c3a125c92944bc16c4f648
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 01:26:36 2010 +0000

    Add an svn:ignore.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92598 91177308-0d34-0410-b5e6-96231b3b80d8

commit a3dd58c22213899ccb75a7c2ca8aa231862c07f9
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:11 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92597 91177308-0d34-0410-b5e6-96231b3b80d8

commit 776d497ebe1a2f564e6347c9868068da15268760
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:09 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92596 91177308-0d34-0410-b5e6-96231b3b80d8

commit b47bdc31a4d95334741afd2f641e1689ebbc6b77
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:05 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92595 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c5fe44145e826545583d327163bb85117b8fab1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:01 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92594 91177308-0d34-0410-b5e6-96231b3b80d8

commit b4470f146b54d320ec487817e4d5b5db462360ee
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:26:00 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92593 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4629465b6f1e87f2def1f26daafef9920a32c2c2
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:58 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92592 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16fbd3d7b8f99053d375b33f3b59f6d0e0a62fef
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:55 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92591 91177308-0d34-0410-b5e6-96231b3b80d8

commit 63a27d7d439ca535de3bae6c706bb7504fe98b3b
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:52 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92590 91177308-0d34-0410-b5e6-96231b3b80d8

commit e745659a1bda8c67da88fe675dc04a8e27f1925d
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:50 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92589 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2d52f4500b8ff94b69c24667aab93162158443de
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:47 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92588 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d85752a7d4c66ac62cf4f2ba094020ee70935bf
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:45 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92587 91177308-0d34-0410-b5e6-96231b3b80d8

commit aa4099eb1bf8ab16ba4a8036afd6f161e04ff9d1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:43 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92586 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6b268b9ca85f035ffabe5dc1ccbe38bba1a29148
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:41 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92585 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4cddd05371227ebd98311b3f3c0f626023d38aab
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:39 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92584 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5a0d2ab26242c7480217a853afed4028373dc137
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:20 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92583 91177308-0d34-0410-b5e6-96231b3b80d8

commit cea20bca449b5ea4a839ea4130fd121c300b9c92
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:15 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92582 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3f2c44e41b585b295ffdbd6d3a2d9e00b62775fc
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:11 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92581 91177308-0d34-0410-b5e6-96231b3b80d8

commit e3a4bf8ebe6d1dd90bb691a8d264bc202d662aa1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:09 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92580 91177308-0d34-0410-b5e6-96231b3b80d8

commit c104cbb8edc6b851833b551ab17602ac71eebe49
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:04 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92579 91177308-0d34-0410-b5e6-96231b3b80d8

commit fc886fd09a37b8afd503786f00f935a78f5913c8
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:25:00 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92578 91177308-0d34-0410-b5e6-96231b3b80d8

commit f622a561bec3cb20e445fd37689a92ecc2408e09
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:57 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92577 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1c5590fb1ca3540b9ed2e5017810ac51a6c893c6
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:54 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92576 91177308-0d34-0410-b5e6-96231b3b80d8

commit a2af6867e420ba87dc4dd29b01e69afab59bfd3c
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:53 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92575 91177308-0d34-0410-b5e6-96231b3b80d8

commit 943eb7e561156c187c8a8456aa5e0d08e20b8980
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:50 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92574 91177308-0d34-0410-b5e6-96231b3b80d8

commit b0d039ffd114fa91fd4df22cd42842370e03cb59
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:48 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92573 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd5f499efa60f305850c1bad00b20404ca628aca
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:45 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92572 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3cfe335798a9942af1afab2dcda69cbebfde8994
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:43 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92571 91177308-0d34-0410-b5e6-96231b3b80d8

commit da0fe032fe1e3834cadb2731abf2c1065dd460d1
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:40 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92570 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34f085e22d9996fffa66ee1caed4371e86795d49
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:36 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92569 91177308-0d34-0410-b5e6-96231b3b80d8

commit ac5c2b30d15893827c95c56698990b66e888edf6
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:34 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92568 91177308-0d34-0410-b5e6-96231b3b80d8

commit dc4e392f43d93118dc0d90b38eb533fced2e714d
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:28 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92567 91177308-0d34-0410-b5e6-96231b3b80d8

commit 95ce44444ab8457d0717ecc97cbc0e785f02094e
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:24 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92566 91177308-0d34-0410-b5e6-96231b3b80d8

commit a10627702f4fc7e0e503a8fbc23014da18fd91d8
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:21 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92565 91177308-0d34-0410-b5e6-96231b3b80d8

commit 39d140d93435c1d47305d0b1c3b8db7b222b6222
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 01:24:18 2010 +0000

    Change SelectCode's argument from SDValue to SDNode *, to make it more
    clear what information these functions are actually using.

    This is also a micro-optimization, as passing a SDNode * around is
    simpler than passing a { SDNode *, int } by value or reference.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92564 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0596ab962e731ae23fa4c76b8597383ef6c55a01
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:24:08 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92563 91177308-0d34-0410-b5e6-96231b3b80d8

commit cc82e7278d2eff71b8a47a5b7c8db31ee12b02b5
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:23:38 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92562 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6c9fef71bd4164efec7f46046395b3395c8b3575
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:23:36 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92561 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4714553b53a495261b0ba92705b180368e141129
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 01:23:34 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92560 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6aa30a282356389719971dbc7cdef10b8d2896e3
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Jan 5 01:10:40 2010 +0000

    Remove dead debug info intrinsics.
     Intrinsic::dbg_stoppoint
     Intrinsic::dbg_region_start
     Intrinsic::dbg_region_end
     Intrinsic::dbg_func_start
    AutoUpgrade simply ignores these intrinsics now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92557 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9ac796828741a1b2c3e88fc075184a9db2bce949
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 00:44:20 2010 +0000

    Remove the SDNPAssociative properties for the flags-producing
    operators. Eli pointed out that it's not obvious what that
    would mean.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92555 91177308-0d34-0410-b5e6-96231b3b80d8

commit e7f4c5fc8893cd5ec147dcfaecaf617800ee863d
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 00:42:54 2010 +0000

    Simplify this code; avoid duplicating the low-level implementation code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92554 91177308-0d34-0410-b5e6-96231b3b80d8

commit f7b35a5f21112194c360dacc622e24916eb38844
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Jan 5 00:30:22 2010 +0000

    Fix a typo in a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92552 91177308-0d34-0410-b5e6-96231b3b80d8

commit f28809f180f22eb4192453cc4e0424f8cd41107d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Jan 5 00:15:58 2010 +0000

    Fix some struct/class specifier mismatches.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92550 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3af787f06e5e1666cb524108809b64a51519e821
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 00:10:05 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92548 91177308-0d34-0410-b5e6-96231b3b80d8

commit b46fdc9d84af01acad41e371d1877bf45b1bdcdd
Author: David Greene <greened@obbligato.org>
Date:   Tue Jan 5 00:03:48 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92547 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7740668041ab6fd7315ca049a0d967ee3c264dc8
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:48:20 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92545 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd6aa515da7f9404f1fcc0c07b5c8ebd922639d2
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:39:17 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92544 91177308-0d34-0410-b5e6-96231b3b80d8

commit 64fcd6ae4e3e5838f8954d5853031f96fbeb2565
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:22:07 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92542 91177308-0d34-0410-b5e6-96231b3b80d8

commit 186652ea7b671784c6987b4eb0a2f4e663f40fb9
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Jan 4 23:17:24 2010 +0000

    Update CMake LibDeps

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92540 91177308-0d34-0410-b5e6-96231b3b80d8

commit 935e55d50f4cab2e2ca15efc9951a2fb2bb04bc0
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:14:46 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92539 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58efec0df55ebc1ad60eb51aba2b2583cf3e55c8
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:06:47 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92535 91177308-0d34-0410-b5e6-96231b3b80d8

commit 76a36035fa6480cc945fea7b020758102ec05149
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 4 23:04:36 2010 +0000

    Fix debug_inlined section entries for routines whose names are changed through __asm() extension.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92533 91177308-0d34-0410-b5e6-96231b3b80d8

commit 84aab429d79955e5c13dfeaa210c7aaccaba44eb
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 23:02:10 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92532 91177308-0d34-0410-b5e6-96231b3b80d8

commit 652c5971b72c00ec4e753b1bdb56f80a95a8bbf5
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 22:49:02 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92529 91177308-0d34-0410-b5e6-96231b3b80d8

commit 70a291d70d6285c6f0392e9a94c5c89e3f89db20
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 22:41:43 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92528 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0bf334e685123790b89f8bd1d4628a98d1a63b7
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 22:33:16 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92524 91177308-0d34-0410-b5e6-96231b3b80d8

commit 55fa754fbdb50727509d61d3ef0ea39755eb40ca
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Jan 4 22:03:51 2010 +0000

    tblgen/OptParser: Use EmitSourceFileHeader.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92521 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3d201c40d3cfd5f7c47db544d0163549b97cd73
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 22:02:01 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92520 91177308-0d34-0410-b5e6-96231b3b80d8

commit f398207f3eafa89375414ee8494a366040131cf9
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Mon Jan 4 21:58:55 2010 +0000

    Fix CMake build for InstCombine changes

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92519 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43d49789c42281da24317ac5fe35aa570a787ec0
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 21:48:34 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92518 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2c9becc2902dbbd23607546ffa8c3cfd10c7182e
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 21:35:15 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92516 91177308-0d34-0410-b5e6-96231b3b80d8

commit c7948031039206fc69c92a63459b2937ec6918b4
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 21:26:07 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92515 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7908cbcbfbc70072231d2a4d3634455f4c3765a0
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 21:23:34 2010 +0000

    Make this test more portable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92514 91177308-0d34-0410-b5e6-96231b3b80d8

commit f94a1da1ad4ccfab06440a63d4af16e2368da537
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Jan 4 21:22:48 2010 +0000

    Perform this folding as a target specific dag combine:
    (or (x << c) | (y >> (64 - c))) ==> (shld64 x, y, c)

    The isel patterns may not catch all the cases if general dag combine has reduced width of source operands.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92513 91177308-0d34-0410-b5e6-96231b3b80d8

commit ca20adc5b0ede83ed94670f38cab04ed314266dd
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 21:00:54 2010 +0000

    Use a pointer type rather than MVT::Other for the ExternalSymbol node used
    in an inline asm.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92512 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2ded4e05a5295cb0f30fc9706bb9ed5c96b60bb8
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:55:05 2010 +0000

    Remove some README.txt entries which are now implemented.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92511 91177308-0d34-0410-b5e6-96231b3b80d8

commit 211f193cef4d20bfdda069634ca015a9c16570a4
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 4 20:54:06 2010 +0000

    Remove oversimplified test case.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92510 91177308-0d34-0410-b5e6-96231b3b80d8

commit 78591841b67f381ad822f76c4d5ce99891688d22
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:53:54 2010 +0000

    Add some tests and update an existing test to reflect recent
    x86 isel peeps.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92509 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7e8173fa6f122ddc2680eb974f6618dfae1f3973
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:52:50 2010 +0000

    A use by operand 1 or 2 of a SELECT is not a FLAGS use. This
    lets the test-elimination work in more conditional-move cases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92508 91177308-0d34-0410-b5e6-96231b3b80d8

commit cfbbad61bac01130af80d78538d3753207debb29
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:51:50 2010 +0000

    Flags-producing add, and, or, etc. have the same profibility
    rules as normal add, and, or, etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92507 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2a3828c2f5f39d4cc8b911d98cb246ca2a9afeb2
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:51:05 2010 +0000

    Add SDNPCommutative and SDNPAssociative to several X86 target nodes.
    This lets isel fold loads into them in more cases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92506 91177308-0d34-0410-b5e6-96231b3b80d8

commit a48781ef9f52fa184b38ff497ae0912d13c24c4d
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 4 20:44:00 2010 +0000

    Fix begin and end markers for nested scopes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92505 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2b792c95e6d4e3139a92e1153685946f1b11f845
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:36:57 2010 +0000

    Replace some special-case code which probably was buggy with an assertion
    verifying that the special case does not occur.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92504 91177308-0d34-0410-b5e6-96231b3b80d8

commit cce9d29538cca89df73ca76b8bb7bbd065badf15
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 20:31:55 2010 +0000

    Remove the CPAttrParentAsRoot code, which is unused, and inconvenient
    for a refactoring I'm working on.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92503 91177308-0d34-0410-b5e6-96231b3b80d8

commit 262378f0fe604903e98b8b9c696f7aa896f054c6
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 19:57:26 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92502 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c6ce780e77241207156775ca4e85489f5e5ff82
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Jan 4 19:41:13 2010 +0000

    The test, derived from optimzed IR, does not mention "bar" in debug info anywhere so the dwarf writer is not expected to emit any debug info for function "bar".

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92499 91177308-0d34-0410-b5e6-96231b3b80d8

commit ae758424789f1d19e87bd3d110177ec79271f960
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 19:36:42 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92498 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4a28ffb27778158d230faa706ba627b3e41099f5
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 19:10:20 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92496 91177308-0d34-0410-b5e6-96231b3b80d8

commit c435b9e36e8ba86654d488d7c3de3caaaf6e0753
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 18:57:15 2010 +0000

    Truncate GEP indexes larger than the pointer size down to pointer size
    when doing this transform if the GEP is not inbounds.  No testcase because
    it is very difficult to trigger this: instcombine already canonicalizes
    GEP indices to pointer size, so it relies specific permutations of the
    instcombine worklist.

    Thanks to Duncan for pointing this possible problem out.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92495 91177308-0d34-0410-b5e6-96231b3b80d8

commit a1bb07aa0d9650f11d99de47f1cf9da531b45cac
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 18:48:26 2010 +0000

    silence a bogus 'might be used uninit' warning from GCC.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92494 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6f3bf4c5544c4857eebf61b1055dd90ef37c58c7
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Jan 4 18:38:39 2010 +0000

    Add a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92492 91177308-0d34-0410-b5e6-96231b3b80d8

commit 24f90acb9d46605228ee5448934c4c00f7f0b721
Author: David Greene <greened@obbligato.org>
Date:   Mon Jan 4 17:47:05 2010 +0000

    Change errs() to dbgs().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92490 91177308-0d34-0410-b5e6-96231b3b80d8

commit ee898135b401794d095886f24f04b4bb42d3f25e
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Jan 4 10:31:54 2010 +0000

    Fix invalid chain folding for memory variant of sdiv / udiv

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92472 91177308-0d34-0410-b5e6-96231b3b80d8

commit e800b08fb8273246ede9495efb76f51df5104755
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:59:07 2010 +0000

    move some more cast-related stuff

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92471 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3529dd1d9672a47ba64c17314fcff8373bda8b8b
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Jan 4 07:55:25 2010 +0000

    80-col violations, trailing whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92470 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0b2e6feb96d027ae57c4e2c16d44c81794be97fe
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:54:59 2010 +0000

    move the [Can]EvaluateInDifferentType functions out to InstCombineCasts.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92469 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4bbb8a358a666d66fdbf6870abf3cc9b2ead186d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:53:58 2010 +0000

    split 943 lines of instcombine out to a new InstCombineCasts.cpp
    file.  InstructionCombining.cpp is now down to a svelte 9300 lines :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92468 91177308-0d34-0410-b5e6-96231b3b80d8

commit 004eae9138c629055b1d8f0c6a083cc7f64f7585
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:37:31 2010 +0000

    split instcombine of compares (visit[FI]Cmp) out to
    a new InstCombineCompares.cpp file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92467 91177308-0d34-0410-b5e6-96231b3b80d8

commit 078c8b595c346a58f13c995c56af11d61fdfd099
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:19:55 2010 +0000

    update cmakefile

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92466 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1ef9cadf1ac6f58ce9cfaff94783ecd41a888e79
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:17:19 2010 +0000

    move the 'SimplifyDemandedFoo' methods out to their own file, cutting 1K lines out of instcombine.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92465 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0108c8c925828fa1020f0b87abe9a2de4a0d972
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Jan 4 07:16:12 2010 +0000

    Fix the Emacs mode string.

    Also trailing whitespace & 80-col violations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92464 91177308-0d34-0410-b5e6-96231b3b80d8

commit c737bae32e523f6e848986187bdd2a60a0d99461
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:12:23 2010 +0000

    split the instcombine class definition out to a header shared
    among the instcombine library.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92463 91177308-0d34-0410-b5e6-96231b3b80d8

commit 635eb0cb378a8abe8376fc4f6c75b6f9255d67ee
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 07:02:48 2010 +0000

    remove a ton of unneeded LLVMContext stuff.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92462 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3de1b03506fa746783da702a4b2791b8aac5e66d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 06:30:00 2010 +0000

    move InstCombineWorklist out to its own header.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92461 91177308-0d34-0410-b5e6-96231b3b80d8

commit b43a92358666cb00a5dfa7ec95197ba9c13a65c4
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 06:28:20 2010 +0000

    forgot to svn add these.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92460 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8d4c5c1d1462a330aac5a9067153a20c50c1eb84
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 06:23:24 2010 +0000

    move instcombine to its own library, it's past time.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92459 91177308-0d34-0410-b5e6-96231b3b80d8

commit d1bad7405d2d9c24a1cfd27b0fa7938cd795b79b
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Jan 4 06:03:59 2010 +0000

    implement an instcombine xform needed by clang's codegen
    on the example in PR4216.  This doesn't trigger in the testsuite,
    so I'd really appreciate someone scrutinizing the logic for
    correctness.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92458 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3a3e6366fa8ad087d355e4e7508b3cd359dd7cf
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 18:33:18 2010 +0000

    fix PR5930, allowing the asmprinter to emit difference between
    two labels as a truncate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92455 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a0e9c64aa48fb1137b36930e90d20b744c2e3ab
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 18:14:24 2010 +0000

    it isn't safe to speculative load from a malloc, it might have
    returned null, and may not have been big enough in any case.
    Thanks to Jay Foad for pointing this out!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92452 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0a30434516d58591e41031fcbe5122231f2dd74c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 18:10:58 2010 +0000

    add PR#

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92451 91177308-0d34-0410-b5e6-96231b3b80d8

commit 32bf9d34a062d5039f8f14498ba0af061461b65b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 18:09:40 2010 +0000

    differences between two blockaddress's don't cause a
    global variable initializer to require relocations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92450 91177308-0d34-0410-b5e6-96231b3b80d8

commit 30000569c3e23cd39bcdb419d8416935ffdf7c08
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 06:58:48 2010 +0000

    pull my debug hooks out, I'm done with this xform for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92446 91177308-0d34-0410-b5e6-96231b3b80d8

commit bf48d8953d20dd801bd4eea038ea0b60e969e9a1
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Jan 3 04:39:07 2010 +0000

    Small cleanups, refactor some duplicated code into a single method. No
    functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92445 91177308-0d34-0410-b5e6-96231b3b80d8

commit 74136f9c91a8bc0f19e637e35a18d3f6487e5129
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Jan 3 03:03:27 2010 +0000

    generalize the previous transformation to handle indexing into
    arrays of structs and other arrays, so long as all the subsequent
    indexes are constants.  This triggers frequently for stuff like:

    @divisions = internal constant [29 x [2 x i32]] [[2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 1], [2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 2], [2 x i32] zeroinitializer, [2 x i32] zeroinitializer, [2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 1], [2 x i32] zeroinitializer, [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 2]], align 32 ; <[29 x [2 x i32]]*> [#uses=50]

    	  %623 = getelementptr inbounds [29 x [2 x i32]]* @divisions, i64 0, i64 %619, i64 0 ; <i32*> [#uses=1]
    	   %684 = icmp eq i32 %683, 999

    also for the "my_defs" table in 'gs', etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92444 91177308-0d34-0410-b5e6-96231b3b80d8

commit cb77a9a904dea843a61ed8da02f44f6a91bb81cd
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Jan 3 00:55:31 2010 +0000

    Cleanup.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92436 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd10dc6d790610482dd8f95c28a19740df436244
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 22:08:28 2010 +0000

    teach instcombine to optimize idioms like A[i]&42 == 0.  This
    occurs in 403.gcc in mode_mask_array, in safe-ctype.c (which
    is copied in multiple apps) in _sch_istable, etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92427 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0fc16e3f995888e1452b115a14a23cc49025ac4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 21:50:18 2010 +0000

    Teach the table lookup optimization to generate range compares
    when a consequtive sequence of elements all satisfies the
    predicate.  Like the double compare case, this generates better
    code than the magic constant case and generalizes to more than
    32/64 element array lookups.

    Here are some examples where it triggers.  From 403.gcc, most
    accesses to the rtx_class array are handled, e.g.:

    @rtx_class = constant [153 x i8] c"xxxxxmmmmmmmmxxxxxxxxxxxxmxxxxxxiiixxxxxxxxxxxxxxxxxxxooxooooooxxoooooox3x2c21c2222ccc122222ccccaaaaaa<<<<<<<<<<<<<<<<<<111111111111bbooxxxxxxxxxxcc2211x", align 32 ; <[153 x i8]*> [#uses=547]
       %142 = icmp eq i8 %141, 105
    @rtx_class = constant [153 x i8] c"xxxxxmmmmmmmmxxxxxxxxxxxxmxxxxxxiiixxxxxxxxxxxxxxxxxxxooxooooooxxoooooox3x2c21c2222ccc122222ccccaaaaaa<<<<<<<<<<<<<<<<<<111111111111bbooxxxxxxxxxxcc2211x", align 32 ; <[153 x i8]*> [#uses=543]
    	   %165 = icmp eq i8 %164, 60

    Also, most of the 59-element arrays (mode_class/rid_to_yy, etc)
    optimized before are actually range compares.  This lets 32-bit
    machines optimize them.

    400.perlbmk has stuff like this:

    400.perlbmk: PL_regkind, even for 32-bit:
    @PL_regkind = constant [62 x i8] c"\00\00\02\02\02\06\06\06\06\09\09\0B\0B\0D\0E\0E\0E\11\12\12\14\14\16\16\18\18\1A\1A\1C\1C\1E\1F !!!$$&'((((,-.///88886789:;8$", align 32 ; <[62 x i8]*> [#uses=4]
    	   %811 = icmp ne i8 %810, 33

    @PL_utf8skip = constant [256 x i8] c"\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\01\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\02\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\03\04\04\04\04\04\04\04\04\05\05\05\05\06\06\07\0D", align 32 ; <[256 x i8]*> [#uses=94]
    	   %12 = icmp ult i8 %10, 2

    etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92426 91177308-0d34-0410-b5e6-96231b3b80d8

commit 19e717578551af76c788b29bde533f88a918180e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 21:46:33 2010 +0000

    theoretically the negate we find could be in a different function, check
    for this case.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92425 91177308-0d34-0410-b5e6-96231b3b80d8

commit f9a7a500993dfd7e3be5c44c7aef39b26ea338cc
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 20:20:33 2010 +0000

    use enums for the over/underdefined markers for clarity.  Switch
    to using -2/-3 instead of -1/-2 for a future xform.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92423 91177308-0d34-0410-b5e6-96231b3b80d8

commit a357b8d54b0c57f6988e66b8fd3a813881f2095b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 20:07:03 2010 +0000

    remove the random sampling framework, which is not maintained anymore.
    If there is interest, it can be resurrected from SVN.  PR4912.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92422 91177308-0d34-0410-b5e6-96231b3b80d8

commit c325c5e72e737d4f1b5ab4595c378bf10358b8a7
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Jan 2 16:14:56 2010 +0000

    Fix logic error in previous commit. The != case needs to become an or, not an
    and.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92419 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9fd66d7d2bbf26689ad9dd66c6bea5e9f4ed7f1c
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Jan 2 15:25:44 2010 +0000

    Optimize pointer comparison into the typesafe form, now that the backends will
    handle them efficiently. This is the opposite direction of the transformation
    we used to have here.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92418 91177308-0d34-0410-b5e6-96231b3b80d8

commit ea367cca5ae583d07c6df818167c6419fbabbc22
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 09:35:17 2010 +0000

    Generalize the previous xform to handle cases where exactly
    two elements match or don't match with two comparisons.  For
    example, the testcase compiles into:

    define i1 @test5(i32 %X) {
      %1 = icmp eq i32 %X, 2                          ; <i1> [#uses=1]
      %2 = icmp eq i32 %X, 7                          ; <i1> [#uses=1]
      %R = or i1 %1, %2                               ; <i1> [#uses=1]
      ret i1 %R
    }

    This generalizes the previous xforms when the array is larger than
    64 elements (and this case matches) and generates better code for
    cases where it overlaps with the magic bitshift case.

    This generalizes more cases than you might expect.  For example,
    400.perlbmk has:

    @PL_utf8skip = constant [256 x i8] c"\01\01\01\...
    %15 = icmp ult i8 %7, 7

    403.gcc has:
    @rid_to_yy = internal constant [114 x i16] [i16 259, i16 260, ...
    %18 = icmp eq i16 %16, 295

    and xalancbmk has a bunch of examples, such as
    _ZN11xercesc_2_5L15gCombiningCharsE and _ZN11xercesc_2_5L10gBaseCharsE.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92417 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9780c03743bc6320d89d12b31cb1c84fd146da4f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 09:22:13 2010 +0000

    fix a miscompilation I introduced of cdecl with a late change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92416 91177308-0d34-0410-b5e6-96231b3b80d8

commit 03b9facf565592cf62612707e7e3f2c74471527a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 08:56:52 2010 +0000

    enhance the compare/load/index optimization to work on *any* load
    from a global with 32/64 elements or less (depending on whether
    i64 is native on the target), generating a bitshift idiom to
    determine the result.  For example, on test4 we produce:

    define i1 @test4(i32 %X) {
      %1 = lshr i32 933, %X                           ; <i32> [#uses=1]
      %2 = and i32 %1, 1                              ; <i32> [#uses=1]
      %R = icmp ne i32 %2, 0                          ; <i1> [#uses=1]
      ret i1 %R
    }

    This triggers in a number of interesting cases, for example, here's an
    fp case:
    @A.3255 = internal constant [4 x double] [double 4.100000e+00, double -3.900000e+00, double -1.000000e+00, double 1.000000e+00], align 32 ; <[4 x double]*> [#uses=7]
    ...
    	   %7 = fcmp olt double %3, 0.000000e+00

    In this case we make the slen2_tab global dead, which is nice:
    @slen2_tab = internal constant [16 x i32] [i32 0, i32 1, i32 2, i32 3, i32 0, i32 1, i32 2, i32 3, i32 1, i32 2, i32 3, i32 1, i32 2, i32 3, i32 2, i32 3], align 32 ; <[16 x i32]*> [#uses=1]
    ...
    	   %204 = icmp eq i32 %46, 0

    Perl has a bunch of these, also on the 'Perl_regkind' array:
    @Perl_yygindex = internal constant [51 x i16] [i16 0, i16 0, i16 0, i16 0, i16 374, i16 351, i16 0, i16 -12, i16 0, i16 946, i16 413, i16 -83, i16 0, i16 0, i16 0, i16 -311, i16 -13, i16 4007, i16 2893, i16 0, i16 0, i16 0, i16 0, i16 0, i16 372, i16 -8, i16 0, i16 0, i16 246, i16 -131, i16 43, i16 86, i16 208, i16 -45, i16 -169, i16 987, i16 0, i16 0, i16 0, i16 0, i16 308, i16 0, i16 -271, i16 0, i16 0, i16 0, i16 0, i16 0, i16 0, i16 0, i16 0], align 32 ; <[51 x i16]*> [#uses=1]
    ...
      %1364 = icmp eq i16 %1361, 0

    186.crafty really likes this on 64-bit machines, because it triggers on a bunch of globals like this:
    @white_outpost = internal constant [64 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\02\02\00\00\00\00\00\04\05\05\04\00\00\00\00\03\06\06\03\00\00\00\00\00\01\01\00\00\00\00\00\00\00\00\00\00\00", align 32 ; <[64 x i8]*> [#uses=2]

    However the big winner is 403.gcc, which triggers hundreds of times, eliminating all the accesses to the 57-element arrays 'mode_class', mode_unit_size, mode_bitsize, regclass_map, etc.

    go 64-bit machines :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92415 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ebc5d61a24dc66f46dba1db0a6919fd6b21e581
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Sat Jan 2 08:27:23 2010 +0000

    Forward -O0 to llvm-gcc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92414 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3f441ad8ebfa73fa4994319f5b6f7e367b865a7d
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Sat Jan 2 08:27:10 2010 +0000

    Apparently, it is OK for -MT to be specified several times.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92413 91177308-0d34-0410-b5e6-96231b3b80d8

commit 94955a8b4771ae14ff26b9afbb45cb7b3d011141
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 08:20:51 2010 +0000

    enhance the previous optimization to work with fcmp in addition
    to icmp.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92412 91177308-0d34-0410-b5e6-96231b3b80d8

commit b84aa98afd5a02d8a26e6f38a842dc0cc6507c9c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 08:12:04 2010 +0000

    Teach instcombine to fold compares of loads from constant
    arrays with variable indices into a comparison of the index
    with a constant.  The most common occurrence of this that
    I see by far is stuff like:

    if ("foobar"[i] == '\0') ...

    which we compile into: if (i == 6), saving a load and
    materialization of the global address.  This also exposes
    loop trip count information to later passes in many cases.

    This triggers hundreds of times in xalancbmk, which is where I first
    noticed it, but it also triggers in many other apps.  Here are a few
    interesting ones from various apps:

    @must_be_connected_without = internal constant [8 x i8*] [i8* getelementptr inbounds ([3 x i8]* @.str64320, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8]* @.str27283, i64 0, i64 0), i8* getelementptr inbounds ([4 x i8]* @.str71327, i64 0, i64 0), i8* getelementptr inbounds ([4 x i8]* @.str72328, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8]* @.str18274, i64 0, i64 0), i8* getelementptr inbounds ([6 x i8]* @.str11267, i64 0, i64 0), i8* getelementptr inbounds ([3 x i8]* @.str32288, i64 0, i64 0), i8* null], align 32 ; <[8 x i8*]*> [#uses=2]
      %scevgep.i = getelementptr [8 x i8*]* @must_be_connected_without, i64 0, i64 %indvar.i ; <i8**> [#uses=1]
      %17 = load ...
      %18 = icmp eq i8* %17, null                     ; <i1> [#uses=1]
    -> icmp eq i64 %indvar.i, 7

    @yytable1095 = internal constant [84 x i8] c"\12\01(\05\06\07\08\09\0A\0B\0C\0D\0E1\0F\10\11266\1D: \10\11,-,0\03'\10\11B6\04\17&\18\1945\05\06\07\08\09\0A\0B\0C\0D\0E\1E\0F\10\11*\1A\1B\1C$3+>#%;<IJ=ADFEGH9KL\00\00\00C", align 32 ; <[84 x i8]*> [#uses=2]
      %57 = getelementptr inbounds [84 x i8]* @yytable1095, i64 0, i64 %56 ; <i8*> [#uses=1]
       %mode.0.in = getelementptr inbounds [9 x i32]* @mb_mode_table, i64 0, i64 %.pn ; <i32*> [#uses=1]
    load ...
       %64 = icmp eq i8 %58, 4                         ; <i1> [#uses=1]
    -> icmp eq i64 %.pn, 35             ; <i1> [#uses=0]

    @gsm_DLB = internal constant [4 x i16] [i16 6554, i16 16384, i16 26214, i16 32767]
    %scevgep.i = getelementptr [4 x i16]* @gsm_DLB, i64 0, i64 %indvar.i ; <i16*> [#uses=1]
    %425 = load %scevgep.i
    %426 = icmp eq i16 %425, -32768                 ; <i1> [#uses=0]
    -> false

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92411 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b7ce57f87d16a0acd0efbbbbd614985f65bc791
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 01:22:23 2010 +0000

    constant fold nasty constant expressions formed by llvm-gcc,
    wrapping up PR3351.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92410 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4091917ae511e97c66b4d94602b1aa3457205ab2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 00:31:05 2010 +0000

    remove the instcombine transformations that are inserting nasty
    pointer to int casts that confuse later optimizations.  See PR3351
    for details.

    This improves but doesn't complete fix 483.xalancbmk because llvm-gcc
    does this xform in GCC's "fold" routine as well.  Clang++ will do
    better I guess.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92408 91177308-0d34-0410-b5e6-96231b3b80d8

commit 910a778224f2b18bfadd8512345b17706d890f30
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 00:22:15 2010 +0000

    allow this to work on linux hosts.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92407 91177308-0d34-0410-b5e6-96231b3b80d8

commit a746511144561cb5a56ae14096499a8dcdf5d10e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Jan 2 00:00:03 2010 +0000

    Teach codegen to handle:
     (X != null) | (Y != null) --> (X|Y) != 0
     (X == null) & (Y == null) --> (X|Y) == 0

    so that instcombine can stop doing this for pointers.  This is part of PR3351,
    which is a case where instcombine doing this for pointers (inserting ptrtoint)
    is pessimizing code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92406 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3b9d28303feab3a9b0b446b189a3f23e8fff72a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 23:55:04 2010 +0000

    rename file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92405 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0903092e4877dcf99741ed478addd9d0afc57ec5
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 23:37:34 2010 +0000

    whitespace cleanup

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92404 91177308-0d34-0410-b5e6-96231b3b80d8

commit f54ff334cb53099a89446a32d22e37019825056a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 23:09:08 2010 +0000

    add a simple instcombine xform, simplify another one to use hasAllZeroIndices()
    instead of hand rolling a loop.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92403 91177308-0d34-0410-b5e6-96231b3b80d8

commit fc872393bf81fa6b0a601c6d7b76d1f1fb3b9699
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 22:42:29 2010 +0000

    generalize the pointer difference optimization to handle
    a constantexpr gep on the 'base' side of the expression.
    This completes comment #4 in PR3351, which comes from
    483.xalancbmk.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92402 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f541cf11a4e334ce302282521bbab6605b2076d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 22:29:12 2010 +0000

    teach instcombine to optimize pointer difference idioms involving constant
    expressions.  This is a step towards comment #4 in PR3351.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92401 91177308-0d34-0410-b5e6-96231b3b80d8

commit b6292bc182efcd6d4e11c2b52671f66f8935e712
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 22:12:03 2010 +0000

    use 'match' to simplify some code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92400 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34eb10d272168ccc1c93029279578cc5f02c3fa3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 18:34:40 2010 +0000

    implement the transform requested in PR5284

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92398 91177308-0d34-0410-b5e6-96231b3b80d8

commit 46e577bf2a6280f34443ebe54086acc3dd98a20d
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 04:41:36 2010 +0000

    Fix a warning on gcc 4.4.

    SelectionDAGBuilder.cpp:4294: warning: suggest explicit braces to avoid
    ambiguous ‘else’

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92395 91177308-0d34-0410-b5e6-96231b3b80d8

commit 480b7f806a23fc202d62c88d0841ebeed547f4e2
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 04:41:22 2010 +0000

    Trailing whitespace, 80-col violations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92394 91177308-0d34-0410-b5e6-96231b3b80d8

commit 305344c00aad44f387608b0e55786a151f42840d
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 04:41:10 2010 +0000

    Minor simplifactions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92393 91177308-0d34-0410-b5e6-96231b3b80d8

commit de321fd87cc67481b8605dafc7edf8b59e95bd3c
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 04:40:54 2010 +0000

    Typo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92392 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90837d9a6ecd25840dc9450638db4953b5a98e72
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 03:51:02 2010 +0000

    Make CheckForSuperfluousOptions handle list form of 'switch_on' correctly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92391 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1ab87cfc39d712753f6d1f9c64d0a67e82744c7d
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 03:50:51 2010 +0000

    Minor simplifications.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92390 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9718696a5cd121422f7bb2aef2d704d005ad8205
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Fri Jan 1 03:50:34 2010 +0000

    Better error message.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92389 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6391637268da054569126bf1c0eee3a90e87a35a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 03:32:16 2010 +0000

    Teach codegen to lower llvm.powi to an efficient (but not optimal)
    multiply sequence when the power is a constant integer.  Before, our
    codegen for std::pow(.., int) always turned into a libcall, which was
    really inefficient.

    This should also make many gfortran programs happier I'd imagine.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92388 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc7a9122a4566bf8ad1eb66dc22064fabda19f91
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 03:26:51 2010 +0000

    Make this more likely to generate a libcall.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92387 91177308-0d34-0410-b5e6-96231b3b80d8

commit c42f65a4032db2a448aaa7b85dff872c8955f1ea
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 01:54:08 2010 +0000

    add missing line.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92384 91177308-0d34-0410-b5e6-96231b3b80d8

commit 30095b482545296c2e4d1e25ca7f728104612e28
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 01:52:15 2010 +0000

    add a few trivial instcombines for llvm.powi.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92383 91177308-0d34-0410-b5e6-96231b3b80d8

commit f2b7b735f3f8abaa67b644eb410c182c6c257304
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 01:29:26 2010 +0000

    update this.  To take the next step, llvm.powi should be generalized to work
    on integers as well and codegen should lower them to branch trees.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92382 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9174de49a24169a0d3d58b6378ec05dbb549060b
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 01:13:15 2010 +0000

    When factoring multiply expressions across adds, factor both
    positive and negative forms of constants together.  This
    allows us to compile:

    int foo(int x, int y) {
        return (x-y) + (x-y) + (x-y);
    }

    into:

    _foo:                                                       ## @foo
    	subl	%esi, %edi
    	leal	(%rdi,%rdi,2), %eax
    	ret

    instead of (where the 3 and -3 were not factored):

    _foo:
            imull   $-3, 8(%esp), %ecx
            imull   $3, 4(%esp), %eax
            addl    %ecx, %eax
            ret

    this started out as:
        movl    12(%ebp), %ecx
        imull   $3, 8(%ebp), %eax
        subl    %ecx, %eax
        subl    %ecx, %eax
        subl    %ecx, %eax
        ret

    This comes from PR5359.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92381 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4aed2811219557774a7df9a86529c6d72280be50
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 00:50:00 2010 +0000

    test case we alredy get right.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92380 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0fc5712a47212e229d5421c21100a3e5e3cc347f
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Jan 1 00:04:49 2010 +0000

    Remove old header.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92378 91177308-0d34-0410-b5e6-96231b3b80d8

commit 680cc0add1cf3946bd625782d25e5116ae9b6749
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 00:04:26 2010 +0000

    clean up some comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92377 91177308-0d34-0410-b5e6-96231b3b80d8

commit e7d8b124af9cecb15576e155686447438f07122d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Jan 1 00:01:34 2010 +0000

    switch from std::map to DenseMap for rank data structures.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92375 91177308-0d34-0410-b5e6-96231b3b80d8

commit 49b38e9dc18b42fcb62e9e47729f8a2c349ba464
Author: Ted Kremenek <kremenek@apple.com>
Date:   Thu Dec 31 23:40:17 2009 +0000

    Remove derelict serialization code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92374 91177308-0d34-0410-b5e6-96231b3b80d8

commit dd7266b6fa5dafad5e578ce761995dda8263ba78
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 20:34:32 2009 +0000

    reuse negates where possible instead of always creating them from scratch.
    This allows us to optimize test12 into:

    define i32 @test12(i32 %X) {
      %factor = mul i32 %X, -3                        ; <i32> [#uses=1]
      %Z = add i32 %factor, 6                         ; <i32> [#uses=1]
      ret i32 %Z
    }

    instead of:

    define i32 @test12(i32 %X) {
      %Y = sub i32 6, %X                              ; <i32> [#uses=1]
      %C = sub i32 %Y, %X                             ; <i32> [#uses=1]
      %Z = sub i32 %C, %X                             ; <i32> [#uses=1]
      ret i32 %Z
    }

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92373 91177308-0d34-0410-b5e6-96231b3b80d8

commit dabb5f7a839c6ffa02eba804d2ee257a849816ee
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 19:49:01 2009 +0000

    we don't need a smallptrset to detect duplicates, the values are
    sorted, so we can just do a linear scan.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92372 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7a14c94ff032c286735e3d51ad3716292eb02d9c
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 19:34:45 2009 +0000

    make reassociate more careful about not leaving around dead mul's

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92370 91177308-0d34-0410-b5e6-96231b3b80d8

commit b350027509cee7866483cd4c772c0ba585b81201
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 19:25:19 2009 +0000

    remove debug

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92369 91177308-0d34-0410-b5e6-96231b3b80d8

commit eef3d7ee13996d710f5af71a4a1791a7bfa64057
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 19:24:52 2009 +0000

    teach reassociate to factor x+x+x -> x*3.  While I'm at it,
    fix RemoveDeadBinaryOp to actually do something.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92368 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4ecba488405762d5bdcb4cfceb50a14728bc9a5d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 18:40:32 2009 +0000

    change reassociate to use SmallVector for its key datastructures
    instead of std::vector.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92366 91177308-0d34-0410-b5e6-96231b3b80d8

commit a49b7bd78269db61b5905196c3a42687aa9ea684
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 18:18:46 2009 +0000

    change an if to an assert, fix comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92364 91177308-0d34-0410-b5e6-96231b3b80d8

commit 87a70035c511a65fdf87d3c114669553ef70442d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 18:17:13 2009 +0000

    move the rest of the add optimization code out to OptimizeAdd,
    improve some comments, simplify a bit of code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92363 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35f374a80c2c56df08b8a86049b70c39cfa9aa6a
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 17:51:05 2009 +0000

    factor statistic updating better.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92362 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3866fd8b0928b0e2a81b931077fb42cc919206ec
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Dec 31 16:27:13 2009 +0000

    Silence compiler warning.

    warning: comparison between signed and unsigned integer expressions

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92359 91177308-0d34-0410-b5e6-96231b3b80d8

commit f26331c710d7cb3dc5e2df5f599e0b439b2e0d2e
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 08:33:49 2009 +0000

    simple fix for an incorrect factoring which causes a
    miscompilation, PR5458.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92354 91177308-0d34-0410-b5e6-96231b3b80d8

commit 432f8a4ede7b5b32887a2ae4c7f8cd822feb9de4
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 08:32:22 2009 +0000

    merge some more tests in.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92353 91177308-0d34-0410-b5e6-96231b3b80d8

commit e1d8cae5d7441a85b5138590f2a19e774efc5a14
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 08:29:56 2009 +0000

    filecheckize

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92352 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a8f839a3540ae2c6933fa8f850a51b95104e61d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 08:23:09 2009 +0000

    fix refactoro

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92349 91177308-0d34-0410-b5e6-96231b3b80d8

commit 67ee6d8a18ce97db9a33a19ffe62c53b3bac264a
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 07:59:34 2009 +0000

    factor code out into helper functions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92347 91177308-0d34-0410-b5e6-96231b3b80d8

commit f854201455275fe4ec9b15b8bef96d515990b99f
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 07:48:51 2009 +0000

    switch some std::vector's to smallvector.  Reduce nesting.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92346 91177308-0d34-0410-b5e6-96231b3b80d8

commit c4671c2dcae45396caa118cee1be30d21caac5f6
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 07:33:14 2009 +0000

    use more modern datastructures.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92344 91177308-0d34-0410-b5e6-96231b3b80d8

commit eca6bc45daaff60fd301ddcb3c94f0810738f2ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 07:17:37 2009 +0000

    clean up -debug output.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92343 91177308-0d34-0410-b5e6-96231b3b80d8

commit a5f5a55bd2010c450ba3a648ad5e716c840ac606
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Dec 31 04:24:34 2009 +0000

    Document the edit-distance algorithm used in StringRef, switch it over
    to SmallVector, and add a unit test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92340 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a1c423fb9667a46973660d699e342f781ff0e1b
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 03:02:42 2009 +0000

    this #include is ok.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92338 91177308-0d34-0410-b5e6-96231b3b80d8

commit 05a0becaf20bf261a03929e63cb10c25a9172406
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 03:02:08 2009 +0000

    fix Analysis/DebugInfo.h to not include Metadata.h.  Do this
    by moving one method out of line and eliminating redundant checks
    from other methods.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92337 91177308-0d34-0410-b5e6-96231b3b80d8

commit 42dfc1d91651da34013c8ae49382ca10961224ae
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 03:00:49 2009 +0000

    add some basic named MD tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92336 91177308-0d34-0410-b5e6-96231b3b80d8

commit cf722229b32c21d5253ce611583938c1272f54de
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:33:14 2009 +0000

    use early exits to reduce indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92335 91177308-0d34-0410-b5e6-96231b3b80d8

commit c216378f3e025eed5df082c89eb82b28be8e1f34
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:31:59 2009 +0000

    eliminate another copy of the mdnode printing logic, simplify the
    one that remains.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92334 91177308-0d34-0410-b5e6-96231b3b80d8

commit d256081f4440011f5cb24d08d5112ecf710869c9
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:27:30 2009 +0000

    random tidying for MDNode printing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92333 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7d7fac9a02beee58e15c60298a26f5f9670d15c8
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:23:35 2009 +0000

    eliminate a bunch of useless forwarding functions with one caller.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92332 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f23f2e3d4679ea7a9b3f6a79ffbe6015ff95742
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:20:11 2009 +0000

    make mdnMap type safe, rename accessors for consistency with the rest of llvm.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92331 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a1e1086cfb3e9daffc318b392bf82e2cc59f041
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:15:45 2009 +0000

    metadata can't be a global var initializer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92330 91177308-0d34-0410-b5e6-96231b3b80d8

commit d1af981f1285805303100ba20190a3f9e9c4f4a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:13:35 2009 +0000

    simplify mdnode printing logic.  Now N->dump() only
    dumps one node instead of all of them.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92329 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4e50db19cd616dc6705d14b1f85dba6494ce0260
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 02:12:13 2009 +0000

    don't unittest mdnode printing, we have disassembler tests for this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92328 91177308-0d34-0410-b5e6-96231b3b80d8

commit d401bb57e7bc85c1c1e2170b3f66989b438246c1
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:54:05 2009 +0000

    unify two copies of the NamedMDNode printing code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92327 91177308-0d34-0410-b5e6-96231b3b80d8

commit c4dd513c791f8a7dbd1ed28a455740f144d1f2a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:44:44 2009 +0000

    fix printing of function-local metadata to print all the operands of the
    mdnode, not just operand 0 over and over.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92326 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5828cf6c126f0f0c7fbc09fa1db040025598cc5e
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:41:14 2009 +0000

    simplify printing of mdstring and Argument.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92325 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7811ce3c042b1e10bf9a92978a360ba64916dfc5
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:36:50 2009 +0000

    simplify asmprinting of NamedMDNode

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92324 91177308-0d34-0410-b5e6-96231b3b80d8

commit a643a318f7a73ba97a66bd9bf68de4f7f19c1c7b
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:32:41 2009 +0000

    Remove #include of metadata.h from intrinsicinst.h.  The only
    method that needs it (DbgValueInst::getValue) has been moved out
    of line.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92323 91177308-0d34-0410-b5e6-96231b3b80d8

commit 782edc0ad4962d0f22679c264b9ad9aeb43495e5
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:22:29 2009 +0000

    rename "elements" of metadata to "operands".  "Elements" are
    things that occur in types.  "operands" are things that occur
    in values.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92322 91177308-0d34-0410-b5e6-96231b3b80d8

commit c79176153244447832fda44fc92602cb19c9da20
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 01:05:46 2009 +0000

    Optimize MDNode to coallocate the operand list immediately
    after the MDNode in memory.  This eliminates the operands
    pointer and saves a new[] per node.

    Note that the code in DIDerivedType::replaceAllUsesWith is wrong
    and quite scary.  A MDNode should not be RAUW'd with something
    else: this changes all uses of the mdnode, which may not be debug
    info related!  Debug info should use something non-mdnode for
    declarations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92321 91177308-0d34-0410-b5e6-96231b3b80d8

commit 67735d43b803531f50ba62a14a19750f3509d640
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Dec 31 00:51:46 2009 +0000

    tidy

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92320 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0deeb1db6042913943e6b7d60cdd118ef2a9376
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 21:42:11 2009 +0000

    do not bother reuniquing mdnodes whose operands drop to null.  Doing
    so can be a huge performance issue when tearing down modules and mdnodes
    are not guaranteed to be unique anyway.  This speeds up:
    $ time ~/llvm/Release/bin/clang gcc.c -w -S -g

    from 72 to 35s, where gcc.c is from:
    http://people.csail.mit.edu/smcc/projects/single-file-programs/

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92315 91177308-0d34-0410-b5e6-96231b3b80d8

commit c6729718c58b0778c48378d4a2f9e18778d396aa
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 20:25:09 2009 +0000

    remove some misleading comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92311 91177308-0d34-0410-b5e6-96231b3b80d8

commit e63a69745242ce18f887b374f0db666f0f778e4c
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Dec 30 17:23:44 2009 +0000

    Implement edit distance for StringRef

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92309 91177308-0d34-0410-b5e6-96231b3b80d8

commit 205f53281b573f15e78ce49fdb0f700092ee977b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 06:00:36 2009 +0000

    remove some fixme's

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92304 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9d0d3555fc441023a92a5a248e6f3d9a5b44a950
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:54:51 2009 +0000

    fix two bogus tests that the asmparser now rejects.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92303 91177308-0d34-0410-b5e6-96231b3b80d8

commit 252f0e4c82322f10f0cf3e99b2faa00d9ed03f08
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:48:36 2009 +0000

    now that instruction metadata is only parsed in one place, eliminate the
    parser-global MDsOnInst vector and make ParseInstructionMetadata return
    its result by-ref through an argument like the entire rest of the parser.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92302 91177308-0d34-0410-b5e6-96231b3b80d8

commit c095b028825a29bad04e198523c3488e779d8c7c
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:44:30 2009 +0000

    reimplement ParseOptionalInfo as ParseOptionalCommaAlign, correctly
    handle the comma case for metadata.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92301 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50bbd7c6b40c7c8a2f0f1f46302b805ff986a146
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:31:19 2009 +0000

    rename ParseOptionalCustomMetadata -> ParseInstructionMetadata,
    and make it non-optional.  This fixes the bug where we'd accept
    and ignore a spurious comma after some instructions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92300 91177308-0d34-0410-b5e6-96231b3b80d8

commit a834b598af65a2b754df36042a8e7f1886263836
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:27:33 2009 +0000

    convert 4 more instructions over.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92299 91177308-0d34-0410-b5e6-96231b3b80d8

commit b0f5db5cb5246de5a9d8f25d81788e837b35398a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:23:43 2009 +0000

    add facilities to start factoring instruction metadata parsing
    out of each opcode's handler.  Change ret over so far.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92298 91177308-0d34-0410-b5e6-96231b3b80d8

commit a36628319feacb86df07dfc1ca6c5e05b764ba74
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:14:00 2009 +0000

    reimplement insertvalue/extractvalue metadata handling to not blindly
    accept invalid input.  Actually add a testcase.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92297 91177308-0d34-0410-b5e6-96231b3b80d8

commit ad53f269b62cd83bfa6caf79632016715c44536f
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:04:46 2009 +0000

    remove two bogus calls that accepted metadata in the middle of insert/extract value
    *constant exprs*.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92296 91177308-0d34-0410-b5e6-96231b3b80d8

commit 106ec003fa597a1634e0a8f20e7c466497ef04ac
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 05:02:06 2009 +0000

    rename NamedOrCustomMD -> MetadataVar to follow conventions of all the rest of the code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92295 91177308-0d34-0410-b5e6-96231b3b80d8

commit f7da8c1f859cb6e837e3a44ed6147a1bc4733857
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 04:56:59 2009 +0000

    rename lltok::Metadata -> lltok::exclaim.  We name tokens
    after their syntactic form, not their semantic form.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92294 91177308-0d34-0410-b5e6-96231b3b80d8

commit 321130761ffd8fb17d1e90824ed5f0711f15e8af
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 04:51:58 2009 +0000

    rename MetadataCache -> NumberedMetadata to follow the convention
    used by other things.  Convert it to a vector since it is a dense
    numbering.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92293 91177308-0d34-0410-b5e6-96231b3b80d8

commit 42913ca9f6a8786f8f0c6835e670402f7db5d165
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 04:42:57 2009 +0000

    rewrite ParseMDNodeVector to follow the normal patter used in the .ll parser.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92292 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8859ed33bc71bf98ea6f8e162ee4359fa1744d94
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 04:15:23 2009 +0000

    rename ParseMDNode -> ParseMDNodeID, since it parses !42, not !{... } as you'd expect.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92291 91177308-0d34-0410-b5e6-96231b3b80d8

commit e78c594690534be3d922f4c2f59ece9a7da1d186
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 04:13:37 2009 +0000

    fix parsing of mdstring values.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92290 91177308-0d34-0410-b5e6-96231b3b80d8

commit b5e601df8a3ed005307e6e1194a39446a98d1b83
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 02:20:07 2009 +0000

    remove the code added in r90497.  It has several major issues and no tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92288 91177308-0d34-0410-b5e6-96231b3b80d8

commit c5a4e14fc3a40fe3a2843a2c0ae2587927677842
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Dec 30 02:11:14 2009 +0000

    split t_Metadata into t_MDNode and t_MDString, eliminating some unsafe casting.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92287 91177308-0d34-0410-b5e6-96231b3b80d8

commit da5298327ce62bd6d8327e24d5789b52902c4f60
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 22:40:21 2009 +0000

    factor code even more.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92280 91177308-0d34-0410-b5e6-96231b3b80d8

commit b5a95af25e0603970ceac878057d48682d7cdfed
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 22:35:39 2009 +0000

    simplify some code and unbreak the build by not consuming an
    extra token.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92279 91177308-0d34-0410-b5e6-96231b3b80d8

commit 68c027ce120b4bb4fd519f9f710fe819b728698a
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Dec 29 22:17:06 2009 +0000

    remove a really wrong parenthesis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92277 91177308-0d34-0410-b5e6-96231b3b80d8

commit e599a697b4098ccd98f8edc80b4c1503194a5c7e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 22:01:50 2009 +0000

    clean up some really strange code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92275 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d53e97911a01aa7278e301aa3ad41ec5de588df
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 21:53:55 2009 +0000

    change ParseMDString and ParseMDNode to take arguments of the right type.
    This exposed a raft of other problems, which I'll deal with in subsequent
    patches.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92273 91177308-0d34-0410-b5e6-96231b3b80d8

commit 349e4075fbe75fccaa4e94296af269bcd9a866dd
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 21:43:58 2009 +0000

    switch to TrackingVH instead of WeakVH, since these can never
    be RAUW'd and go to null.  This also gets us some sorely lacking
    type safety.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92272 91177308-0d34-0410-b5e6-96231b3b80d8

commit af9ba478bc13ec6132d707b84d218daa8f26fc36
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 21:25:40 2009 +0000

    Each instruction is allowed to have *multiple* different
    metadata objects on them.  Though the entire compiler supports this,
    the asmparser didn't.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92270 91177308-0d34-0410-b5e6-96231b3b80d8

commit 24392c25bc8f9283a50d326eb2b5e9bc24416cb5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 21:17:33 2009 +0000

    Do not crash when .ll printing metadata that smells like debug info, but isn't.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92268 91177308-0d34-0410-b5e6-96231b3b80d8

commit f272fd760f2a623eea02766fb1143f94746f3ca3
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 21:09:57 2009 +0000

    fix indentation, fit in 80 cols.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92267 91177308-0d34-0410-b5e6-96231b3b80d8

commit 527d14b89e5dde3ec59e4431be4c102383d55edf
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Dec 29 16:57:26 2009 +0000

    Replace a few more SmallVectors with arrays.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92265 91177308-0d34-0410-b5e6-96231b3b80d8

commit a7b0ebd1d27261cff8d0c0a0e20ab84d2da81ae8
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Dec 29 11:04:52 2009 +0000

    Use an array instead of a SmallVector.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92264 91177308-0d34-0410-b5e6-96231b3b80d8

commit 457576ff0a03b6a73006b4202ae17304125e38c0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 09:32:19 2009 +0000

    remove a bunch of unneeded functions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92263 91177308-0d34-0410-b5e6-96231b3b80d8

commit 49c94d990cc63b75b1a9a010d818c27ca2a779bb
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 09:22:47 2009 +0000

    major cleanups, much of this file was incorrectly indented.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92262 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0aad044ccc2d58a1e5a3a704de3f2e85b46706a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 09:15:46 2009 +0000

    one pass of cleanup over DebugInfo.h.  Much more is still needed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92261 91177308-0d34-0410-b5e6-96231b3b80d8

commit c4d8577e32301f706cf33e6f9401b062870476ab
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 09:12:29 2009 +0000

    prune #includes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92260 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6bba08039ac1edd35d89b5a7da3c06317b0a5a73
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 09:01:33 2009 +0000

    Final step in the metadata API restructuring: move the
    getMDKindID/getMDKindNames methods to LLVMContext (and add
    convenience methods to Module), eliminating MetadataContext.
    Move the state that it maintains out to LLVMContext.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92259 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58d94d4250c8a42d3392e01c3dd9e108e1bc5791
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 08:06:56 2009 +0000

    just cleanup.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92258 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7a21401bf89ad297f30839e65e5c09ad63073f85
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 08:03:58 2009 +0000

    remove useless argument.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92256 91177308-0d34-0410-b5e6-96231b3b80d8

commit c5c30fec467ddaa595605058a29eae086ba5130c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:56:15 2009 +0000

    privatize another interface.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92255 91177308-0d34-0410-b5e6-96231b3b80d8

commit a361a085cb03ab1e951ed341cb3271a8f54f587e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:50:09 2009 +0000

    the only call to this function (from clang) has been removed, zap it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92254 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9924ee255336099ea7fc66ff6c98e8ce367db9f4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:44:16 2009 +0000

    remove some unneeded Metadata interfaces.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92252 91177308-0d34-0410-b5e6-96231b3b80d8

commit 81ffc04666323d8fc0b1a831d63486436dec815f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:28:33 2009 +0000

    fix .cpp file to not wrap the entire file in namespace blocks.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92250 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ae0692560544ab40362e7902db0d4933395c1b1
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:25:48 2009 +0000

    tidy up debug info comments, use ->isVoidTy() where reasonable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92249 91177308-0d34-0410-b5e6-96231b3b80d8

commit f4a877b44e61d0e4f3a03219ab430f4c4fbaed94
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 07:12:03 2009 +0000

    sink twine.h down out of Value.h.  It is annoying that you need
    to #include Twine.h just to give a twine a default value.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92247 91177308-0d34-0410-b5e6-96231b3b80d8

commit 260cabecaaba7c0ce020aab05f08062154205014
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Tue Dec 29 03:24:34 2009 +0000

    Extern declaration for unordered.f32 libcall was not being emitted. Fixed that.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92242 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2394453af76b7e98b2574613a9af4523ae124805
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 02:53:52 2009 +0000

    When doing v1->RAUW(v2), don't do anything to metadata.  We don't know
    why one was replaced with the other.  Even in the specific case of
    debug information, it doesn't make sense to transfer the location over,
    this will just result in jumbled loc info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92241 91177308-0d34-0410-b5e6-96231b3b80d8

commit 809758b23bf141f89fc0e4bb46b16705babcb217
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 02:46:09 2009 +0000

    sink the Instruction::HasMetadata bit into SubclassData.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92240 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed71f551254a290c97860a7d8106a26905705dc4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Dec 29 02:14:09 2009 +0000

    add a layer of accessors around the Value::SubClassData member, and use
    a convention (shadowing the setter with private forwarding function) to
    prevent subclasses from accidentally using it.

    This exposed some bogosity in ConstantExprs, which was propaging the
    opcode of the constant expr into the NUW/NSW/Exact field in the
    getWithOperands/getWithOperandReplaced methods.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92239 91177308-0d34-0410-b5e6-96231b3b80d8

commit d11da6df1ecf393f637674081b24a631417321ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 23:41:32 2009 +0000

    This is a major cleanup of the instruction metadata interfaces that
    I asked Devang to do back on Sep 27.  Instead of going through the
    MetadataContext class with methods like getMD() and getMDs(), just
    ask the instruction directly for its metadata with getMetadata()
    and getAllMetadata().

    This includes a variety of other fixes and improvements: previously
    all Value*'s were bloated because the HasMetadata bit was thrown into
    value, adding a 9th bit to a byte.  Now this is properly sunk down to
    the Instruction class (the only place where it makes sense) and it
    will be folded away somewhere soon.

    This also fixes some confusion in getMDs and its clients about
    whether the returned list is indexed by the MDID or densely packed.
    This is now returned sorted and densely packed and the comments make
    this clear.

    This introduces a number of fixme's which I'll follow up on.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92235 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7006b38f3ae7c3b5a565ff924b729111807327eb
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:56:07 2009 +0000

    rearrange some code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92234 91177308-0d34-0410-b5e6-96231b3b80d8

commit 343d8d6a1128b42a9bb2ee6ad4c726cea1f3ae2e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:52:41 2009 +0000

    add IRBuilder.cpp to cmake

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92233 91177308-0d34-0410-b5e6-96231b3b80d8

commit e9f460d2376ae08b4897c2a16ce16523f3e079c6
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:52:06 2009 +0000

    remove #include that comes in from ConstantFolder.h

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92232 91177308-0d34-0410-b5e6-96231b3b80d8

commit 46c22854156dc4b4ec23dff224d977e2df55dda1
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:50:56 2009 +0000

    remove #include of Function.h from IRBuilder

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92231 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b342015570ced985595ad672e1b2a63910caf76
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:45:40 2009 +0000

    move debug info stuff out of line, allowing two #includes
    to go away from IRBuilder.h

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92230 91177308-0d34-0410-b5e6-96231b3b80d8

commit 24115ad0a861ee64d3e5ed72a54b3932174b2d39
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:28:46 2009 +0000

    split code that doesn't need to be templated out of IRBuilder into a new
    non-templated IRBuilderBase class.  Move that large CreateGlobalString
    out of line, eliminating the need to #include GlobalVariable.h in IRBuilder.h

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92227 91177308-0d34-0410-b5e6-96231b3b80d8

commit 88b45f9bec26faf55292c7cb2b2dd13dbf2723ec
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 21:12:29 2009 +0000

    rename ivar to be more descriptive.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92226 91177308-0d34-0410-b5e6-96231b3b80d8

commit 68d0d0c2d9a9ceaf5d23d83d224235acba505245
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 20:45:51 2009 +0000

    rename getMDKind -> getMDKindID, make it autoinsert if an MD Kind
    doesn't exist already, eliminate registerMDKind.  Tidy up a bunch
    of random stuff.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92225 91177308-0d34-0410-b5e6-96231b3b80d8

commit 093b1167ac64f42f6ac318d821f85c41bc8b2339
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 20:10:43 2009 +0000

    rename getHandlerNames to getMDKindNames, simplify its interface
    and simplify all the clients that use it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92224 91177308-0d34-0410-b5e6-96231b3b80d8

commit bf70eda2e1f91cc4a58435342d5d27db1405445f
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Dec 28 19:49:00 2009 +0000

    tidy up and delete a dead smallvector.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92223 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26 15:20:54 +02:00
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
Török Edvin
6c5344d3ea Merge LLVM upstream r83242.
Squashed commit of the following:

commit 6f2bf0bd6f1ff49887d30f3433d05bd906e6b3d3
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 06:57:25 2009 +0000

    getFunctionAlignment should return log2 alignment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83242 91177308-0d34-0410-b5e6-96231b3b80d8

commit 69e343b1b893bf2b11cc0320973d329eb9102e79
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 06:53:57 2009 +0000

    Fix tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83241 91177308-0d34-0410-b5e6-96231b3b80d8

commit 42b0e2ad0096357ac3f62e5e7066703bdb93ba75
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 06:50:50 2009 +0000

    Fix test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83240 91177308-0d34-0410-b5e6-96231b3b80d8

commit 62213e4da7f2ac9b615a3bd53baad974c1c36bdd
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 06:07:47 2009 +0000

    C++ member functions must be 2 byte aligned per ABI.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83239 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4a6e6dd500a86c44803aa7b1414c8603d9e5c753
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 05:03:07 2009 +0000

    Forgot about ARM::tPUSH. It also has a new writeback operand.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83237 91177308-0d34-0410-b5e6-96231b3b80d8

commit a2e9ca91163c46e55d5ee9e16efb3a1ab6a01467
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 04:57:15 2009 +0000

    Move load / store multiple before post-alloc scheduling.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83236 91177308-0d34-0410-b5e6-96231b3b80d8

commit 926c44a79e4e6eb86e44028d9f313640c6238ddf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Oct 2 04:45:37 2009 +0000

    Test case for aligned attribute on function declaration.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83234 91177308-0d34-0410-b5e6-96231b3b80d8

commit db397e1ea09a961e2b3f16d7ee85eae5f19f8771
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Oct 1 23:28:47 2009 +0000

    All callee-saved registers are live-out of a return block.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83223 91177308-0d34-0410-b5e6-96231b3b80d8

commit 736fed9ff71ae677a7c947ac80ebb42a527de0dc
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Oct 1 22:19:57 2009 +0000

    Remove neonfp attribute and instead set default based on CPU string. Add -arm-use-neon-fp to override the default.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83218 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d14abe36967fe67c85915dc6102a3b24fc1cd4a
Author: Mike Stump <mrs@apple.com>
Date:   Thu Oct 1 22:08:58 2009 +0000

    Expand api out in the usual inserter way, though, I do have a
    question, can we get rid of the BasicBlock versions of all inserters
    and use Head == 0 to indicate the old case when GetInsertBlock == 0?

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83216 91177308-0d34-0410-b5e6-96231b3b80d8

commit 089aa85274d26ebec4989ac1ceeefba7fca5e5ea
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Oct 1 21:46:35 2009 +0000

    Restore the -post-RA-scheduler flag as an override for the target specification. Remove -mattr for setting PostRAScheduler enable and instead use CPU string.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83215 91177308-0d34-0410-b5e6-96231b3b80d8

commit a9a6b6528197d68ea551f665bc6be722a0009630
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 20:54:53 2009 +0000

    ARM::tPOP and tPOP_RET each has an extra writeback operand now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83214 91177308-0d34-0410-b5e6-96231b3b80d8

commit 254350268fc9c24618049ec56bb13484a12bd7ea
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Oct 1 20:45:06 2009 +0000

    remove trailing whitespace

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83213 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a26010c218cd8979439036cc90d3bea93b3996b
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Oct 1 20:31:14 2009 +0000

    Add support to extract lexical scope information from DebugLoc attached with an machine instruction.
    This is not yet enabled.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83210 91177308-0d34-0410-b5e6-96231b3b80d8

commit cdb56fcef112775875904583d3cc07a262a28af3
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Oct 1 19:45:32 2009 +0000

    Use MachineFrameInfo.getPristineRegs() to determine which callee-saved registers are available for anti-dependency breaking. Some cleanup.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83208 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90ecd198e2f605f8a613ce0861aeea7e16a56575
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Oct 1 18:25:23 2009 +0000

     Record first and last instruction of a scope in DbgScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83207 91177308-0d34-0410-b5e6-96231b3b80d8

commit 23e904656c452ab739af152a9f767a5e504be4f5
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Oct 1 17:39:52 2009 +0000

    Don't use identifiers that start with an underscore followed
    by a capital letter, which invokes undefined behavior.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83206 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0f9678ef172077982826809d5111881929175d83
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Oct 1 17:25:36 2009 +0000

    Teach CMake to look for bidirectional_iterator, iterator, forward_iterator, uint64_t, and u_int64_t, from Yonggang Luo

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83203 91177308-0d34-0410-b5e6-96231b3b80d8

commit 04be082a4a304483410133a89dbd0f1dfe902c9a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 08:26:23 2009 +0000

    Observe hasExtraSrcRegAllocReq and hasExtraDefRegAllocReq. Do not change
    operands of instructions with these properties while breaking anti-dep.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83198 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7c8d5ea09fb5e7a585533f711b9540e9b3b95a5e
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 08:22:27 2009 +0000

    Add hasExtraSrcRegAllocReq and hasExtraDefRegAllocReq flags to ld / st multiple,
    ld / st pairs, etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83197 91177308-0d34-0410-b5e6-96231b3b80d8

commit f6ea3038ef1d98019eb620ad0fbb8f2ca5f49da5
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 08:21:18 2009 +0000

    Add instruction flags: hasExtraSrcRegAllocReq and hasExtraDefRegAllocReq. When
    set, these flags indicate the instructions source / def operands have special
    register allocation requirement that are not captured in their register classes.
    Post-allocation passes (e.g. post-alloc scheduler) should not change their
    allocations. e.g. ARM::LDRD require the two definitions to be allocated
    even / odd register pair.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83196 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8ae1c40d8152145e9810bc28383af1d3ebf5b52b
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Thu Oct 1 05:30:05 2009 +0000

    Remove GVNPRE.cpp from the CMake makefile

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83194 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50ee6c55ed015693e91bcebda0c100f6185a47fe
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Oct 1 02:18:36 2009 +0000

    remove the GVNPRE pass.  It has been subsumed by the GVN pass.
    Ok'd by Owen.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83193 91177308-0d34-0410-b5e6-96231b3b80d8

commit 713ff84d1467c64ad625681baa355b49bcc44ca3
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 01:39:21 2009 +0000

    Update ARM JIT emitter to account for ld/st multiple changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83192 91177308-0d34-0410-b5e6-96231b3b80d8

commit b43a20e3bce6b4b16151ec25ef3541494fce8425
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Oct 1 01:33:39 2009 +0000

    Change ld/st multiples to explicitly model the writeback to base register. This fixes most of the -ldstopti-before-sched2 regressions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83191 91177308-0d34-0410-b5e6-96231b3b80d8

commit f736728788cddfb56d44fb826cb5d91dfdbfe294
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Oct 1 01:15:28 2009 +0000

    Add another MDNode into DebugLocTuple. This will be used to keep track of inlined functions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83190 91177308-0d34-0410-b5e6-96231b3b80d8

commit 539f434334ae6cc5becba8b3099eb20ab7fe48dc
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Oct 1 01:03:26 2009 +0000

    If location info is attached with an instruction then keep track of alloca slots used by a variable. This info will be used by AsmPrinter to emit debug info for variables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83189 91177308-0d34-0410-b5e6-96231b3b80d8

commit 86049dcedaba49929bf6e4c1cd84f9d85cadb987
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 23:12:50 2009 +0000

    Use MachineInstr as an processDebugLoc() argument.
    This will allow processDebugLoc() to handle scopes for DWARF debug info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83183 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4d23d84af58fc21b50dce528a8a26a30a62db355
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 22:51:28 2009 +0000

    Use MDNode * directly as an RecordSourceLine() argument.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83182 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16030402039c222229fe0e64cbc8307964480e31
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 22:43:52 2009 +0000

    Remove dead code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83181 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3733e0ac886bb85bd0735fdee4421683d9be3682
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 22:34:41 2009 +0000

    Add isFOO() helpers. Fix getDirectory() and getFilename() for DIScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83180 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f9b67a27f82ba4d75625c2e260d40cb3b662393
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 22:25:37 2009 +0000

    Use OutStreamer.SwitchSection instead of writing out textual section directives.
    Add a new TargetLoweringObjectFileMachO::getConstTextCoalSection method to
    get access to that section.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83178 91177308-0d34-0410-b5e6-96231b3b80d8

commit b5f835ee6e48aedbffb804a6bf5308465867e67b
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 22:06:26 2009 +0000

    Add a new virtual EmitStartOfAsmFile method to the AsmPrinter and use this
    to emit target-specific things at the beginning of the asm output.  This
    fixes a problem for PPC, where the text sections are not being kept together
    as expected.  The base class doInitialization code calls DW->BeginModule()
    which emits a bunch of DWARF section directives.  The PPC doInitialization
    code then emits all the TEXT section directives, with the intention that they
    will be kept together. But as I understand it, the Darwin assembler treats
    the default TEXT section as a special case and moves it to the beginning of
    the file, which means that all those DWARF sections are in the middle of
    the text.  With this change, the EmitStartOfAsmFile hook is called before
    the DWARF section directives are emitted, so that all the PPC text section
    directives come out right at the beginning of the file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83176 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4901f432e56cb1b6823a9b3170a08ff56f1f2c37
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 21:44:42 2009 +0000

    Fix a comment typo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83174 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c6b6fc5b3777a3001043ba3a5db54ac41f97a1b
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 21:26:51 2009 +0000

    Check for null MDNode element while printing comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83172 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ed4b620633aff7001447bf3ddd86924f8fd7d10
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 21:26:13 2009 +0000

    Fix a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83171 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd8cb7f1e4075f66179e15deb0c0aecaf09fe4be
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 21:24:45 2009 +0000

    The AsmPrinter base class contains a DwarfWriter member, so there's no need
    for derived AsmPrinters to add another one.  In some cases, fixing this
    removes the need to override the doInitialization method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83170 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd36d91b6775ae45eb46eb2a0f4ac47b4a8cb9d8
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Wed Sep 30 21:08:08 2009 +0000

    Assert that ConstantArrays are created with correctly-typed elements.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83168 91177308-0d34-0410-b5e6-96231b3b80d8

commit a6c9ec0753ed03948b49ae3e0d96b87b484ee247
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 30 20:54:16 2009 +0000

    Fix this code so that it doesn't try to iterate through a std::vector
    while calling changeImmediateDominator, which removes elements from the
    vector. This fixes PR5097.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83166 91177308-0d34-0410-b5e6-96231b3b80d8

commit 64ccb3919aa594caf4c2196eed9e72cc9797fe57
Author: Reid Kleckner <reid@kleckner.net>
Date:   Wed Sep 30 20:43:07 2009 +0000

    Silence comparison always false warning in -Asserts mode.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83164 91177308-0d34-0410-b5e6-96231b3b80d8

commit af24317c91a2383560a6707d35ae41f770c05a14
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 20:35:36 2009 +0000

    Add additional assert() to verify no extraneous use of a scavenged register.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83163 91177308-0d34-0410-b5e6-96231b3b80d8

commit 60a7ae26df4ce7d2dac4636e924c29eed0f97df4
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 20:16:54 2009 +0000

    Print tag name for MDNodes that are used to encode debug info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83160 91177308-0d34-0410-b5e6-96231b3b80d8

commit e9b95fd1ebb1f046d17afd0123d7c3afcd4ddef0
Author: Reid Kleckner <reid@kleckner.net>
Date:   Wed Sep 30 20:15:38 2009 +0000

    Fix integer overflow in instruction scheduling.  This can happen if we have
    basic blocks that are so long that their size overflows a short.

    Also assert that overflow does not happen in the future, as requested by Evan.

    This fixes PR4401.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83159 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5a8c00d3394922bbc310fdd6ffb829939de37cd1
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 17:13:41 2009 +0000

    Silence unused variable warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83151 91177308-0d34-0410-b5e6-96231b3b80d8

commit 65a2b9aff1084c5c54afd4577555a5bf3b124114
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 15:23:38 2009 +0000

    Clarify comment phrasing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83148 91177308-0d34-0410-b5e6-96231b3b80d8

commit 140523508f5e2af96e8c01218b4c4fc1c73abcdb
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 30 08:53:01 2009 +0000

    Add a option which would move ld/st multiple pass before post-alloc scheduling.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83145 91177308-0d34-0410-b5e6-96231b3b80d8

commit caa654136388c6b3b1909149a5d9002159983ee1
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 30 08:49:50 2009 +0000

    Add a target hook to add pre- post-regalloc scheduling passes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83144 91177308-0d34-0410-b5e6-96231b3b80d8

commit 28568c1e49f9781afd921e2fbb52b18fb2ec6321
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 30 08:41:27 2009 +0000

    Forgot this test earlier.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83143 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2375debd3ff878723a90be0f69860eae30ace312
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 30 06:27:22 2009 +0000

    add macruby, fix a validation problem.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83142 91177308-0d34-0410-b5e6-96231b3b80d8

commit 133cf876fff85ed26381f2964e5c1de43764a051
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Wed Sep 30 04:50:26 2009 +0000

    Fix compile error as debug interface changed.

    By the way, this code is buggy. You can't keep a map<MDNode *, something>
    because the MDNode may be destroyed and reused for something else.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83141 91177308-0d34-0410-b5e6-96231b3b80d8

commit a0e180ac4672e4a304f93a2d0207428c83de155e
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 01:47:59 2009 +0000

    replace TRI->isVirtualRegister() with TargetRegisterInfo::isVirtualRegister()
    per customary usage

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83137 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce096d7654254793f6df9dcfea8e44345afa42bf
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 01:43:29 2009 +0000

    When checking whether we need to reserve a register for the scavenger,
    the size of the saved frame pointer needs to be taken into account.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83136 91177308-0d34-0410-b5e6-96231b3b80d8

commit c6f0c0268cdad78cdc3b8d4b4ad597d1c3ce7ba2
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 01:35:11 2009 +0000

    Add "isBarrier = 1" to return instructions.

    Patch by Sylvere Teissier.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83135 91177308-0d34-0410-b5e6-96231b3b80d8

commit 25e34f9b00ed6c3b69f77fbec6173ca9071ac793
Author: Jim Grosbach <grosbach@apple.com>
Date:   Wed Sep 30 00:37:40 2009 +0000

    fix compiler warning

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83132 91177308-0d34-0410-b5e6-96231b3b80d8

commit fcadb50767616efc30787f5e5bcbf67b3fc3d7f0
Author: David Goodwin <david_goodwin@apple.com>
Date:   Wed Sep 30 00:23:57 2009 +0000

    Remove regression that requires post-RA scheduling from a target that does not use that scheduler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83128 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5147f1174ae1b6f8af2bc03d8f9915bda2937961
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 30 00:23:42 2009 +0000

    For Darwin, emit all the text section directives together before the dwarf
    section directives.  This causes the assembler to put the text sections at
    the beginning of the object file, which helps work around a limitation of the
    Darwin ARM relocations.  Radar 7255355.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83127 91177308-0d34-0410-b5e6-96231b3b80d8

commit 48e8d7af49d3f3e2cd279c13b8897fcade1801a5
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 30 00:14:40 2009 +0000

    Simplify.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83123 91177308-0d34-0410-b5e6-96231b3b80d8

commit cf89a609bc2c368e2c5c970131edc40c08175893
Author: David Goodwin <david_goodwin@apple.com>
Date:   Wed Sep 30 00:10:16 2009 +0000

    Remove -post-RA-schedule flag and add a TargetSubtarget method to enable post-register-allocation scheduling. By default it is off. For ARM, enable/disable with -mattr=+/-postrasched. Enable by default for cortex-a8.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83122 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3abdd85bbfd3f3f16e7c4551ba86fed9c412ea82
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Sep 30 00:08:25 2009 +0000

    Forward-declare ValueSymbolTable so that SymbolTableListTraits.h can be parsed by itself

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83121 91177308-0d34-0410-b5e6-96231b3b80d8

commit b22cd0ff4c6c3ba4a39b8b11afb21ddf40e79f74
Author: Mike Stump <mrs@apple.com>
Date:   Wed Sep 30 00:08:22 2009 +0000

    Add a way for a frontend to generate more complex dwarf location
    information.  This allows arbitrary code involving DW_OP_plus_uconst
    and DW_OP_deref.  The scheme allows for easy extention to include,
    any, or all of the DW_OP_ opcodes.  I thought about just exposing all
    of them, but, wasn't sure if people wanted the dwarf opcodes exposed
    in the api.  Is that a layering violation?

    With this scheme, the entire existing block scheme used by llvm-gcc
    can be switched over to the new scheme.  I think that would be
    cleaner, as then the compiler specific bits are not present in llvm
    proper.  Before the old code can be yanked however, similar code in
    clang would have to be removed.

    Next up, more testing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83120 91177308-0d34-0410-b5e6-96231b3b80d8

commit 278c839fdb36f39a25935fd83e12144b374d4e75
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 29 23:17:20 2009 +0000

    minor cleanup and add clarifying comment

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83117 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c888f47d45c8b462e23cc270731bff109e55e0f
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 22:05:52 2009 +0000

    Lookup handler name only when assertions are enabled.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83114 91177308-0d34-0410-b5e6-96231b3b80d8

commit 91291d92510d559e84bb36184703684dcd330469
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 20:42:25 2009 +0000

    Add removeMD().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83107 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3402a11ab9fadebbfd897d532e3dd3ec33bc76d5
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 20:30:57 2009 +0000

    Only one custom meadata of each kind can be attached with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83105 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f2144540eebd8dfd6161f7f1e350f7f0cf8fc89
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 29 20:11:10 2009 +0000

    Additional check for regno==0

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83103 91177308-0d34-0410-b5e6-96231b3b80d8

commit 789d5d396510406c9dfbf26b8b5e5ee463f0eb60
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 20:01:19 2009 +0000

    Use assertion instead of early exit to catch malformed custom metadata store.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83102 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50ffdfb9df7dceaba43fd40a1053d22787257fd6
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 19:56:13 2009 +0000

    Remove unnecessary cast.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83100 91177308-0d34-0410-b5e6-96231b3b80d8

commit aaf012ebb492482ba3626e4129140713cd7836b7
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 18:40:58 2009 +0000

    Remove std::string uses from DebugInfo interface.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83083 91177308-0d34-0410-b5e6-96231b3b80d8

commit e4002bc8194a36ff425f37829d6fb04a56ef1358
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 18:39:56 2009 +0000

    Create empty StringRef is incoming cstring is NULL.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83082 91177308-0d34-0410-b5e6-96231b3b80d8

commit 428fa81b068032e70a4df96a9bf95aea8647bae7
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 29 18:23:15 2009 +0000

    Simplify the tracking of virtual frame index registers. Ranges cannot overlap,
    so a simple "current register" will suffice. Also add some additional
    sanity-checking assertions to make sure things are as we expect.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83081 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1261bc74142b823bf80824e5f7e20697cb136747
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 29 17:24:37 2009 +0000

    Moving register scavenging to a post pass results in virtual registers in
    the instruction we're scavenging for. The scavenger needs to know to avoid
    them when analyzing register usage.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83077 91177308-0d34-0410-b5e6-96231b3b80d8

commit d87b736e032e2bb48df5de77b2632197cd89d73f
Author: David Goodwin <david_goodwin@apple.com>
Date:   Tue Sep 29 17:10:26 2009 +0000

    Post-RA regressions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83075 91177308-0d34-0410-b5e6-96231b3b80d8

commit 350c913b054b04ffd2c0041e8cf63d6031cb060b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 29 07:07:30 2009 +0000

    Fix PR4687. Pre ARMv5te does not support ldrd / strd. Patch by John Tytgat.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83058 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c2dc21a880cfd629c485bf65dcc7d8380da234d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 29 06:18:23 2009 +0000

    Regenerate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83052 91177308-0d34-0410-b5e6-96231b3b80d8

commit d5f12fed540b9487fe8a48e7480344ab0c33676d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 29 06:18:00 2009 +0000

    Fix configure bug that only shows up in a clean build. Don't try to invoke gcc
    until after the compiler itself has been set up.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83051 91177308-0d34-0410-b5e6-96231b3b80d8

commit d2813d0d6d353fb32749e66adc03e5a388c6eee2
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 29 05:48:51 2009 +0000

    Roll back r83048.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83050 91177308-0d34-0410-b5e6-96231b3b80d8

commit e4ba4c6918a704922ebaf2dada823423d503fe7a
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 29 05:41:21 2009 +0000

    Regenerate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83048 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6c6df93ec728e0c4109690a0712100f2381002ce
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 29 05:40:45 2009 +0000

    On Linux, uname -m reports the kernel type. Some Linux systems are 32-bit but
    with a 64-bit kernel, which confuses LLVM. Make LLVM double-check this by
    checking which defines the system gcc actually sets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83047 91177308-0d34-0410-b5e6-96231b3b80d8

commit 17c60df1f139b966e696c18683d6fac7afb0d4ac
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 29 00:01:14 2009 +0000

    Parse custom metadata attached with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83033 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8a60e6ab5c0bdebeeb93bf7837306b526c6174cd
Author: Stuart Hastings <stuart@apple.com>
Date:   Mon Sep 28 23:42:38 2009 +0000

    B&I's buildit forces a PATH that omits /Developer.  Temporarily add
    /Developer/usr/bin to the PATH when looking for llvm-gcc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83028 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe70981db2dc986f570f7aeefc6035477e704653
Author: Stuart Hastings <stuart@apple.com>
Date:   Mon Sep 28 22:17:53 2009 +0000

    For B&I-style builds, tweak build_llvm script to prefer LLVM-G++ if
    available.  Override by setting CC and CXX in the environment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83024 91177308-0d34-0410-b5e6-96231b3b80d8

commit e68f04e420b7b2422586e4927db982f30c654e2f
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Sep 28 22:08:06 2009 +0000

    Adjust processFunctionBeforeCalleeSavedScan() to correctly reserve a stack
    slot for the register scavenger when compiling Thumb1 functions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83023 91177308-0d34-0410-b5e6-96231b3b80d8

commit 79af72b8cc78f43bda065f66a27992f14f44839b
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 21:51:41 2009 +0000

    Add C API calls for building FNeg operations. Patch by KS Sreeram!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83021 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6de78e26bd0bb682ac466ae1b46a8a29c9d6ae9c
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Sep 28 21:41:20 2009 +0000

    s/class Metadata/class MetadataContext/g

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83019 91177308-0d34-0410-b5e6-96231b3b80d8

commit b5896160216cae66e3a06cb58c3c38ba09f6969e
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Sep 28 21:14:55 2009 +0000

    Do not use global typedef for MDKindID.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83016 91177308-0d34-0410-b5e6-96231b3b80d8

commit cb8bbe7d7b17bf387769d86e614034a36adc159e
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Mon Sep 28 21:14:38 2009 +0000

    Forgot to update the documentation in r82906. s/DEBUG_RUNTIME/DEBUG_SYMBOLS/.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83015 91177308-0d34-0410-b5e6-96231b3b80d8

commit bb2172f0d0c6dff8c8df6099930aa8c6d97c4a46
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Sep 28 21:06:38 2009 +0000

    Remove unnecessary include.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83013 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6218ff80a55e355aed58ecd5626a28bcba5f2309
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 21:03:02 2009 +0000

    Add a testcase for r83011.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83012 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5de2a439373415252635c44a5441c699c6a9a982
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 21:01:47 2009 +0000

    When extending the operands of an addrec, iterate through all
    the operands, rather than trying to partition them into a start
    and a step. This handles non-affine add recurrences correctly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83011 91177308-0d34-0410-b5e6-96231b3b80d8

commit a1b5c1ac519a42ccf25664de3acee4b97f5c87a0
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Sep 28 20:56:00 2009 +0000

    Do not hardcode metadata names.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83010 91177308-0d34-0410-b5e6-96231b3b80d8

commit 83cefbc8b9b22deae1a74c27b6c3576928ec5e83
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 20:48:39 2009 +0000

    Add a CHECK line to check the position of the second divsd.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83009 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56a506296805c4967326a41bd5b0ae3202ace90f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 28 20:47:15 2009 +0000

    Fix Thumb2 IT block pass bug. t2MOVi32imm may not be the start of a IT block.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83008 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1b17870ccf5ae6abd45044f2788825fa0db381e5
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Mon Sep 28 20:32:46 2009 +0000

    Use KILL instead of IMPLICIT_DEF in LowerSubregs pass.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83007 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8f12c7cd04af1b2eadddf46f00bf9527fa484188
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Mon Sep 28 20:32:26 2009 +0000

    Introduce the TargetInstrInfo::KILL machine instruction and get rid of the
    unused DECLARE instruction.

    KILL is not yet used anywhere, it will replace TargetInstrInfo::IMPLICIT_DEF
    in the places where IMPLICIT_DEF is just used to alter liveness of physical
    registers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83006 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0404c87e5e2d880e347a1e97e97e775534031692
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 18:40:27 2009 +0000

    Add a testcase to help test analysis preservation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83002 91177308-0d34-0410-b5e6-96231b3b80d8

commit 24e32c155493661e8a9a5dbda73cda80d97e5203
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 18:38:53 2009 +0000

    Create a README.txt for lib/Analysis, and add an entry.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83001 91177308-0d34-0410-b5e6-96231b3b80d8

commit d8fdfc78fa6e85af471e6be708819ba7df013613
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Sep 28 18:31:56 2009 +0000

    Remove dead code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82999 91177308-0d34-0410-b5e6-96231b3b80d8

commit c7d0e9d24270f52cdc47b94ebaad316d4fcc2b44
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 16:09:41 2009 +0000

    Use VerifySchedule instead of doing the work manually.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82995 91177308-0d34-0410-b5e6-96231b3b80d8

commit 52646b13f315ad45d6999871491c804a5ba706df
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 15:40:01 2009 +0000

    Fix this debug output to handle the case where the loop has been deleted.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82994 91177308-0d34-0410-b5e6-96231b3b80d8

commit 05e9fccefe7b54166c82415d0d2ab497a22eecb4
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 15:07:18 2009 +0000

    Include the name of the loop header in debug messages.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82993 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2dac97890a66877e9f433d75b0f31f07df2ef84a
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 14:38:19 2009 +0000

    Remove a redundant #ifndef and add an assertion string.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82991 91177308-0d34-0410-b5e6-96231b3b80d8

commit b65091d85c1c7a467ecf0622747900e54012b2fb
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 14:37:51 2009 +0000

    Convert LoopSimplify and LoopExtractor from FunctionPass to LoopPass.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82990 91177308-0d34-0410-b5e6-96231b3b80d8

commit f4ecc68efa92c06e2de1937f2a6408f57318ee3f
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Sep 28 14:30:20 2009 +0000

    Pass the optimization level when constructing the ARM instruction selector.
    Otherwise, it is always set to "default", which prevents debug info from
    even being generated during isel.  Radar 7250345.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82988 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16c012d9a28fe4db3ee081192a587ad7f30d4cc2
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 28 09:14:39 2009 +0000

    Make ARM and Thumb2 32-bit immediate materialization into a single 32-bit pseudo
    instruction. This makes it re-materializable.

    Thumb2 will split it back out into two instructions so IT pass will generate the
    right mask. Also, this expose opportunies to optimize the movw to a 16-bit move.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82982 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4468959a4eab134d4ca50b755aac6452617e8857
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 28 07:32:45 2009 +0000

    Don't traverse into .svn directories.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82978 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe89b6a96501aabf8edbd991e9fb81108ecde782
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Mon Sep 28 07:26:46 2009 +0000

    Fix thinko in my recent movt commit: it's not safe to remat movt, since it has input reg argument.
    Disable rematting of it for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82975 91177308-0d34-0410-b5e6-96231b3b80d8

commit da3ee9ce1a46cf351e614a6c17627b63cec9b2b4
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 28 06:49:44 2009 +0000

    The select instruction is not neccesarily in the same block as the
    phi nodes.  Make sure to phi translate from the right block.

    This fixes a llvm-building-llvm failure on GVN-PRE.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82970 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58cb38c09d1b7e0e8c27d56ac94a524552ef436c
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 28 05:28:43 2009 +0000

    Coalescer should not delete extract_subreg, insert_subreg, and subreg_to_reg of
    physical registers. This is especially critical for the later two since they
    start the live interval of a super-register. e.g.
    %DO<def> = INSERT_SUBREG %D0<undef>, %S0<kill>, 1
    If this instruction is eliminated, the register scavenger will not be happy as
    D0 is not defined previously.
    This fixes PR5055.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82968 91177308-0d34-0410-b5e6-96231b3b80d8

commit b4cf975e89642255701b2f279b1647caf430947c
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Mon Sep 28 04:42:55 2009 +0000

    Document a bug in the ocaml bindings has wrong linkage values.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82966 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61c452d71b139822208536338069d2bc7d464256
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Mon Sep 28 04:42:47 2009 +0000

    Expose the rest of the attribute settings.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82965 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1dc7c1fc51b4268897da277fffbac812cce94e66
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Mon Sep 28 04:42:36 2009 +0000

    Fix a bug in ocaml bindings that has incorrect linkage options.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82964 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6625665544615314e66cbf54fe4b529a6dcd9441
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Sep 28 01:28:26 2009 +0000

    Regenerate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82958 91177308-0d34-0410-b5e6-96231b3b80d8

commit d42557f9880111a13da39570d5e47e69e72648df
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Sep 28 01:16:42 2009 +0000

    Add a way to query the number of input files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82957 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c3e02c66a2ac85384c3d7a84a02a60aa71ea591
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Sep 28 01:16:07 2009 +0000

    Document the 'not' combinator.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82956 91177308-0d34-0410-b5e6-96231b3b80d8

commit c93d3814ca1727b694a4ac3b88a7979f61915ff7
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Sep 28 01:15:44 2009 +0000

    A bit prettier formatting.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82955 91177308-0d34-0410-b5e6-96231b3b80d8

commit e414c1e0cd9d1c1e0e650c5710c3df04bf707762
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 00:44:15 2009 +0000

    Remove temporary debugging hack.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82953 91177308-0d34-0410-b5e6-96231b3b80d8

commit 07fbbcdcfb6812cd5986ccc0188b293a8d01e961
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 00:27:48 2009 +0000

    Move the dominator verification code out of special code embedded within
    the PassManager code into a regular verifyAnalysis method.

    Also, reorganize loop verification. Make the LoopPass infrastructure
    call verifyLoop as needed instead of having LoopInfo::verifyAnalysis
    check every loop in the function after each looop pass. Add a new
    command-line argument, -verify-loop-info, to enable the expensive
    full checking.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82952 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f7ba836613f713ff32349e1c08c152d0803100b
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 00:10:28 2009 +0000

    Move this assert to check the condition as soon as it is known.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82951 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7265f0826dddbc1d46ad1df769a99fc81c4adfe3
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 28 00:07:05 2009 +0000

    Extend the StartPassTimer and StopPassTimer functions so that the
    code that stops the timer doesn't have to search to find the timer
    object before it stops the timer. This avoids a lock acquisition
    and a few other things done with the timer running.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82949 91177308-0d34-0410-b5e6-96231b3b80d8

commit 609289558295a0f4a1f6529c14ffe96db547ec41
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sun Sep 27 23:52:58 2009 +0000

    Use movt/movw pair to materialize 32 bit constants on ARMv6T2+.
    This should be better than single load from constpool.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82948 91177308-0d34-0410-b5e6-96231b3b80d8

commit ee836a04ed5b6c302790bf4db303d04e17d48dfd
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 23:52:07 2009 +0000

    Fix an old copy+pasto.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82947 91177308-0d34-0410-b5e6-96231b3b80d8

commit a86280282a7ddd9df2015d13012ad229ccfcd383
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 23:49:43 2009 +0000

    Extract the code for inserting a loop into the loop queue into
    a separate function.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82946 91177308-0d34-0410-b5e6-96231b3b80d8

commit 72a3f38563c08ff695f37880ca47a0212d5eef8f
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 23:43:07 2009 +0000

    When a loop is deleted, immediately release all of the active
    LoopPasses for that loop. This avoids trouble with the PassManager
    trying to call verifyAnalysis on them, and frees up some memory
    sooner rather than later.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82945 91177308-0d34-0410-b5e6-96231b3b80d8

commit a27e7c0803f1ec6bd2b58dce5df419100c761c52
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 23:38:27 2009 +0000

    Extract the code for releasing a pass into a separate function, and
    tidy it up a little.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82944 91177308-0d34-0410-b5e6-96231b3b80d8

commit eb02188cd3e0b830856c05e6136523731ffa68f2
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 23:27:42 2009 +0000

    Remove the "metadata*" type and simplify the code it complicated. This was only
    used to support GlobalVariables storing MDNodes, back when they were derived
    from Constant before the introduction of NamedMDNode, but never removed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82943 91177308-0d34-0410-b5e6-96231b3b80d8

commit 49545c765c8fc928bcda29e4f87533aced3c808f
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 23:17:47 2009 +0000

    LBRX no longer has an explicit SrcValueSDNode operand, so the type
    operand is now at index 2, rather than 3. This fixes the
    "Invalid child # of SDNode!" failures on PowerPC.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82942 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1d1bc8e896031decb3ec0a78b58b76dc7607a840
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:46:50 2009 +0000

    simplify some code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82936 91177308-0d34-0410-b5e6-96231b3b80d8

commit e8ad9aecbfae9799fb3cef18c8ecc4e9bfc8a735
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:42:46 2009 +0000

    The bitcast case is not needed here: instcombine turns icmp(bitcast(x), null) -> icmp(x, null) already.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82935 91177308-0d34-0410-b5e6-96231b3b80d8

commit a475d661a350f7956630f0b989c7f6aa838090c4
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 21:39:46 2009 +0000

    New unit test for the cloning module, which so far only covers cloning of
    instructions' optimization flags.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82934 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d1f8e4df0a7deddf1b2ee380793bd32b7c815d2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:36:19 2009 +0000

    calls are already unmovable, malloc doesn't need a special case.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82933 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ad04a09b7acbcc532f109c8521281124df47cf6
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:35:11 2009 +0000

    calls to external functions are already marked overdefined, special casing
    malloc isn't needed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82932 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35b69d45dd8e3d9b38f8377ec723d37bd458b5c4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:33:46 2009 +0000

    calls are already handled, malloc doesn't need a special case.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82931 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7805c35a30b6b119e2c4b2bfd54aa484752eeef8
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 21:33:04 2009 +0000

    Round out the API for the new optimization flags.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82930 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0a3e013c33b6cb73b01a63d5568373be55186e04
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:31:39 2009 +0000

    calls are rejected above, no need to special case malloc here.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82929 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47fe1012616c84ce6211a298f822462db8dda2ef
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:29:28 2009 +0000

    remove special handling of bitcast(malloc), it will be handled
    when the loop inspects the bitcast operand.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82928 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4e577c0241756a4d6350c2c310c0cb96a3ecee5e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:23:38 2009 +0000

    unlike the malloc instruction, "malloc" calls do not claim to be readonly, just nounwind.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82927 91177308-0d34-0410-b5e6-96231b3b80d8

commit eb3c9102ab9db6cfde207964f78e34ceca63c57b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 21:16:52 2009 +0000

    add a new DirectiveMap stringmap, which allows more efficient dispatching
    to directive handlers and allows for easier extensibility.

    I only switched a few over for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82926 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7a54febb0063e0862aee2a084a627bb029779498
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 20:58:01 2009 +0000

    Link order: it matters.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82925 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9b61abd17da1bff8720e5bfbb02c98fec3212ad2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 20:46:36 2009 +0000

    allow pushing icmps through phis with multiple uses and across critical edges.
    These are important to push up to encourage jump threading.  This shrinks 176.gcc a bit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82923 91177308-0d34-0410-b5e6-96231b3b80d8

commit ff5cd9de8438a1fbe450b5d0b31a9ae3a0a5fbc5
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 20:18:49 2009 +0000

    Enhance the previous fix for PR4895 to allow more values than just
    simple constants for the true/false value of the select.  We now
    do phi translation etc.  This really fixes PR4895 :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82917 91177308-0d34-0410-b5e6-96231b3b80d8

commit f7843b77d709006cc6e93938f396a2aaf9dcd994
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 19:57:57 2009 +0000

    implement PR4895, by making FoldOpIntoPhi handle select conditions
    that are phi nodes.  Also tighten up FoldOpIntoPhi to treat constantexpr
    operands to phis just like other variables, avoiding moving constantexpr
    computations around.

    Patch by Daniel Dunbar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82913 91177308-0d34-0410-b5e6-96231b3b80d8

commit de228ff38a94da4f7b64b2eed20195730bc565b9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 19:38:39 2009 +0000

    avoid copying MCAsmInfo by value, add an (extremely low prio) fixme.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82911 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4c2770bd33b6ce5587a1226d52a77a2ad5a3f345
Author: Tilmann Scheller <tilmann.scheller@googlemail.com>
Date:   Sun Sep 27 17:58:47 2009 +0000

    Use explicit structs instead of std::pair to map callee saved regs to spill slots.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82909 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2a918d684b96d027630a6b65cc61a7dace0d8fd1
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 17:50:44 2009 +0000

    Delete a bogus comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82908 91177308-0d34-0410-b5e6-96231b3b80d8

commit bbd99f3f67dcd426cc675998c95f3a119b13b42a
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 17:48:37 2009 +0000

    Remove a redundant assert.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82907 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed62bf33bce67ff2da6a8181428f48b2e4db03aa
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sun Sep 27 17:47:29 2009 +0000

    Enable -g with DEBUG_SYMBOLS and --enable-debug-symbols instead of
    DEBUG_RUNTIME.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82906 91177308-0d34-0410-b5e6-96231b3b80d8

commit d9bf0112734209c3d98a574bdb672f2928d6ee08
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 17:46:40 2009 +0000

    Fix SCEVExpander's canonical addrec expansion code to work on loops that
    aren't in canonical loop-simplify form, since it doesn't itself depend
    on LoopSimplify. This means handling loops without preheaders and loops
    with multiple backedges.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82905 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ba2142e9397002278f4275ffbae6caa28342607
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 17:39:12 2009 +0000

    Add dominates and releaseMemory member functions to PostDominatorTree.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82904 91177308-0d34-0410-b5e6-96231b3b80d8

commit 791c8251355c2f25f39685a7deab22560793c6fa
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 16:10:30 2009 +0000

    Grab an LLVM Context from an instruction that exists rather than one
    that is deleted in some situations. This fixes a use-after-free.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82903 91177308-0d34-0410-b5e6-96231b3b80d8

commit fecf86a40e1d27384518d37c51470352b7c5bd91
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:41:19 2009 +0000

    Clarify a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82902 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7936cb8d152d2881952b0013355cbda15e57b99a
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:37:03 2009 +0000

    Tell ScalarEvolution to forget everything it knows about a loop before
    rotating the loop, since loop rotation is a very significant change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82901 91177308-0d34-0410-b5e6-96231b3b80d8

commit 397d89ff4449862390e51f261b77f7570a95b563
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:32:21 2009 +0000

    Micro-optimize DerivedType::dropAllTypeUses.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82900 91177308-0d34-0410-b5e6-96231b3b80d8

commit 12319f23b7e7eae3c45b6a56afede0d6d88c4d6b
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:30:00 2009 +0000

    Instead of testing whether an instruction dominates the loop preheader,
    test whether it properly dominates the loop header. This is equivalent
    when the loop has a preheader, and has the advantage of working when
    the loop doesn't have a preheader. Since IVUsers doesn't Require
    LoopSimplify, the loop isn't guaranteed to have a preheader.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82899 91177308-0d34-0410-b5e6-96231b3b80d8

commit 322a984dddfb491b560d582f03b6fc7f1122bdad
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:26:03 2009 +0000

    Add a properlyDominates member function to ScalarEvolution.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82898 91177308-0d34-0410-b5e6-96231b3b80d8

commit b69db8035d9b7354a43b912ee10dc9e29006f3be
Author: Dan Gohman <gohman@apple.com>
Date:   Sun Sep 27 15:21:52 2009 +0000

    Remove a redundant #include.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82897 91177308-0d34-0410-b5e6-96231b3b80d8

commit 127f2c5637e7bcfda31bdb7a313726eeedb8a3ea
Author: Edwin Török <edwintorok@gmail.com>
Date:   Sun Sep 27 11:08:03 2009 +0000

    Avoid using mutex locks if not in multithreaded mode by using a SmartScopedMutex
    in RegisterStatistic.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82896 91177308-0d34-0410-b5e6-96231b3b80d8

commit 340684f156c06a256649f09657a198653fbe8881
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sun Sep 27 09:46:04 2009 +0000

    Enable pre-regalloc load / store multiple pass for Thumb2.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82893 91177308-0d34-0410-b5e6-96231b3b80d8

commit b9cb1867e50c19f73e6325a34880f259263e843e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 08:01:44 2009 +0000

    rename REG -> REGISTER to make it explicit in the doc.  <tt>ify some stuff.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82892 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8599166fed9834e8ba77289f61214bfd9a050b20
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 27 07:56:52 2009 +0000

    implement and document support for filecheck variables.  This
    allows matching and remembering a string and then matching and
    verifying that the string occurs later in the file.

    Change X86/xor.ll to use this in some cases where the test was
    checking for an arbitrary register allocation decision.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82891 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3b3b54d35e1e9f0089c7efdca231a04c77e7d061
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 07:55:32 2009 +0000

    Remove dead code from this function and optimize. Update its corresponding
    LangRef entry too.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82890 91177308-0d34-0410-b5e6-96231b3b80d8

commit c94270c382320cb3fe9c4dc7bf31d56c94e9643d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 07:38:41 2009 +0000

    Instruction::clone does not need to take an LLVMContext&. Remove that and
    update all the callers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82889 91177308-0d34-0410-b5e6-96231b3b80d8

commit ebb9633af0245a3eaf03d2a9f4ceb6375cc8769e
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 06:25:05 2009 +0000

    Filecheckify this one test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82888 91177308-0d34-0410-b5e6-96231b3b80d8

commit b7b9a48e7b9695ec1dd8d39297658aa020ff77ca
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 04:57:35 2009 +0000

    Leave a pointer to the documentation so that people don't end up change one but
    not the other in the future.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82887 91177308-0d34-0410-b5e6-96231b3b80d8

commit 985d6d15ded32550f7c29aa7f61efd3621562558
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 04:56:27 2009 +0000

    Correct the version numbers to match those actually tested for by
    autoconf/AutoRegen.sh.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82886 91177308-0d34-0410-b5e6-96231b3b80d8

commit 244cf489295b4fed69591a3c4f6404875d0d38ca
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 27 00:45:11 2009 +0000

    Move the integer type out of 'derived' and into 'primitive'. This permits us
    to explain that derived types are all composed of other types, which primitive
    types aren't. Without moving integer out of derived, this wouldn't be true.

    Perform a few trivial cleanups; 'i1' went from a link to #t_primitive to
    #t_integer (a holdover from when it was a bool type I suppose).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82884 91177308-0d34-0410-b5e6-96231b3b80d8

commit aa2637b6ad3234e068167af31981d688f54191b0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 26 21:27:04 2009 +0000

    remove support for "NoSub" from regex.  It seems like a minor optimization
    and makes the API more annoying.  Add a Regex::getNumMatches() method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82877 91177308-0d34-0410-b5e6-96231b3b80d8

commit e29707fa8162a0dd61380c9ca6e92a47dcb87170
Author: Edwin Török <edwintorok@gmail.com>
Date:   Sat Sep 26 20:18:58 2009 +0000

    Speed up clang-only link, by really linking only clang, and not the unittests
    too.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82873 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7714ad64800f0e4c645ed922455ce09a71686538
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 26 18:51:37 2009 +0000

    Remove this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82869 91177308-0d34-0410-b5e6-96231b3b80d8

commit c156b7b4c9323f464900e6316b97661143631a6a
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 18:10:13 2009 +0000

    Fix SimplifyLibCalls to transfer attributes from callees rather than
    calls, since direct calls don't always reflect the attributes of their
    callees.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82867 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5a1645e66706ac33ae463ef43e6328eb5b4ec309
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 16:11:57 2009 +0000

    Fix a case where ScalarEvolution was expanding pointer arithmetic
    to inttoptr/ptrtoint unnecessarily.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82864 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1261dde02801ca06f9e8001747eab7fd244fa3f4
Author: Duncan Sands <baldrick@free.fr>
Date:   Sat Sep 26 15:35:35 2009 +0000

    For the NSWSub support in the builder to actually be useable,
    there need to be corresponding changes to the constant folders,
    done in this patch.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82862 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2221f5657297e8c645617e7304d360aceda1b409
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 15:24:17 2009 +0000

    Convert comparisons like (x == infinity) to (x >= infinity) on targets
    where FCMP_OEQ is not legal and FCMP_OGE is, such as x86.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82861 91177308-0d34-0410-b5e6-96231b3b80d8

commit b2b6ab5a11661fd22b5020a1175ca3715b02a509
Author: Duncan Sands <baldrick@free.fr>
Date:   Sat Sep 26 15:21:48 2009 +0000

    Add methods for creating NSW subtraction, as already exists
    for addition.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82860 91177308-0d34-0410-b5e6-96231b3b80d8

commit 01d166b12f2eed6b31154b48f3f94c45e0b0977f
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 15:09:53 2009 +0000

    Add a comment describing natural loops.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82859 91177308-0d34-0410-b5e6-96231b3b80d8

commit a7468751ace00baa201c34277c85ae20a896dd90
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 26 05:29:36 2009 +0000

    "Update" tests for -disable-if-conversion removal. I think branch.ll should just
    be removed, but I XFAIL'd it for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82847 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0e367e3f0866e9f690b307b4feefaec8d4a3bdfb
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 26 02:49:49 2009 +0000

    Really remove this option.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82838 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2bb61fd9699873daeba366e97019d660c4006ca
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 26 02:45:45 2009 +0000

    Remove a couple of unused command line options.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82837 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7f4c4564fc1f3955b136a050941b236467fca747
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 26 02:43:36 2009 +0000

    Add comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82836 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4c1d7673235202816e1027e08eb16cf6123fe1a4
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 26 02:41:17 2009 +0000

    Convert test to filecheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82835 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7da0592edfecaac630500ce491f7e339d416be60
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 02:34:00 2009 +0000

    Don't hoist or sink instructions with physreg uses if the physreg is
    allocatable. Even if it doesn't appear to have any defs, it may latter
    on after register allocation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82834 91177308-0d34-0410-b5e6-96231b3b80d8

commit 40dcae418d4fb290bedfd5a22eb9a63c40c1dc84
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 26 01:11:57 2009 +0000

    I put the wrong rdar number in this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82829 91177308-0d34-0410-b5e6-96231b3b80d8

commit 13b1ad6276483958045c11cb589586e0fb0959ed
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 23:58:45 2009 +0000

    Unbreak MachineLICM for instructions that reference RIP on x86-64 too.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82825 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6408b97d7cfea3250c4ada4d8ad08188d68cb9c0
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 23:40:21 2009 +0000

    Rename ConstantFP's getInf to getInfinity.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82823 91177308-0d34-0410-b5e6-96231b3b80d8

commit 232e4448242ec67d6a7b48906002ab7c3f7af96c
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 23:33:20 2009 +0000

    Move MachineMemOperand::getAlignment out of line, to avoid needing
    MathExtras.h in MachineMemOperand.h.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82822 91177308-0d34-0410-b5e6-96231b3b80d8

commit 75b79e54a4fd0ea94c2bc91ab7ac3c6248d1af5c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 25 23:26:56 2009 +0000

    Remove unused variable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82821 91177308-0d34-0410-b5e6-96231b3b80d8

commit b99d6f9e77125bd9ebf9ebe6df0050b974b8aa5e
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 23:10:17 2009 +0000

    Transform pow(x, 0.5) to (x == -inf ? inf : fabs(sqrt(x))), which is
    typically faster then doing a general pow.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82819 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43dcfc7462c5602f9f840c6905f905b63a1d8937
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 23:00:48 2009 +0000

    Add a ConstantFP::getInf utility function for creating infinity ConstantFPs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82818 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5dedd5c716f4c2741afd8ac264d5e4e09adbcf1b
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 22:53:29 2009 +0000

    Fix MachineSink to be able to sink instructions that use physical registers
    which have no defs anywhere in the function. In particular, this fixes sinking
    of instructions that reference RIP on x86-64, which is currently being modeled
    as a register.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82815 91177308-0d34-0410-b5e6-96231b3b80d8

commit e222c72bba42281674d39d3d33dd75fb8f926ce5
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Sep 25 22:53:17 2009 +0000

    Regenerate

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82814 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd623a83da8cc21ab3fd2ec6175041ee68f5171d
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Sep 25 22:52:29 2009 +0000

    Provide proper masks for neon perfect shuffle table.
    I definitely need to read documentation better :(

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82813 91177308-0d34-0410-b5e6-96231b3b80d8

commit 04abe740fc7391473a417d498535eed8fd834a4b
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 22:26:13 2009 +0000

    Simplify a few more uses of reg_iterator.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82812 91177308-0d34-0410-b5e6-96231b3b80d8

commit 282a4ab6f595a493b5fe6cdd36ff9673454e1f16
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 22:24:52 2009 +0000

    Simplify this code by using use_iterator instead of reg_iterator
    and skipping the defs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82811 91177308-0d34-0410-b5e6-96231b3b80d8

commit 65561df4eb4eb52ebf75755e9f9eafa36929fa0e
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 25 21:44:53 2009 +0000

    Code clean up and prepare for Thumb2 support. No functionality changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82805 91177308-0d34-0410-b5e6-96231b3b80d8

commit c9122db8146cea80861ecaac6566ae8f75ed2497
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 25 21:38:11 2009 +0000

    Flip -disable-post-RA-scheduler to -post-RA-scheduler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82803 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41a338b1690f69bf6f35349e064e6c2543b15a6a
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Fri Sep 25 21:07:20 2009 +0000

    Fix a compile failure introduced by r82675 on MinGW which doesn't have
    setenv().  This patch just disables the test rather than getting putenv() to
    work.  Thanks to Sandeep Patel for reporting the problem.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82797 91177308-0d34-0410-b5e6-96231b3b80d8

commit c78858514eb50d76bd73ca360f58971ff9bc4ac4
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 25 20:54:50 2009 +0000

    Handle sqrt in CannotBeNegativeZero.  absf and absl
    appear to be misspellings, removed in favor of fabs*.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82796 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4e3bb1bc735783b73f2dcca82c86b7faca1a87e8
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 20:36:54 2009 +0000

    Improve MachineMemOperand handling.
     - Allocate MachineMemOperands and MachineMemOperand lists in MachineFunctions.
       This eliminates MachineInstr's std::list member and allows the data to be
       created by isel and live for the remainder of codegen, avoiding a lot of
       copying and unnecessary translation. This also shrinks MemSDNode.
     - Delete MemOperandSDNode. Introduce MachineSDNode which has dedicated
       fields for MachineMemOperands.
     - Change MemSDNode to have a MachineMemOperand member instead of its own
       fields with the same information. This introduces some redundancy, but
       it's more consistent with what MachineInstr will eventually want.
     - Ignore alignment when searching for redundant loads for CSE, but remember
       the greatest alignment.

    Target-specific code which previously used MemOperandSDNodes with generic
    SDNodes now use MemIntrinsicSDNodes, with opcodes in a designated range
    so that the SelectionDAG framework knows that MachineMemOperand information
    is available.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82794 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61fda0d889b3578fe435455679182c231a649aac
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 18:54:59 2009 +0000

    Rename getTargetNode to getMachineNode, for consistency with the
    naming scheme used in SelectionDAG, where there are multiple kinds
    of "target" nodes, but "machine" nodes are nodes which represent
    a MachineInstr.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82790 91177308-0d34-0410-b5e6-96231b3b80d8

commit 36bff0c1f84aa517c66320c6864e4443e818e574
Author: David Goodwin <david_goodwin@apple.com>
Date:   Fri Sep 25 18:38:29 2009 +0000

    Finish scheduling itineraries for NEON.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82788 91177308-0d34-0410-b5e6-96231b3b80d8

commit ba159cf257a14d31d2dbbe8b52e934c9f8af85fb
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 25 18:15:29 2009 +0000

    Add readonly to some sin and cos calls; transformations
    being checked aren't valid without it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82786 91177308-0d34-0410-b5e6-96231b3b80d8

commit 131e0fcf808340c24aa7f519b7108121142a9b4b
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Sep 25 18:11:52 2009 +0000

    Revert 82694 "Auto-upgrade malloc instructions to malloc calls." because it causes regressions in the nightly tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82784 91177308-0d34-0410-b5e6-96231b3b80d8

commit bccd219ac7eb590d369f9bda03ade6467aa49e24
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 25 18:00:35 2009 +0000

    Make sure sin, cos, sqrt calls are marked readonly
    before producing FSIN, FCOS, FSQRT.  If they aren't
    so marked we have to assume they might set errno.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82781 91177308-0d34-0410-b5e6-96231b3b80d8

commit e2bc7c2439c37d883c22dd27c87301a4e2c935b3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 17:29:36 2009 +0000

    reject attempts to use ()'s in patterns, these are reserved for filecheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82780 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce89de231525a80c137a1de88fb8d0467c6ce973
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 17:23:43 2009 +0000

    reimplement the regex matching strategy by building a single
    regex and matching it instead of trying to match chunks at a time.
    Matching chunks at a time broke with check lines like
      CHECK: foo {{.*}}bar
    because the .* would eat the entire rest of the line and bar would
    never match.

    Now we just escape the fixed strings for the user, so that something
    like:
      CHECK: a() {{.*}}???
    is matched as:
      CHECK: {{a\(\) .*\?\?\?}}
    transparently "under the covers".

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82779 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8891e4478909879ca4f4e745312b542cc8aca7e6
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 25 17:23:22 2009 +0000

    Generate FSQRT from calls to the sqrt function, which
    allows appropriate backends to generate a sqrt instruction.

    On x86, this isn't done at -O0 because we go through
    FastISel instead.  This is a behavior change from before
    this series of sqrt patches started.  I think this is OK
    considering that compile speed is most important at -O0, but
    could be convinced otherwise.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82778 91177308-0d34-0410-b5e6-96231b3b80d8

commit f6f6363c80e0e1fd4ff8e20a8f259d1e66310a1f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 17:09:12 2009 +0000

    special case Patterns that are a single fixed string.  This is a microscopic
    perf win and is needed for future changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82777 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4730cd3d31451fb62c8c8401cceee4439b7c1626
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 25 17:04:42 2009 +0000

    Revise C library functions description to be vaguer, per Chris.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82776 91177308-0d34-0410-b5e6-96231b3b80d8

commit e2de471c77ff3baeac8e535fffc28de1e57799a9
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Fri Sep 25 16:46:09 2009 +0000

    This patch causes the --enable-debug-runtime configure flag and the
    DEBUG_RUNTIME Makefile variable to pass -g to gcc when building LLVM's objects.
    Without this, it's very hard to debug crashes that happen in Release-Asserts
    mode but not Debug mode.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82775 91177308-0d34-0410-b5e6-96231b3b80d8

commit e55e52532c4a76b7ec83e530e3fe3b0bc0b8c00c
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 25 16:34:46 2009 +0000

    Add some comments to clarify things that I discovered this week.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82773 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd4cb23f6a5954a3fff1afe6f807c02eab8910e9
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 25 16:04:21 2009 +0000

    Make llvm-bcanalyzer percentages more readable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82772 91177308-0d34-0410-b5e6-96231b3b80d8

commit 14a16fee44fce77ae10d7144e547b7b8bed872b6
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 25 16:03:57 2009 +0000

    Strip trailing whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82771 91177308-0d34-0410-b5e6-96231b3b80d8

commit c1c8b5e19b33c8b5e52c4b516669181f18feb98e
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 25 14:41:49 2009 +0000

    pr4926: ARM requires the stack pointer to be aligned, even for leaf functions.
    For the AAPCS ABI, SP must always be 4-byte aligned, and at any "public
    interface" it must be 8-byte aligned.  For the older ARM APCS ABI, the stack
    alignment is just always 4 bytes.  For X86, we currently align SP at
    entry to a function (e.g., to 16 bytes for Darwin), but no stack alignment
    is needed at other times, such as for a leaf function.

    After discussing this with Dan, I decided to go with the approach of adding
    a new "TransientStackAlignment" field to TargetFrameInfo.  This value
    specifies the stack alignment that must be maintained even in between calls.
    It defaults to 1 except for ARM, where it is 4.  (Some other targets may
    also want to set this if they have similar stack requirements. It's not
    currently required for PPC because it sets targetHandlesStackFrameRounding
    and handles the alignment in target-specific code.) The existing StackAlignment
    value specifies the alignment upon entry to a function, which is how we've
    been using it anyway.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82767 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8c417db6fa3361d12502438264a66352a8fd6531
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Sep 25 12:28:37 2009 +0000

    Print INST_INBOUNDS_GEP rather than UnknownCode30.
    Likewise for constant inbounds GEP.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82763 91177308-0d34-0410-b5e6-96231b3b80d8

commit d777d83398260186ab5744a6eb01e55e3d8757fd
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 06:49:41 2009 +0000

    convert testcases to filecheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82759 91177308-0d34-0410-b5e6-96231b3b80d8

commit d33999c4a5ccdb8cd555477e51987ce6c3ed1f04
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 06:47:09 2009 +0000

    filecheck should not match a \n with a .

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82758 91177308-0d34-0410-b5e6-96231b3b80d8

commit 57f2699a01d2bf5a7544da99676c612955bbd05f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 06:37:22 2009 +0000

    remove a large unreduced testcase

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82756 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8527c712c7db0d0f0a31c225024bbef3f2dde62d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 25 06:32:47 2009 +0000

    turn a std::pair into a real class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82754 91177308-0d34-0410-b5e6-96231b3b80d8

commit aec69ee8287d0ac26b45fb20240af79e5497ef01
Author: Nate Begeman <natebegeman@mac.com>
Date:   Fri Sep 25 06:05:26 2009 +0000

    Fix combiner-aa issue with bases which are different, but can alias.
    Previously, it treated GV+28 GV+0 as different bases, and assumed they could
    not alias.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82753 91177308-0d34-0410-b5e6-96231b3b80d8

commit cbaa5bdd135396a097a648574a6706eec224e5ec
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 25 05:30:55 2009 +0000

    Update the description of MachineFrameInfo's OffsetAdjustment.  The value of
    this adjustment does not change the direction or the signs of the object
    offsets, and the details of the offset calculations can be target-specific.
    Also mention that for most targets this value is only used to generate debug
    info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82750 91177308-0d34-0410-b5e6-96231b3b80d8

commit 06d175346442b0b31427d8806d5022c3248bf674
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 00:57:30 2009 +0000

    Don't try to use pre-indexed addressing with sthbrx/stwbrx
    instructions. This fixes a PowerPC bug exposed by some unrelated
    changes I'm working on.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82743 91177308-0d34-0410-b5e6-96231b3b80d8

commit 594bb86a065af025a8fd90ef486d9f54fb869f95
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 25 00:34:34 2009 +0000

    Add a version of dumpr() that has a SelectionDAG* argument.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82742 91177308-0d34-0410-b5e6-96231b3b80d8

commit abd0e3ddaf34e1589bae68eecb9fcfb7f14ac297
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Sep 24 23:52:18 2009 +0000

    Start of revamping the register scavenging in PEI. ARM Thumb1 is the driving
    interest for this, as it currently reserves a register rather than using
    the scavenger for matierializing constants as needed.

    Instead of scavenging registers on the fly while eliminating frame indices,
    new virtual registers are created, and then a scavenged collectively in a
    post-pass over the function. This isolates the bits that need to interact
    with the scavenger, and sets the stage for more intelligent use, and reuse,
    of scavenged registers.

    For the time being, this is disabled by default. Once the bugs are worked out,
    the current scavenging calls in replaceFrameIndices() will be removed and
    the post-pass scavenging will be the default. Until then,
    -enable-frame-index-scavenging enables the new code. Currently, only the
    Thumb1 back end is set up to use it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82734 91177308-0d34-0410-b5e6-96231b3b80d8

commit f47ed3b170f267cc8eb18d841e16fc60e900e9bf
Author: Dale Johannesen <dalej@apple.com>
Date:   Thu Sep 24 23:37:40 2009 +0000

    Reenable sqrt IR generation test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82731 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2fd84e281e90d309c22639a7ba9585871050e777
Author: Mike Stump <mrs@apple.com>
Date:   Thu Sep 24 23:21:26 2009 +0000

    Delete space after function name, before (, reflow a comment and
    delete a few blank lines.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82729 91177308-0d34-0410-b5e6-96231b3b80d8

commit cf991836d66fafd16a28b20a04bbff143c99e700
Author: Mike Stump <mrs@apple.com>
Date:   Thu Sep 24 23:11:08 2009 +0000

    Fix spacing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82727 91177308-0d34-0410-b5e6-96231b3b80d8

commit f55e81bef95886581ceb0597e7e6c4838e5cf002
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 21:47:32 2009 +0000

    add and document regex support for FileCheck.  You can now do stuff like:

    ; CHECK: movl {{%e[a-z][xi]}}, %eax

    or whatever.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82717 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2255c43ab2731fee0d00702175336d4b42ba9e0e
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 21:45:57 2009 +0000

    unconditionally request MMI

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82716 91177308-0d34-0410-b5e6-96231b3b80d8

commit c77786ebfb8a4dcf223031c7140e454fad3aa702
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 21:44:20 2009 +0000

    wrap long lines.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82715 91177308-0d34-0410-b5e6-96231b3b80d8

commit edc81f3d96a63163abf9f4b17eb9fdc8068cd9cf
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 20:45:07 2009 +0000

    Use CanonicalizeInputFile to canonicalize the entire buffer containing the
    CHECK strings, instead of canonicalizing the patterns directly.  This allows
    Pattern to just contain a StringRef instead of std::string.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82713 91177308-0d34-0410-b5e6-96231b3b80d8

commit bbb96e5913e916ab74cd4cec3ec40e8fa9942dda
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 20:39:13 2009 +0000

    change 'not' matching to use Pattern, move pattern parsing logic into
    the Pattern class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82712 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5ee02f11e57a367a7dbdc855d65a66ab3442e177
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 20:25:55 2009 +0000

    refactor out the match string into its own Pattern class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82711 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16905eda1a5f9e55bc061df7018afc1264258b85
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Sep 24 20:23:02 2009 +0000

    Convert to FileCheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82710 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed17499ee7446c5da5638f6c4c34eea660808a3d
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Sep 24 20:22:50 2009 +0000

    Make the end-of-itinerary mark explicit. Some cleanup.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82709 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7f3103731c7d2ee3608f401031d0b9f785293e35
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 24 20:20:08 2009 +0000

    Add nounwind to this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82708 91177308-0d34-0410-b5e6-96231b3b80d8

commit 81f61b9291284bd0dc93d9dc333c1962a4399719
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 20:15:51 2009 +0000

    tidy up, fix a memory leak in Regex::isValid

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82707 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9fcf4a9c8f35d53460b62db4a13fa14c7e1d1676
Author: Dale Johannesen <dalej@apple.com>
Date:   Thu Sep 24 18:38:21 2009 +0000

    Clarify that llvm attaches C language semantics to
    functions with names that match the C library.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82701 91177308-0d34-0410-b5e6-96231b3b80d8

commit 129b2d16553e46db3b5675b63e777931e2ea4cec
Author: Edwin Török <edwintorok@gmail.com>
Date:   Thu Sep 24 18:33:42 2009 +0000

    Constant propagating byval pointer is safe if function is readonly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82700 91177308-0d34-0410-b5e6-96231b3b80d8

commit b493c9735a034856258c992d967b523d0effa7ce
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Sep 24 17:47:49 2009 +0000

    Auto-upgrade malloc instructions to malloc calls.

    Reviewed by Devang Patel.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82694 91177308-0d34-0410-b5e6-96231b3b80d8

commit 92244901c3c0101b8114ffa52c1dcf0e9cda72a1
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Sep 24 16:42:27 2009 +0000

    Fix a hypothetical problem for targets with StackGrowsUp and a non-zero
    LocalAreaOffset.  (We don't have any of those right now.)
    PEI::calculateFrameObjectOffsets includes the absolute value of the
    LocalAreaOffset in the cumulative offset value used to calculate the
    stack frame size.  It then adds the raw value of the LocalAreaOffset
    to the stack size.  For a StackGrowsDown target, that raw value is negative
    and has the effect of cancelling out the absolute value that was added
    earlier, but that obviously won't work for a StackGrowsUp target.  Change
    to subtract the absolute value of the LocalAreaOffset.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82693 91177308-0d34-0410-b5e6-96231b3b80d8

commit ef534da2d0f3316b5ad378a00899e8d127362b5d
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 24 16:19:11 2009 +0000

    Move parent assertion check before metadata deletion.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82692 91177308-0d34-0410-b5e6-96231b3b80d8

commit d54353779c9a33c745178f01785113300c7acb0e
Author: Edwin Török <edwintorok@gmail.com>
Date:   Thu Sep 24 09:47:18 2009 +0000

    Don't constant propagate byval pointers, since they are not really pointers, but
    rather structs passed by value.
    This fixes PR5038.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82689 91177308-0d34-0410-b5e6-96231b3b80d8

commit a8b807194946fe34f364a39721205c00c1906482
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 24 06:23:57 2009 +0000

    Add count/not tools as executables.
     - Apparently, I'm willing to do incredibly stupid things in the name of portability.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82685 91177308-0d34-0410-b5e6-96231b3b80d8

commit c73e8ebf88f2c21b857296951b4babc6bd404426
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 05:44:53 2009 +0000

    unconditionally compute MMI even if the target doesn't support EH or Debug info, because the target may use it for other things, this fixes PR5036

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82684 91177308-0d34-0410-b5e6-96231b3b80d8

commit c8b70669b5480ad74079a8b8424d58c51b0cfa84
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 24 05:38:36 2009 +0000

    reapply r82348 with a fix, thanks Jeffrey.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82683 91177308-0d34-0410-b5e6-96231b3b80d8

commit f33cdc3f423b26e209fd058d50acea55966adb00
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 24 02:27:09 2009 +0000

    Fix PR5024 with a big hammer: disable the double-def assertion in the scavenger.

    LiveVariables add implicit kills to correctly track partial register kills. This works well enough and is fairly accurate. But coalescer can make it impossible to maintain these markers. e.g.

            BL <ga:sss1>, %R0<kill,undef>, %S0<kill>, %R0<imp-def>, %R1<imp-def,dead>, %R2<imp-def,dead>, %R3<imp-def,dead>, %R12<imp-def,dead>, %LR<imp-def,dead>, %D0<imp-def>, ...
    ...
    	%reg1031<def> = FLDS <cp#1>, 0, 14, %reg0, Mem:LD4[ConstantPool]
    ...
       	%S0<def> = FCPYS %reg1031<kill>, 14, %reg0, %D0<imp-use,kill>

    When reg1031 and S0 are coalesced, the copy (FCPYS) will be eliminated the the implicit-kill of D0 is lost. In this case it's possible to move the marker to the FLDS. But in many cases, this is not possible. Suppose

    	%reg1031<def> = FOO <cp#1>, %D0<imp-def>
    ...
       	%S0<def> = FCPYS %reg1031<kill>, 14, %reg0, %D0<imp-use,kill>

    When FCPYS goes away, the definition of S0 is the "FOO" instruction. However, transferring the D0 implicit-kill to FOO doesn't work since it is the def of D0 itself. We need to fix this in another time by introducing a "kill" pseudo instruction to track liveness.

    Disabling the assertion is not ideal, but machine verifier is doing that job now. It's important to know double-def is not a miscomputation since it means a register should be free but it's not tracked as free. It's a performance issue instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82677 91177308-0d34-0410-b5e6-96231b3b80d8

commit 04f3d1de138c7ebffc1d37a273e5a8675b6a933d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 24 02:15:22 2009 +0000

    Clean up LiveVariables and change how it deals with partial updates and kills. This also eliminate the horrible check which scan forward to the end of the basic block. It should be faster and more accurate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82676 91177308-0d34-0410-b5e6-96231b3b80d8

commit 07c5e3ce817f75c90d00d48b0acd765e4e9ec6b5
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Thu Sep 24 01:14:07 2009 +0000

    Roll back r82348, which introduced an infinite loop in ParseCStringVector() that
    a trivial unittest would have caught.  This revision also adds the trivial
    unittest.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82675 91177308-0d34-0410-b5e6-96231b3b80d8

commit f1b016061ea1eb7a321b1b4d20976a651b3c24b6
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Sep 23 22:05:24 2009 +0000

    A minor improvment in accuracy to inline cost
    computation, and some cosmetics.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82660 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7b4f81c688a6b32d799f7e0b95f6fe131d7ffb24
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Sep 23 21:46:36 2009 +0000

    Disable test; what it's testing for is wrong.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82658 91177308-0d34-0410-b5e6-96231b3b80d8

commit 78caa12a415bbd16db04088be6378398d4909b6f
Author: David Goodwin <david_goodwin@apple.com>
Date:   Wed Sep 23 21:38:08 2009 +0000

    Checkpoint NEON scheduling itineraries.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82657 91177308-0d34-0410-b5e6-96231b3b80d8

commit ad4880332c61c808014c202255dce5f8fafe581e
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 21:07:02 2009 +0000

    Use getStoreSize() instead of getStoreSizeInBits()/8.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82656 91177308-0d34-0410-b5e6-96231b3b80d8

commit 63521d0ab0566f418464b29e5ac6cca7710ae094
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 21:06:36 2009 +0000

    Spruce up some comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82655 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3bab1f776cf32aadd62d490f54cec968ef38eec7
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 21:02:20 2009 +0000

    Rename several variables from EVT to more descriptive names, now that EVT
    is also the name of their type, as declarations like "EVT EVT" look
    really odd.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82654 91177308-0d34-0410-b5e6-96231b3b80d8

commit a387c633b81a60a676445c8d89513a7518b8f7fc
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 20:59:10 2009 +0000

    Add an EVT::getStoreSize function, like getStoreSizeInBits but in bytes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82653 91177308-0d34-0410-b5e6-96231b3b80d8

commit ef0853ae5ef4ef4dac82362ecb914ad2b3df1ae0
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Wed Sep 23 20:57:55 2009 +0000

    Fix verification of explicit operands.

    The machine code verifier did not check for explicit operands correctly. It
    used MachineInstr::getNumExplicitOperands, but that method may cheat and use
    the declared count in the TargetInstrDesc.

    Now we check the explicit operands one at a time in visitMachineOperand.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82652 91177308-0d34-0410-b5e6-96231b3b80d8

commit 95e76c5aee19e6e44bda135a7f7a32c2602c493f
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 23 20:57:02 2009 +0000

    Remove BlackfinRegisterInfo::getFrameIndexOffset since it is the same as the
    default implementation.  Update comment on the default version, which made it
    sound like most targets override it.  Currently only X86 and SystemZ override
    this method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82651 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f939a29fdfdfc31e521209c44fc1ca3b1ecfc6f
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 20:40:16 2009 +0000

    Correct a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82648 91177308-0d34-0410-b5e6-96231b3b80d8

commit 579edbf7bf65497e3afa498baaf1cb6642ef3de0
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 23 20:33:51 2009 +0000

    Delete attached metadata when an instruction is deleted.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82647 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3fad552803d264b6bf83981de305e7080cb8ef4f
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Wed Sep 23 19:04:09 2009 +0000

    ARM does not support offset folding (yet). Disable it for now.
    This fixes PR5031. Unfortunately, there is no small testcase :(

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82643 91177308-0d34-0410-b5e6-96231b3b80d8

commit a9b57edff7a7dbf11ba9fe787349d21f7e3e80f6
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 23 18:53:19 2009 +0000

    Edit a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82641 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6b7c1e84c407ef2ba17ed953f0368eb54a5ef106
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 23 18:32:25 2009 +0000

    Do not leave behind metadata while cloning an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82638 91177308-0d34-0410-b5e6-96231b3b80d8

commit 724190977bf4a7289c24e923f33ad6b7e172cfbf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 23 18:20:27 2009 +0000

    Add nounwind.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82637 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7fdd6fe71635b720cb3c47fe9bbe4c7587cb027d
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 23 17:20:43 2009 +0000

    s/*Location/*DebugLocation/g

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82635 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35659ae0fc161cf474f5ca81c497d58a90b7c4e0
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Wed Sep 23 17:05:42 2009 +0000

    PR4047: Permit configure --enable-targets=host,cpp for example.  "host" has the
    same effect that "host-only" used to have, but can be combined with other
    targets.  host-only is still available as a synonym but no longer documented.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82634 91177308-0d34-0410-b5e6-96231b3b80d8

commit 83b6ace01ffb5d8d495a4b70c7406d06f0dd2067
Author: David Goodwin <david_goodwin@apple.com>
Date:   Wed Sep 23 16:35:25 2009 +0000

    Fix bug in kill flag updating for post-register-allocation scheduling. When the kill flag of a superreg needs to be cleared because there are one or more subregs live, we instead add implicit-defs of those subregs and leave the kill flag on the superreg. This allows us to end the live-range of the superreg without ending the live-ranges of the subregs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82629 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5faba0e3a308107b7a40b53ea72b6bfbdd19e28b
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Sep 23 11:48:57 2009 +0000

    Fix a struct/class mismatch.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82622 91177308-0d34-0410-b5e6-96231b3b80d8

commit e9cbef31ba8c374d41249635197e58c102fe41fb
Author: John McCall <rjmccall@apple.com>
Date:   Wed Sep 23 06:53:51 2009 +0000

    Make the type traits for a const pointer defer to those for a unqualified
    pointer, instead of providing independent values modelled on the default
    implementation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82620 91177308-0d34-0410-b5e6-96231b3b80d8

commit d062bf740651c35ed3ee80b66b02d8363fd14a3a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 23 06:28:31 2009 +0000

    Fix PR5024. LiveVariables physical register defs should *commit* only after all
    of the defs are processed.
    Also fix a implicit_def propagation bug: a implicit_def of a physical register
    should be applied to uses of the sub-registers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82616 91177308-0d34-0410-b5e6-96231b3b80d8

commit 29a1c10040effaa8c0968a3899b053b6b591a73a
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 23 05:23:19 2009 +0000

    Fix a obvious logic error.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82610 91177308-0d34-0410-b5e6-96231b3b80d8

commit d3593be80c4db01a12d00222ccd196fb10ddc766
Author: Gabor Greif <ggreif@gmail.com>
Date:   Wed Sep 23 02:46:12 2009 +0000

    pretty mechanical changes to match coding guidelines (blessed by sabre on IRC)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82603 91177308-0d34-0410-b5e6-96231b3b80d8

commit 03344a20c2a1d291282ead342f0bfb858909c7dc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 23 02:03:49 2009 +0000

    errorstr can be null, don't unconditionally set it.  Only report that
    "the jit has not been linked in" if the interpreter failed.

    This fixes a unit test failure.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82601 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd0d937f2811e62d66743e588b0a2e0154af2411
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 23 01:46:04 2009 +0000

    Make EngineBuilder return more error codes, by KS Sreeram.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82600 91177308-0d34-0410-b5e6-96231b3b80d8

commit 915d872b7a05774ea93ba7fbb25f0944d62e10fb
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 01:33:16 2009 +0000

    Give MachineMemOperand an operator<<, factoring out code from
    two different places for printing MachineMemOperands.

    Drop the virtual from Value::dump and instead give Value a
    protected virtual hook that can be overridden by subclasses
    to implement custom printing. This lets printing be more
    consistent, and simplifies printing of PseudoSourceValue
    values.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82599 91177308-0d34-0410-b5e6-96231b3b80d8

commit 17f460a7f0b06133486bf897cc67373e07687bf2
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 23 01:29:41 2009 +0000

    Fix X86's unfoldMemoryOperand to properly handle MachineMemOperands.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82597 91177308-0d34-0410-b5e6-96231b3b80d8

commit 069f1c9642c471d827cfaaca98f31aef707464ee
Author: Mike Stump <mrs@apple.com>
Date:   Wed Sep 23 00:13:30 2009 +0000

    This is overly constraining with respect to clang.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82591 91177308-0d34-0410-b5e6-96231b3b80d8

commit efb268acfd0ecf9b39a555267393058e685030fb
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Tue Sep 22 21:15:19 2009 +0000

    Add examples for Kaleidoscope chapters 2 through 6.

    Conflicts:

    	examples/Makefile

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82574 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2a20265022d36c31bdf7c4f041b10695bcb09c45
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Tue Sep 22 21:15:00 2009 +0000

    Rename Kaleidoscope to show that it's for Chapter 7 of the tutorial.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82573 91177308-0d34-0410-b5e6-96231b3b80d8

commit fb577b0367500de745082228b0a1569365ecc68c
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Tue Sep 22 21:14:49 2009 +0000

    Sync c++ kaleidoscope tutorial with test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82572 91177308-0d34-0410-b5e6-96231b3b80d8

commit 191278d73343733b56e030ace8f6a9dcdf08818a
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 22 20:56:31 2009 +0000

    Add SetLocation() to allow IRBuilder user to set location info for an instruction already created.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82570 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5ffdd0e9c3eb03b473ddf666c885cecbc15f8df7
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 22 20:54:13 2009 +0000

    Check exisiting dbg MDKind first.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82568 91177308-0d34-0410-b5e6-96231b3b80d8

commit d80fa7f67d06ef47913578a8212be349722a9df5
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Tue Sep 22 18:50:03 2009 +0000

    No need to verify that malloc's return type is i8*.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82561 91177308-0d34-0410-b5e6-96231b3b80d8

commit cc74792c99e085a14bdd6db9edea362b465406da
Author: David Goodwin <david_goodwin@apple.com>
Date:   Tue Sep 22 16:47:52 2009 +0000

    Use early returns.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82554 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9f854de1b687e0906e7521393f1fa176e4b15b52
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 16:33:42 2009 +0000

    Revert "Don't allow formatted_ostream to be unbuffered, even if its underlying
    buffer", while we work out a solution.

    Dan convinced me that making debugging annoying for him is worse than 10x being
    slower for me. :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82553 91177308-0d34-0410-b5e6-96231b3b80d8

commit f54515d6770a86c4268b41a60a9536b4993e6400
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 16:10:35 2009 +0000

    ... missed hiding a variable for MSVC only.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82552 91177308-0d34-0410-b5e6-96231b3b80d8

commit 441722f4b863b8b9ac8410c2c36217596252dbd6
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 15:58:35 2009 +0000

    Hide MSVC specific CRT interaction behind _MSC_VER.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82551 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed6353b87ccbbf7ddaa63a25bfad14afc3079da0
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 22 15:40:32 2009 +0000

    Remove the GetProcessId() call from Win32/Program.inc, take 2.

    GetProcessId() was introduced only in Windows XP, and we want to support earlier
    versions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82548 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2d3000deec82fd0c808af98c089e5eb628ef47b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 10:30:34 2009 +0000

    Fix commento.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82544 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6463aedb7b4da91f81362b039b697ee0fed50312
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 09:50:38 2009 +0000

    lit: When executing shell scripts internally, don't allow piped stderr on any
    commands except the last one, instead redirect the stderr to a temporary
    file. This sidesteps a potential deadlocking issue.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82538 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e57bc8dcf0be1c58fdb06bb83c34b140b9074fa
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 09:50:28 2009 +0000

    Add a magic LLVM_DISABLE_CRT_DEBUG environment variable which we check in RegisterHandler and use to disable the Win32 crash dialogs. These are a major blocker to any kind of automated testing.

    Also, tweak the 'lit' test runner to set this variable unconditionally.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82537 91177308-0d34-0410-b5e6-96231b3b80d8

commit ff8e568bb5c578639e690ba4e2f0499f3dd78b46
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 22 08:47:59 2009 +0000

    Forgot this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82536 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd216d523e696749d681faca9f3bda92b13cd695
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 22 08:34:46 2009 +0000

    Fix PR5024. LiveVariables::FindLastPartialDef should return a set of sub-registers that were defined by the last partial def, not just a single sub-register.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82535 91177308-0d34-0410-b5e6-96231b3b80d8

commit a4acff7bb0d00b82a152fe067335260a42b5cab1
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 07:38:44 2009 +0000

    Initial support for running LLVM tests from cmake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82534 91177308-0d34-0410-b5e6-96231b3b80d8

commit a018c74c2f4f93f08050ac2dc1c616f8b106dc39
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 07:38:33 2009 +0000

    Generate lit.site.cfg from a .in file, as clang does.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82533 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd2674d181e3edb1700721bed54e790cd9c5f4a7
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 07:38:23 2009 +0000

    Use Compiler.h macro instead of __attribute__.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82532 91177308-0d34-0410-b5e6-96231b3b80d8

commit b7784533131d4921046a46a406b1e198863e6d11
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 06:09:37 2009 +0000

    CMake: Fix definition of LTDL_SHLIB_EXT for Darwin.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82530 91177308-0d34-0410-b5e6-96231b3b80d8

commit c4e0f91cc54f6399b3e9be19a12aaa4dcbfffaff
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 06:09:31 2009 +0000

    Fix llvm-config --src-root and --obj-root for CMake builds.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82529 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2be1b773bb528a793ed59869ad275ac74aad2b77
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 06:09:22 2009 +0000

    llvm-config: Remove unused variables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82528 91177308-0d34-0410-b5e6-96231b3b80d8

commit 346a7bb311e53d4af9e8dd3063b10e7323e31c95
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 06:09:13 2009 +0000

    Actually use the arguments with the resolved executable path.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82527 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0dfef16716fc2c26777f8404c8fa073cd42bc57e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 04:44:56 2009 +0000

    Revert "Get rid of GetProcessId in Win32/Program.inc.", this breaks
    ExecuteAndWait.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82522 91177308-0d34-0410-b5e6-96231b3b80d8

commit dce584a533e962394daa5fa66065ddb344467c47
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 04:44:37 2009 +0000

    lit: Don't use close_fds=True on Windows.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82521 91177308-0d34-0410-b5e6-96231b3b80d8

commit a5e3ec7946254a90b806176d1868ca919da6c35f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 04:44:26 2009 +0000

    lit: When executing commands internally, perform PATH resolution ourselves.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82520 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4cf9e690c5df0d90fdada4eabd3b203e4e906325
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 03:34:53 2009 +0000

    Switch FoldingSet::AddString to StringRef based API.
     - This also fixes a dereference of std::string::end, which makes MSVC unhappy and was causing all the static analyzer clang tests to fail.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82517 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa985152c3d160701fa55af97f598a478c3a456e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 03:34:40 2009 +0000

    Workaround what I believe is an MSVC bug where it emits a definition for a
    static const class member into each translation unit, with external linkage???
     - If someone understands this issue better, please clue me in, I haven't
       consulted the standard yet.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82516 91177308-0d34-0410-b5e6-96231b3b80d8

commit c27a50855925ba7455c4049398c80db45fcef36a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 02:03:18 2009 +0000

    Switch DIDescriptor to use a TrackingVH. - This makes it much safer to work with debug info, since it was extraordinarily easy to have dangling pointers thanks to MDNode uniquing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82507 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f912e5070e7e43b4bd9def2d9f1038254c5806c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 22 02:02:33 2009 +0000

    Add a TrackingVH value handle.

    This is designed for tracking a value even when it might move (like WeakVH), but it is an error to delete the referenced value (unlike WeakVH0. TrackingVH is templated like AssertingVH on the tracked Value subclass, it is an error to RAUW a tracked value to an incompatible type.

    For implementation reasons the latter error is only diagnosed on accesses to a mis-RAUWed TrackingVH, because we don't want a virtual interface in a templated class.

    The former error is also only diagnosed on access, so that clients are allowed to delete a tracked value, as long as they don't use it. This makes it easier for the client to reason about destruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82506 91177308-0d34-0410-b5e6-96231b3b80d8

commit b6d716f620ad28e540c2a262504ebaeff6461b3f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 22 01:48:19 2009 +0000

    Fix a pasto. Also simplify for Bill's benefit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82505 91177308-0d34-0410-b5e6-96231b3b80d8

commit eb21e377d210da64284a7e52ca694e0f42b5062d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 22 00:29:40 2009 +0000

    Minor bug fix. LowerSubregs should translate
    %S0<def> = EXTRACT_SUBREG %Q0<kill>, 1
    to
    %S0<def> = IMPLICIT_DEF %Q0<imp-use,kill>

    Implicit_def does not *read* any register so the operand should be marked "implicit". The missing "implicit" marker on the operand is wrong, but it doesn't actually break anything.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82503 91177308-0d34-0410-b5e6-96231b3b80d8

commit 321b572fd6b43198d21fe25f1a5ae5d5e8af50bf
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 22:39:35 2009 +0000

    Fix PR5023: The instruction form of DominatorTree::dominates did not
    take into consideration that the result of an invoke is only valid in
    the normal dest, not the unwind dest.  This caused 'PHINode::hasConstantValue'
    to return true in an invalid situation, causing mem2reg to delete a phi that
    was actually needed.  This caused a crash building 483.xalancbmk.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82491 91177308-0d34-0410-b5e6-96231b3b80d8

commit b171ff4d2cc5feb820dee24b5e6ad004493b8576
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 22:30:50 2009 +0000

    move DominatorTree::dominates for instructions out of line,
    no functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82490 91177308-0d34-0410-b5e6-96231b3b80d8

commit a5456988b7e38012abf0b14767f0752f87520a44
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 22:27:34 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82489 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e683894a5d61beccb7a58ffa70be000eee12a73
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 22:26:02 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82488 91177308-0d34-0410-b5e6-96231b3b80d8

commit b9bbb5795a133c6cca6a5ac4e5ab110016d4e7c1
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 21 21:12:25 2009 +0000

    Clean up spill weight computation. Also some changes to give loop induction
    variable increment / decrement slighter high priority.

    This has major impact on some micro-benchmarks. On MultiSource/Applications
    and spec tests, it's a minor win. It also reduce 256.bzip instruction count
    by 8%, 55 on 164.gzip on i386 / Darwin.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82485 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35d4912e3b08a8a2d0e01c0ef8b23407f8efa8db
Author: David Goodwin <david_goodwin@apple.com>
Date:   Mon Sep 21 20:52:17 2009 +0000

    Add Cortex-A8 VFP model.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82483 91177308-0d34-0410-b5e6-96231b3b80d8

commit 169948d4180417313f5332b85d2572520592de3c
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 19:47:04 2009 +0000

    Change MachineMemOperand's alignment value to be the alignment of
    the base pointer, without the offset. This matches MemSDNode's
    new alignment behavior, and holds more interesting information.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82473 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47b5330a18b00883f10807c53120a57127cc0703
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 18:32:20 2009 +0000

    Add a comment mentioning the rdar number associated with this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82471 91177308-0d34-0410-b5e6-96231b3b80d8

commit 51dbce6a853d1b2bc8084b18e741a666e7c83548
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 18:30:38 2009 +0000

    Add support for rematerializing FsFLD0SS and FsFLD0SD as constant-pool
    loads in order to reduce register pressure.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82470 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1948855617427c57a974e270f9fb21fb20b46420
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 18:03:22 2009 +0000

    Recognize SSE min and max opportunities in even more cases.
    And fix a bug with the behavior of min/max instructions formed from
    fcmp uge comparisons.

    Also, use FiniteOnlyFPMath() for this code instead of UnsafeFPMath,
    as it is more specific.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82466 91177308-0d34-0410-b5e6-96231b3b80d8

commit e57ba8991a2b71698d70928e66b8baff012b163c
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 17:58:09 2009 +0000

    Fix the offset values for these memoperands. For frame objects, the
    PseudoSourceValue already effectively represents the offset from the
    frame base, so the actual offset should not be added to it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82465 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1846fa00f3590637b7d8dbfc0f5c2254bd42436f
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 17:55:47 2009 +0000

    big endian systems shift by bits too, hopefully this will fix the ppc
    bootstrap problems.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82464 91177308-0d34-0410-b5e6-96231b3b80d8

commit 55a622f7da7cdbc88190bb100cafd60127abf0ec
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 17:54:42 2009 +0000

    Nick pointed out that DominanceFrontier and DominanceTree are preserved
    by setPreservesCFG().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82463 91177308-0d34-0410-b5e6-96231b3b80d8

commit b350b3d81e6b7df211447f0bc54b4493af9aa444
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 17:53:35 2009 +0000

    Remove the special-case for constants in PHI nodes; it's not really
    helpful, and it didn't correctly handle the case of constants input
    to PHIs for backedges.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82462 91177308-0d34-0410-b5e6-96231b3b80d8

commit 012b360d60c62c975af276d9a04fcfd79cf3ac9c
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 17:24:04 2009 +0000

    fix PR5016, a crash I introduced in GVN handing first class
    arrays and structs, which cannot be bitcast to integers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82460 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8435ab1c698f403ef565764e458c7dceb70b0495
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Mon Sep 21 15:53:44 2009 +0000

    Use raw_ostream::indent instead of passing strings.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82456 91177308-0d34-0410-b5e6-96231b3b80d8

commit 30a8d480ddd031f85b3386db7ccfe11e027b525c
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 21 15:18:33 2009 +0000

    Fix this assertion string to mention subreg_to_reg.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82455 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56b9fc1caef68a302d561472c1691ded886efd56
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Mon Sep 21 14:11:56 2009 +0000

    initialize SymbolsCanStartWithDigit to false by default

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82454 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce08ae8748979ca3ca4a0048ebc610602a76bedc
Author: Xerxes Ranby <xerxes@zafena.se>
Date:   Mon Sep 21 08:08:29 2009 +0000

    Update cmake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82449 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8314a42c92bd21ecfa700da8cbe60b6818caba33
Author: Jakob Stoklund Olesen <stoklund@2pi.dk>
Date:   Mon Sep 21 07:19:08 2009 +0000

    Verify that phi instructions refer to MBBs in the CFG.

    The machine code verifier no longer tolerates phi instructions with noop
    operands. All MBBs on a phi instruction must be in the CFG.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82448 91177308-0d34-0410-b5e6-96231b3b80d8

commit aae7fcb7114258c6d289601bf0d68a25aeabf5d5
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 06:48:08 2009 +0000

    enable non-local analysis and PRE of large store -> little load.
    This doesn't kick in too much because of phi translation issues,
    but this can be resolved in the future.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82447 91177308-0d34-0410-b5e6-96231b3b80d8

commit 19b84b380a7341297af6636f8e58373046be7d4b
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 06:30:24 2009 +0000

    convert an std::pair to an explicit struct.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82446 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8f91208a30c55c3619cc1ffd1abc1ca41a2ac556
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 06:24:16 2009 +0000

    move some functions, add a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82444 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41eb59cc4d3718b4c640a3746b31f5253dcca243
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 06:22:46 2009 +0000

    split HandleLoadFromClobberingStore in two pieces: one that does the
    analysis, one that does the xform.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82443 91177308-0d34-0410-b5e6-96231b3b80d8

commit c62f2aa0f8d92120fa45a27b97301b173b092ac4
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 06:04:07 2009 +0000

    add a note

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82442 91177308-0d34-0410-b5e6-96231b3b80d8

commit 98cb5536ab1aa5667bb5b602bf691631f3bbaffc
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 21 05:58:35 2009 +0000

    Register the MachineModuleInfo for the ARM JIT, and update JITDwarfEmitter to
    assert if the setModuleInfo hasn't been called.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82441 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7932c5775e79a332b5cb036e71995d4738eb7fe9
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 05:57:47 2009 +0000

    add pr#

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82440 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0907b520a0b293e15a6296de4c37d0a44b40306d
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 05:57:11 2009 +0000

    Improve GVN to be able to forward substitute a small load
    from a piece of a large store when both are in the same block.

    This allows clang to compile the testcase in PR4216 to this code:

    _test_bitfield:
    	movl	4(%esp), %eax
    	movl	%eax, %ecx
    	andl	$-65536, %ecx
    	orl	$32962, %eax
    	andl	$40186, %eax
    	orl	%ecx, %eax
    	ret

    This is not ideal, but is a whole lot better than the code produced
    by llvm-gcc:

    _test_bitfield:
    	movw	$-32574, %ax
    	orw	4(%esp), %ax
    	andw	$-25350, %ax
    	movw	%ax, 4(%esp)
    	movw	7(%esp), %cx
    	shlw	$8, %cx
    	movzbl	6(%esp), %edx
    	orw	%cx, %dx
    	movzwl	%dx, %ecx
    	shll	$16, %ecx
    	movzwl	%ax, %eax
    	orl	%ecx, %eax
    	ret

    and dramatically better than that produced by gcc 4.2:

    _test_bitfield:
    	pushl	%ebx
    	call	L3
    "L00000000001$pb":
    L3:
    	popl	%ebx
    	movl	8(%esp), %eax
    	leal	0(,%eax,4), %edx
    	sarb	$7, %dl
    	movl	%eax, %ecx
    	andl	$7168, %ecx
    	andl	$-7201, %ebx
    	movzbl	%dl, %edx
    	andl	$1, %edx
    	sall	$5, %edx
    	orl	%ecx, %ebx
    	orl	%edx, %ebx
    	andl	$24, %eax
    	andl	$-58336, %ebx
    	orl	%eax, %ebx
    	orl	$32962, %ebx
    	movl	%ebx, %eax
    	popl	%ebx
    	ret

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82439 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c3fd1da0082f74a5e7cb3b6b5501a67bf0097bf
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 05:52:45 2009 +0000

    add a helper method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82438 91177308-0d34-0410-b5e6-96231b3b80d8

commit a32393f6bbe778ea5f6960bc67c34176ce769198
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 21 04:32:32 2009 +0000

    Fix PR4986. "r1024 = insert_subreg r1024, undef, 2" cannot be turned in an implicit_def. Instead, it's an identity copy so it should be eliminated. Also make sure to update livevariable kill information.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82436 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd66f1607e2c9e866c66fdb4b1feb9a15718075b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 21 03:56:00 2009 +0000

    Don't allow formatted_ostream to be unbuffered, even if its underlying buffer
    is.
     - The problem is that formatted_ostream forces its underlying buffer to be
       unbuffered, so if some client happens to wrap a formatted_ostream around
       something, but still use the underlying stream, then we can end up writing on
       a fully unbuffered output (which was never intended to be unbuffered).

     - This makes clang (and presumably llvm-gcc) -emit-llvm -S a mere 10x faster.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82434 91177308-0d34-0410-b5e6-96231b3b80d8

commit 51481994a6a57871da58724cd6b9aa249833c4f8
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 02:53:57 2009 +0000

    one case handled, expanded another testcase inline.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82427 91177308-0d34-0410-b5e6-96231b3b80d8

commit ff36c95843e4cc7402357d937d848e729d022ff6
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 02:42:51 2009 +0000

    formatting cleanups, no functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82426 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3453185664bae401dc32f9c8744c0fa9590f9716
Author: Reid Kleckner <reid@kleckner.net>
Date:   Mon Sep 21 02:34:59 2009 +0000

    Add documentation on how to use enable debug information in the JIT and use it with GDB.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82425 91177308-0d34-0410-b5e6-96231b3b80d8

commit ec3c4b93ee43cac3749ade851f57a1863de06eb5
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 21 02:30:42 2009 +0000

    fix a FileCheck bug where:

    ; CHECK: foo
    ; CHECK-NOT: foo
    ; CHECK: bar

    would always fail.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82424 91177308-0d34-0410-b5e6-96231b3b80d8

commit 096f10a51b037861069e280020dd2967fdce6b6e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 21 00:05:30 2009 +0000

    Move ARM and X86 specific AsmParser tests into separate subdirectories, and only
    run if appropriate target is supported.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82419 91177308-0d34-0410-b5e6-96231b3b80d8

commit 738b4f2a7d37600af45fc6a5515d5a5be175d19e
Author: Reid Kleckner <reid@kleckner.net>
Date:   Sun Sep 20 23:52:43 2009 +0000

    Implement the JIT side of the GDB JIT debugging interface.  To enable this
    feature, either build the JIT in debug mode to enable it by default or pass
    -jit-emit-debug to lli.

    Right now, the only debug information that this communicates to GDB is call
    frame information, since it's already being generated to support exceptions in
    the JIT.  Eventually, when DWARF generation isn't tied so tightly to AsmPrinter,
    it will be easy to push that information to GDB through this interface.

    Here's a step-by-step breakdown of how the feature works:

    - The JIT generates the machine code and DWARF call frame info
      (.eh_frame/.debug_frame) for a function into memory.
    - The JIT copies that info into an in-memory ELF file with a symbol for the
      function.
    - The JIT creates a code entry pointing to the ELF buffer and adds it to a
      linked list hanging off of a global descriptor at a special symbol that GDB
      knows about.
    - The JIT calls a function marked noinline that GDB knows about and has put an
      internal breakpoint in.
    - GDB catches the breakpoint and reads the global descriptor to look for new
      code.
    - When sees there is new code, it reads the ELF from the inferior's memory and
      adds it to itself as an object file.
    - The JIT continues, and the next time we stop the program, we are able to
      produce a proper backtrace.

    Consider running the following program through the JIT:

    #include <stdio.h>
    void baz(short z) {
      long w = z + 1;
      printf("%d, %x\n", w, *((int*)NULL));  // SEGFAULT here
    }
    void bar(short y) {
      int z = y + 1;
      baz(z);
    }
    void foo(char x) {
      short y = x + 1;
      bar(y);
    }
    int main(int argc, char** argv) {
      char x = 1;
      foo(x);
    }

    Here is a backtrace before this patch:
    Program received signal SIGSEGV, Segmentation fault.
    [Switching to Thread 0x2aaaabdfbd10 (LWP 25476)]
    0x00002aaaabe7d1a8 in ?? ()
    (gdb) bt
    #0  0x00002aaaabe7d1a8 in ?? ()
    #1  0x0000000000000003 in ?? ()
    #2  0x0000000000000004 in ?? ()
    #3  0x00032aaaabe7cfd0 in ?? ()
    #4  0x00002aaaabe7d12c in ?? ()
    #5  0x00022aaa00000003 in ?? ()
    #6  0x00002aaaabe7d0aa in ?? ()
    #7  0x01000002abe7cff0 in ?? ()
    #8  0x00002aaaabe7d02c in ?? ()
    #9  0x0100000000000001 in ?? ()
    #10 0x00000000014388e0 in ?? ()
    #11 0x00007fff00000001 in ?? ()
    #12 0x0000000000b870a2 in llvm::JIT::runFunction (this=0x1405b70,
    F=0x14024e0, ArgValues=@0x7fffffffe050)
       at /home/rnk/llvm-gdb/lib/ExecutionEngine/JIT/JIT.cpp:395
    #13 0x0000000000baa4c5 in llvm::ExecutionEngine::runFunctionAsMain
    (this=0x1405b70, Fn=0x14024e0, argv=@0x13f06f8, envp=0x7fffffffe3b0)
       at /home/rnk/llvm-gdb/lib/ExecutionEngine/ExecutionEngine.cpp:377
    #14 0x00000000007ebd52 in main (argc=2, argv=0x7fffffffe398,
    envp=0x7fffffffe3b0) at /home/rnk/llvm-gdb/tools/lli/lli.cpp:208

    And a backtrace after this patch:
    Program received signal SIGSEGV, Segmentation fault.
    0x00002aaaabe7d1a8 in baz ()
    (gdb) bt
    #0  0x00002aaaabe7d1a8 in baz ()
    #1  0x00002aaaabe7d12c in bar ()
    #2  0x00002aaaabe7d0aa in foo ()
    #3  0x00002aaaabe7d02c in main ()
    #4  0x0000000000b870a2 in llvm::JIT::runFunction (this=0x1405b70,
    F=0x14024e0, ArgValues=...)
       at /home/rnk/llvm-gdb/lib/ExecutionEngine/JIT/JIT.cpp:395
    #5  0x0000000000baa4c5 in llvm::ExecutionEngine::runFunctionAsMain
    (this=0x1405b70, Fn=0x14024e0, argv=..., envp=0x7fffffffe3c0)
       at /home/rnk/llvm-gdb/lib/ExecutionEngine/ExecutionEngine.cpp:377
    #6  0x00000000007ebd52 in main (argc=2, argv=0x7fffffffe3a8,
    envp=0x7fffffffe3c0) at /home/rnk/llvm-gdb/tools/lli/lli.cpp:208

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82418 91177308-0d34-0410-b5e6-96231b3b80d8

commit 11c06f4536a6ced3db546b5c7b07ff75047a302c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 23:30:31 2009 +0000

    Work around a FileCheck bug, for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82416 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc1c1435324c8b816a1174dd8b6b177f420d6ba8
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:56:43 2009 +0000

    simplify as daniel suggests

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82415 91177308-0d34-0410-b5e6-96231b3b80d8

commit a094468e10fe4f091e7d907293becbdcfbd6427e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:54:26 2009 +0000

    write rfind in terms of npos as daniel requested

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82414 91177308-0d34-0410-b5e6-96231b3b80d8

commit 637012fa510c7edf6b964a351eb3f265ed799674
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:46:42 2009 +0000

    remove a dead method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82413 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3472feab21a77560d266b6ff1a24c5e56a99fb42
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:45:18 2009 +0000

    grammaro

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82412 91177308-0d34-0410-b5e6-96231b3b80d8

commit c911446f73dd4b9d08d33002826f4abb660c8f0a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:44:26 2009 +0000

    Revert r82404, it is causing a bootstrap miscompile.  This is very very
    scary, as it indicates a lurking bug. yay.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82411 91177308-0d34-0410-b5e6-96231b3b80d8

commit 01467f6f77e9ac0cf6529a6859557def9b7a8c89
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:42:44 2009 +0000

    rewrite CountNumNewlinesBetween to be in terms of StringRef.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82410 91177308-0d34-0410-b5e6-96231b3b80d8

commit 873602b157d1fbdf0c325f03ec7d1845536286e9
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:36:11 2009 +0000

    this was not supposed to be committed

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82409 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0d82c7077aaeb545a95fc782af1d742ea4a76016
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:35:26 2009 +0000

    implement and document support for CHECK-NOT

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82408 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7f850d129178bcf88a47450425f40adac1ed1dbb
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 22:11:44 2009 +0000

    rewrite FileCheck in terms of StringRef instead of manual pointer pairs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82407 91177308-0d34-0410-b5e6-96231b3b80d8

commit f1e45469b47ce54ae561ac4e1ab5369e5c5d73ec
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 21:00:18 2009 +0000

    improve memdep to eliminate bitcasts (and aliases, and noop geps)
    early for the stated reasons: this allows it to find more
    equivalences and depend less on code layout.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82404 91177308-0d34-0410-b5e6-96231b3b80d8

commit d6b1d05df6e52b543bc7a580ae50876b1c75e1ba
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 20:09:34 2009 +0000

    Move CoerceAvailableValueToLoadType earlier in GVN.cpp.  Hook it up
    so that nonlocal and partially redundant loads can use it as well.
    The testcase shows examples of craziness this can handle.  This triggers
    *many* times in 176.gcc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82403 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3de5c8cdc9d2dbeb463861ec0754ba9d22f3e821
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 19:31:14 2009 +0000

    change the interface to CoerceAvailableValueToLoadType to be
    more generic.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82402 91177308-0d34-0410-b5e6-96231b3b80d8

commit a266ec3f6128ce246bc5616f23810d74d7189676
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 19:04:28 2009 +0000

    Teach 'make check-all' to build the site configuration for clang, if it is in tree.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82400 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7741aa5bd6c283df1435bc6c140ebc5dac40327c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 19:03:47 2009 +0000

    enhance GVN to forward substitute a stored value to a load
    (and load -> load) when the base pointers must alias but when
    they are different types.  This occurs very very frequently in
    176.gcc and other code that uses bitfields a lot.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82399 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7acce9445f10d7ddea1480a477473ce0ca92a1b0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 17:37:38 2009 +0000

    update an entry, delete an entry which has been fixed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82398 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9c220f60be3a50de7fd2a5c491ccfa63c5d3a342
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 17:32:21 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82397 91177308-0d34-0410-b5e6-96231b3b80d8

commit dac97dab11fffaae623be1d4bd2a0c2e249a5c54
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sun Sep 20 09:13:15 2009 +0000

    --- Reverse-merging r82282 into '.':
    U    lib/CodeGen/AsmPrinter/DwarfException.cpp
    U    lib/CodeGen/AsmPrinter/DwarfException.h

    --- Reverse-merging r82274 into '.':
    U    lib/Target/TargetLoweringObjectFile.cpp
    G    lib/CodeGen/AsmPrinter/DwarfException.cpp

    These revisions were breaking everything.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82396 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0544b677b4974c107db08d19d419ce3a5703478
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:47:59 2009 +0000

    remove a temporary hack.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82395 91177308-0d34-0410-b5e6-96231b3b80d8

commit bf4b6a8e534c6934d3f702cb8d15e727096aabfb
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:41:30 2009 +0000

    rename X86ATTAsmPrinter.cpp -> X86AsmPrinter.cpp likewise the .h file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82394 91177308-0d34-0410-b5e6-96231b3b80d8

commit c8ef9fecee83d80f51ef84e4ccfb1aff73d965c4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:39:06 2009 +0000

    move target registry stuff to X86ATTAsmPrinter.cpp

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82393 91177308-0d34-0410-b5e6-96231b3b80d8

commit 937948b3621332a2bbd8b1ca414fbb04b89e65a8
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:37:51 2009 +0000

    simplify this now that createX86CodePrinterPass is trivial

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82392 91177308-0d34-0410-b5e6-96231b3b80d8

commit 477b9ac19d813b317e3b90ebfdffa1953d4e1261
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:35:34 2009 +0000

    rename X86ATTAsmPrinter class -> X86AsmPrinter

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82391 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2aa10dafe6b2eeccc73dda8817d0eebce9481c63
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:32:00 2009 +0000

    remove the asmstring, it is now dead.  Improve comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82390 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5086a10b582cf8d9f0f1ac4d7569c24d260092c8
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 07:31:25 2009 +0000

    Peer through zext and sext to eliminate them when it is safe to do so.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82389 91177308-0d34-0410-b5e6-96231b3b80d8

commit a7e959d869e698bf1b8d22044d96655632f6072e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:28:26 2009 +0000

    kill off printPICLabel now, it's specialness is handled by
    the MachineInstr ->MCInst lowering process, not in the
    asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82388 91177308-0d34-0410-b5e6-96231b3b80d8

commit 548587879c1ca975c31cfa7a2e93d2778270d8ce
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:25:17 2009 +0000

    delete X86IntelAsmPrinter!  Now -x86-asm-syntax just switches
    the instruction syntax, not the entire asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82387 91177308-0d34-0410-b5e6-96231b3b80d8

commit cfef6a6a359626560bb9ce090df8895dbc898b00
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 07:21:39 2009 +0000

    Fold 'icmp eq (icmp), true' into an xor(icmp).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82386 91177308-0d34-0410-b5e6-96231b3b80d8

commit d6153b455d4f5ef8514356fbfbbeae0f2281ad77
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:17:49 2009 +0000

    Add an intel syntax MCInstPrinter implementation.  You can now
    transcode from AT&T to intel syntax with "llvm-mc foo.s -output-asm-variant=1"

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82385 91177308-0d34-0410-b5e6-96231b3b80d8

commit a77caae2f50e84a6e1b6e084709806b65680b005
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 07:16:54 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82384 91177308-0d34-0410-b5e6-96231b3b80d8

commit 241fa24501d56a9fc02373cb38d1ef53cc155bef
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 07:00:24 2009 +0000

    Rewrite this check so that it checks what it's supposed to and doesn't use
    CHECK-NOT.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82383 91177308-0d34-0410-b5e6-96231b3b80d8

commit fc71ac06870a72ae5c040e28f30c8064db85af48
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 06:58:54 2009 +0000

    eliminate a use of strtoul.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82382 91177308-0d34-0410-b5e6-96231b3b80d8

commit 14267fcd04c922b6c52d7b9bb474479e5bf57889
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 06:45:52 2009 +0000

    split random COFF asmprinter state out to X86COFFMachineModuleInfo.h.
    Make dllexport directives come out in determinstic order.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82381 91177308-0d34-0410-b5e6-96231b3b80d8

commit 81f952d11efbfddff01ceacd0a1a98d11b6aaeb5
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 06:27:35 2009 +0000

    Correct the comment; this applies to fcmp too.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82380 91177308-0d34-0410-b5e6-96231b3b80d8

commit dbcffe8712043251db8648cfa350b2f1e09084e9
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 06:26:34 2009 +0000

    Remove tab, again.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82379 91177308-0d34-0410-b5e6-96231b3b80d8

commit c9c524ea42f9ed437369879c709b95f24bd3a4e8
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 06:24:51 2009 +0000

    Teach the constant folder how to not a cmpinst.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82378 91177308-0d34-0410-b5e6-96231b3b80d8

commit e4a6ac9ba8cd5339cb954d9830b1d2a06223355b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 06:21:43 2009 +0000

    smallvectorize getExtraOptionNames

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82377 91177308-0d34-0410-b5e6-96231b3b80d8

commit 53f949e7a0b5841e5a497c3015709551729d7874
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 06:21:20 2009 +0000

    add a helper method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82376 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d211b2bfbab124d05ce785a55bc3af0d067faf2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 06:18:38 2009 +0000

    minor cleanups.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82375 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5b6816d9f3b0fc2e47a458e07d63586aaaf8718f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 06:17:21 2009 +0000

    Add 'make check-all', which runs the LLVM tests along with the clang tests if
    its in the standard location.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82374 91177308-0d34-0410-b5e6-96231b3b80d8

commit 681869cb3d72675bb06147c36d9fb31fe8f1ad2e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 06:17:12 2009 +0000

    Follow googletest logic for suppressing warnings in unittests/UnitTestMain.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82373 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8748d237cb2b4ae277921ccc08e54ad742745a6a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:53:47 2009 +0000

    strength reduce further StringRef-> const char*, saving another 620 bytes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82372 91177308-0d34-0410-b5e6-96231b3b80d8

commit b4f150b44b10efd07b2a88484830602476bd8d7a
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 05:48:50 2009 +0000

    Try turning icmp(bitcast(x), bitcast(y)) into icmp(bitcast(bitcast(x)), y) in
    the hopes that the two bitcasts will merge.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82371 91177308-0d34-0410-b5e6-96231b3b80d8

commit a81653676cd5fc5e695af54399394225e8d89b79
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:48:01 2009 +0000

    switch an std::string to StringRef, shaving 400 bytes off CommandLine.o

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82370 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd2115c7b222e57eda27fa44dc982fee783c338d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 05:47:45 2009 +0000

    Remove tabs I added.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82369 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0d9aff4829c7463923e2bb17aa34207cca892513
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:37:24 2009 +0000

    the switch from std::map -> StringMap caused --help output to be in
    non-sorted order, restore the sort.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82368 91177308-0d34-0410-b5e6-96231b3b80d8

commit c8240964bf2a87365923de9c21a98f84a29320bd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:22:52 2009 +0000

    eliminate the duplicate detection loop, moving it into the loop that populates the Opts vector in the first place.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82367 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34bbc24fd05e08cb98ee66991995363c89fc9bd1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:18:28 2009 +0000

    Eliminate a masochistic "algorithm" loop, shrinking CommandLine.o from 71524->70700 bytes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82366 91177308-0d34-0410-b5e6-96231b3b80d8

commit ab754915527a90d5eb8a702cf656048f3e70d28d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:15:12 2009 +0000

    don't use count + insert, just do insert + failure.  Also, instead of deleting from
    the middle of a vector, swap the last element in and pop_back.  Also saves 330 bytes :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82365 91177308-0d34-0410-b5e6-96231b3b80d8

commit 97be18f541d7a7ddfc824f9318091edca672798f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:12:14 2009 +0000

    switch to SmallPtrSet instead of std::set, saving 1K from the
    release-asserts .o file (72900->71856).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82364 91177308-0d34-0410-b5e6-96231b3b80d8

commit 78f024be77b8f3ded896be562c20f60aaea019e2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:06:23 2009 +0000

    change an std::sort to an array_pod_sort call, shrinking CommandLine.o by 9%.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82363 91177308-0d34-0410-b5e6-96231b3b80d8

commit d516d025a30f0e54aaf4a36bd56cbc992d6888a6
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 05:03:30 2009 +0000

    Several changes together in a murky mess:
    1. Change some "\n" -> '\n'.
    2. eliminte some std::string's by using raw_ostream::indent.
    3. move a bunch of code out of the main arg parser routine into
       a new static HandlePrefixedOrGroupedOption function.
    4. Greatly simplify the implementation of getOptionPred, and make
       it avoid splitting prefix options at = when that doesn't match
       a non-prefix option.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82362 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4de9f27fca2cc69c8313f1d2dfb06a92623c78b1
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 04:27:06 2009 +0000

    Clean up the usage of evaluateICmpRelation's return value.
    Add another line to the ConstantExprFold test to demonstrate the GEPs may not
    wrap around in either the signed or unsigned senses.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82361 91177308-0d34-0410-b5e6-96231b3b80d8

commit a0a39c32b9db28f69a32be709fdfba69d7d00603
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 04:03:41 2009 +0000

    Fix refacto, this code was expecting to stride past the argument prefix.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82360 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43e136586bbd27519d726aec7d6b8234117ea3c7
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 04:03:34 2009 +0000

    Strip trailing whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82359 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90cc3b72cd886acc682e2a287b5b43638f723e28
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 04:03:25 2009 +0000

    A few more tabs -> spaces.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82358 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7f7a3db50c589b634e884b5d1b2f426bc49afcd3
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 03:48:46 2009 +0000

    Remove dead store by taking a guess at what Chris meant. I wasn't able to
    design a testcase that would tickle this behaviour.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82357 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9286265a3ee87750212828f753e362bc4b5ffa56
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sun Sep 20 02:27:06 2009 +0000

    Still one more thing wrong here...

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82356 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3be44e69724c80460d2ef5abab22d802f78615cc
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 20 02:20:51 2009 +0000

    Tabs -> spaces, and remove trailing whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82355 91177308-0d34-0410-b5e6-96231b3b80d8

commit ab2f66670c4c8ecc8e62d989f9d9d9c6f62dc07b
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sun Sep 20 02:19:49 2009 +0000

    Here's fun! It turns out that these filter functions can be internal. If they're
    internal, they shouldn't use the indirect pointer stuff. In the case of
    throw_rethrow_test, it was marked as 'internal' and calculated its own offset to
    its contents.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82354 91177308-0d34-0410-b5e6-96231b3b80d8

commit 216b5548a9287b2e8e3fd20594c20049ff9248ec
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 02:11:47 2009 +0000

    Delete dead code. sext and zext can not turn integers into pointers. Further,
    the optimization described in the comment is only valid with target data.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82353 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0a5bcfcc0e41b0ef8933b974d1ec46665c19fcc4
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 02:02:24 2009 +0000

    convert argname to StringRef, simplifying LookupOption.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82352 91177308-0d34-0410-b5e6-96231b3b80d8

commit d8168dd1312860814da3181fecb491b4c5500ba1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 01:53:12 2009 +0000

    convert 'Value' to StringRef which makes it easier to
    maintain the "null is unspecified, empty is empty" semantics.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82351 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4627c688f7ab3c7951640cc658208826b32c63bd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 01:49:31 2009 +0000

    Change CommaSeparated processing to do it with StringRef instead of temporary std::strings.
    This requires StringRef'izing ProvideOption which I also did.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82350 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c7fc6353a4de5b87d9c22c5714818dfb8f8bf45
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 01:35:59 2009 +0000

    Value* were never meant to be const. Removing constness from the constant
    folder removes a lot of const_casting and requires no changes to clang or
    llvm-gcc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82349 91177308-0d34-0410-b5e6-96231b3b80d8

commit 17e5709887260f988fe94076ef18d967e0c6ade7
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 01:33:46 2009 +0000

    rewrite ParseCStringVector in terms of stringref.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82348 91177308-0d34-0410-b5e6-96231b3b80d8

commit fadd584b7df635545dcd4bb33a3c64adbdad46e0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 01:22:16 2009 +0000

    move a couple non-trivial methods out of line, add new
    find_first_of/find_first_of methods.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82347 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2ee921e886c157a1e6206867240c4314b5db5af7
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 01:11:23 2009 +0000

    coding style cleanup

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82346 91177308-0d34-0410-b5e6-96231b3b80d8

commit 157229d5138579232650753d0514025858b01f8e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 00:40:49 2009 +0000

    convert a bunch more stuff to use StringRef.  The ArgName arguments are now
    stringref because they may not be nul terminated.  For options like -Lfoo
    this now avoids a O(n)  temporary std::strings where N is the length of
    the string after -L.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82345 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2f3b90b1b3b99b963b60b9ed53a67e09c202260f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 00:38:28 2009 +0000

    add size_t and a version of rfind that allows specification of where
    to scan from.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82343 91177308-0d34-0410-b5e6-96231b3b80d8

commit 13c4b63b5151f9f9c434341c2ea43f4f34c2243b
Author: Dale Johannesen <dalej@apple.com>
Date:   Sun Sep 20 00:36:41 2009 +0000

    When computing live intervals for earlyclobber operands,
    we pushed the beginning of the interval back 1, so the
    interval would overlap with inputs that die.  We were
    also pushing the end of the interval back 1, though,
    which means the earlyclobber didn't overlap with other
    output operands.  Don't do this.  PR 4964.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82342 91177308-0d34-0410-b5e6-96231b3b80d8

commit 747e01e815ec69962736f851866adbe28a27d8c8
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 20 00:07:40 2009 +0000

    avoid a bunch of malloc thrashing for PositinoalVals by eliminating
    a std::vector and a bunch of std::string temporaries.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82341 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1f40f38b05cb2662351d1a917ecb5f830a0dba83
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 20 00:04:02 2009 +0000

    Teach the constant folder how to handle a few simple i1 cases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82340 91177308-0d34-0410-b5e6-96231b3b80d8

commit 717f77390b5d4bcbddecc414ce46a23abf684c01
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 19 23:59:02 2009 +0000

    Avoid some temporary strings.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82339 91177308-0d34-0410-b5e6-96231b3b80d8

commit 60b7363a854bd53c30e474836e3a1e04ac2dc163
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 19 23:58:48 2009 +0000

    add some more overloads of StringRef::getAsInteger for
    common and useful integer types.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82338 91177308-0d34-0410-b5e6-96231b3b80d8

commit d867fb4396c8affcdb680108b43cb110b7d12db8
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 19 23:57:31 2009 +0000

    add a simple c_str() method to SmallString.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82337 91177308-0d34-0410-b5e6-96231b3b80d8

commit a741cb48d356de1e0b27a212385e85fd521755b4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Sat Sep 19 22:02:37 2009 +0000

    Revert r82274. It's causing failures in the CINT2006 benchmarks.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82336 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d62cb53f5055c4d43709228c30a2febc6495f48
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 19 20:40:28 2009 +0000

    Prefer super class constructor to explicit initialization.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82335 91177308-0d34-0410-b5e6-96231b3b80d8

commit d36c7729ae080ee3721891794d3617080ddaf550
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 19 20:40:21 2009 +0000

    Tabs -> spaces (really?)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82334 91177308-0d34-0410-b5e6-96231b3b80d8

commit 19f1d447f73de5807acb64281df5d7acaa23ceeb
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 19 20:40:14 2009 +0000

    Fix indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82333 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41716328c597656692f2189f47c7cc56120d2aa5
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 19 20:40:05 2009 +0000

    Strip trailing whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82332 91177308-0d34-0410-b5e6-96231b3b80d8

commit 80b13b31a80b54768abc2da9f00a725209702816
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 19 20:39:50 2009 +0000

    RHS of assignment should be const reference.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82331 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9229fdb0d591d22ad962dfb97d98d12ef56b5833
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Sep 19 20:30:26 2009 +0000

    Remove the default value for ConstantStruct::get's isPacked parameter and
    update the code which was broken by this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82327 91177308-0d34-0410-b5e6-96231b3b80d8

commit b2f35c54ff2c2ef8e03583a0bed0e15bd38426c1
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 19 19:47:14 2009 +0000

    provide a "strtoull" operation that works on StringRef's.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82322 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4a5c6fab5776ded60bc45c264f5f22053062678b
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Sep 19 19:00:06 2009 +0000

    Add a comment explaining why you would ever want to do this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82319 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47d05cbb759287986bb6223325b987caeda53a6e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 19 18:55:05 2009 +0000

    convert a bunch of std::strings to use StringRef.  This should eliminate
    a massive number of temporary strings created when parsing a command line.
    More still left to eliminate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82318 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4980177e93ff0c3d02a6fa98a5c91e4b168d6c0c
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Sep 19 18:33:36 2009 +0000

    Lett users of sparse propagation do their own thing with phi nodes if they want
    to. This can be combined with LCSSA or SSI form to store more information on a
    PHINode than can be computed by looking at its incoming values.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82317 91177308-0d34-0410-b5e6-96231b3b80d8

commit d899f5970f3e1437cff128a7cf3331a8bcf599b9
Author: Duncan Sands <baldrick@free.fr>
Date:   Sat Sep 19 11:25:44 2009 +0000

    The flag "--dot-cfg-only" is at the moment equivalent to the flag "--dot-cfg".
    It prints the content of all bbs, instead of printing empty bbs to make the
    CFG more readable.  Fix this.  Patch by Tobias Grosser.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82315 91177308-0d34-0410-b5e6-96231b3b80d8

commit bb57eefc4bd33cf3e83b2fb56a6b4fd7f4825bfa
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 19 10:09:15 2009 +0000

    Fix funky comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82314 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4ae44e1230cc009186e73112ff34c4092dd5dafd
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 19 10:08:51 2009 +0000

    Update comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82313 91177308-0d34-0410-b5e6-96231b3b80d8

commit 48086603b0774317c5e35a38627e1c811c09f669
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Sep 19 10:01:45 2009 +0000

    Try to speed up the slowest parts of the CommandLine library

    - Replace std::map<std::string with StringMap
    - Eliminate unnecessary std::string copies
    - ~10% speed-up for clang's testsuite on my machine (debug build)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82312 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5f3a54090af5d61d35de2158542ff76fc9ef053f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 19 09:51:03 2009 +0000

    Fix PR4926. When target hook EmitInstrWithCustomInserter() insert new basic blocks and update CFG, it should also inform sdisel of the changes so the phi source operands will come from the right basic blocks.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82311 91177308-0d34-0410-b5e6-96231b3b80d8

commit 48c3c54ceb1fbdcddac9f11a11163a44efe21f55
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Sep 18 22:35:49 2009 +0000

    Enhance transform passes so that they apply the same tranforms to malloc calls as to MallocInst.

    Reviewed by Dan Gohman.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82300 91177308-0d34-0410-b5e6-96231b3b80d8

commit 627f280adfd69bbf8e859de69b6807ae0c9effce
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 22:03:29 2009 +0000

    remove an extraneous mem2reg pass early in the pipe.  Since
    this is run after the 'standard function passes', SRoA was
    recently run.  This saves a domfrontier construction. Thanks
    to Eli for noticing this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82291 91177308-0d34-0410-b5e6-96231b3b80d8

commit b215f0dab024efb9d46497a28404bcde2638e1a3
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 22:01:30 2009 +0000

    reduce indentation by using an early exit, and add a comment,
    no functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82290 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1d8662c4dfa69ff87d42037794cf6e6774c2c512
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 18 21:43:11 2009 +0000

    Fix a comment typo and some whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82285 91177308-0d34-0410-b5e6-96231b3b80d8

commit 764ce99aff6b5db12d99c31467c9e9b7c5612cf2
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 18 21:42:44 2009 +0000

    Fix a typo in an assertion message.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82284 91177308-0d34-0410-b5e6-96231b3b80d8

commit 98c415caf6f8e0eac9b9247fb782d6718430e288
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Sep 18 21:37:56 2009 +0000

    Factor out label difference creation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82282 91177308-0d34-0410-b5e6-96231b3b80d8

commit 82f0ab64c43dcae28ed4f0cb4b8bb69df0b4561d
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Sep 18 21:34:51 2009 +0000

    Enhance analysis passes so that they apply the same analysis to malloc calls as to MallocInst.

    Reviewed by Eli Friedman.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82281 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c5ec3c11bd3283bfd8bbf7ce12bb81b8d3e3ed0
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 18 21:23:12 2009 +0000

    Delete the label names from this test to make it less fragile.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82276 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8c065b334c41ba54d98ad45a6c5b4fdd60c06d2c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Fri Sep 18 21:14:36 2009 +0000

    It's inefficient to have place the exception tables (which contain the LSDA)
    into the __DATA section. At launch time, dyld has to update most of the section
    to fix up the type info pointers. It's better to place it into the __TEXT
    section and use pc-rel indirect pointer encodings. Similar to the personality
    routine.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82274 91177308-0d34-0410-b5e6-96231b3b80d8

commit d7dc983029cf293dd67637c27b92c04c0baf968b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 18 21:02:19 2009 +0000

    Enhance EmitInstrWithCustomInserter() so target can specify CFG changes that sdisel will use to properly complete phi nodes.
    Not functionality change yet.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82273 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8cd2ec566b2bbfa3e07458bc0050af859676fcd4
Author: Shantonu Sen <ssen@apple.com>
Date:   Fri Sep 18 20:35:59 2009 +0000

    Fix cmake build, which has a different -I that
    causes the "../foo" to not find the file

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82270 91177308-0d34-0410-b5e6-96231b3b80d8

commit f283fb255f535d56d8cd5f86058ccf2359800e86
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 20:22:52 2009 +0000

    Make a new X8632_MachoTargetObjectFile TLOF implementation whose
    getSymbolForDwarfGlobalReference is smart enough to know that it
    needs to register the stub it references with MachineModuleInfoMachO,
    so that it gets emitted at the end of the file.

    Move stub emission from X86ATTAsmPrinter::doFinalization to the
    new X86ATTAsmPrinter::EmitEndOfAsmFile asmprinter hook.  The important
    thing here is that EmitEndOfAsmFile is called *after* the ehframes are
    emitted, so we get all the stubs.

    This allows us to remove a gross hack from the asmprinter where it would
    "just know" that it needed to output stubs for personality functions.
    Now this is all driven from a consistent interface.

    The testcase change is just reordering the expected output now that the
    stubs come out after the ehframe instead of before.

    This also unblocks other changes that Bill wants to make.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82269 91177308-0d34-0410-b5e6-96231b3b80d8

commit b611307c9730ae90448fcacfd8ee9d0d208cc3ee
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 20:17:03 2009 +0000

    add a new hook to allow targets to splat stuff at the end of the file.
    Overriding doFinalization is pretty lame.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82268 91177308-0d34-0410-b5e6-96231b3b80d8

commit 899369d4ad9633b3fcf4aba63dc411ce1988ad75
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 18 20:15:22 2009 +0000

    Model the carry bit on ppc32.  Without this we could
    move a SUBFC (etc.) below the SUBFE (etc.) that consumed
    the carry bit.  Add missing ADDIC8, noticed along the way.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82266 91177308-0d34-0410-b5e6-96231b3b80d8

commit 12e03298135939c9d40f25f5f762d9522ca352c2
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 18 19:59:53 2009 +0000

    Add support for using the FLAGS result of or, xor, and and instructions
    on x86, to avoid explicit test instructions. A few existing tests changed
    due to arbitrary register allocation differences.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82263 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c8eecdb5aaa4e078ffa0a058219a54dbee98274
Author: Sean Callanan <scallanan@apple.com>
Date:   Fri Sep 18 19:35:23 2009 +0000

    Added RCL and RCR (rotate left and right with a
    carry bit) instructions to the Intel instruction
    tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82260 91177308-0d34-0410-b5e6-96231b3b80d8

commit adc37616a0ed90c8d25360168e395653b8ad9bd5
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Sep 18 19:26:43 2009 +0000

    Write and read metadata attachments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82259 91177308-0d34-0410-b5e6-96231b3b80d8

commit 811ebe0ef3c476c5cbf04d6c2bf362f56a650eec
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Fri Sep 18 19:20:02 2009 +0000

    Update malloc call creation code (AllocType is now the element type of the malloc, not the resulting type).

    In getMallocArraySize(), fix bug in the case that array size is the product of 2 constants.

    Extend isArrayMalloc() and getMallocArraySize() to handle case where malloc is used as char array.

    Ensure that ArraySize in LowerAllocations::runOnBasicBlock() is correct type.

    Extend Instruction::isSafeToSpeculativelyExecute() to handle malloc calls.

    Add verification for malloc calls.

    Reviewed by Dan Gohman.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82257 91177308-0d34-0410-b5e6-96231b3b80d8

commit 600abb363005c6b5abc9385b35c37720cb2eacbf
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 18:34:29 2009 +0000

    duncan points out the EH selector values are signed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82245 91177308-0d34-0410-b5e6-96231b3b80d8

commit 02897795c891a7e250d03153f391851189fb8f5b
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 18:31:37 2009 +0000

    convert some stuff to StringRef to avoid temporary std::strings.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82244 91177308-0d34-0410-b5e6-96231b3b80d8

commit e5c11a87071a6afaac5df49fb5e552de1d2e5a9a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 18:10:19 2009 +0000

    add a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82236 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7e54f154ec3d950827ff8e29f01ca55ae958db0f
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 18 18:08:55 2009 +0000

    This file can need access to the X86 instruction enums when the table exceeds 32-bits.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82235 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4dc36eb1b47ec2157748668fb71943f59711c909
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 18 17:48:05 2009 +0000

    Fix a few more conversion warnings on 4.0

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82232 91177308-0d34-0410-b5e6-96231b3b80d8

commit d852f4d69c40e8ad68c4eb43c38e82da068414bf
Author: Mike Stump <mrs@apple.com>
Date:   Fri Sep 18 17:10:27 2009 +0000

    Update to latest versions of config.guess and config.sub from
    http://savannah.gnu.org/projects/config

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82229 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3789f872b0ac8f9d22d99696164e04b664af90f6
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Fri Sep 18 16:57:42 2009 +0000

    Allow symbols to start from the digit if target requests it. This allows, e.g. pinning
    variables to specified absolute address. Make use of this feature for MSP430.
    This unbreaks PR4776.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82227 91177308-0d34-0410-b5e6-96231b3b80d8

commit 052e60d59a4f423089f1f088d0e1e7ac61bd5be7
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Fri Sep 18 16:46:16 2009 +0000

    Stop using alloca.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82225 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50514c7bab532bd061d9b97bcaf98b5e960653db
Author: Xerxes Ranby <xerxes@zafena.se>
Date:   Fri Sep 18 09:50:00 2009 +0000

    Revert r82214 completely to fix build.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82218 91177308-0d34-0410-b5e6-96231b3b80d8

commit f3233f2b427e9abfbe1633a91e8e84e7bbb19b43
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 18 08:26:06 2009 +0000

    Revert r82214. It broke 403.gcc on x86_64 / Darwin.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82215 91177308-0d34-0410-b5e6-96231b3b80d8

commit ac00d566d4070167ca5aa1cb48f83fa55b1535b9
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 18 08:16:04 2009 +0000

    Fix a bug in sdisel switch lowering code. When it updates the phi nodes in switch successor blocks, it can introduce multiple phi operands of the same value from different blocks (and may not be on the predecessor list).

    This can be seen on CodeGen/Generic/2006-09-06-SwitchLowering.ll. But it's not known to cause any real regression (but I have added an assertion for it now).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82214 91177308-0d34-0410-b5e6-96231b3b80d8

commit 28c17afa6abed7695d7c148253631920458ee226
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Fri Sep 18 07:36:47 2009 +0000

    Add newlines.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82206 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed2ccedb5acf8e5b7f7932aa87f0b188856b894d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 23:56:41 2009 +0000

    make this testcase check darwin32 also

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82182 91177308-0d34-0410-b5e6-96231b3b80d8

commit f494e5b979e9a6d7f7f6db0d93dc10b4d1caa877
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 23:55:12 2009 +0000

    rename test

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82181 91177308-0d34-0410-b5e6-96231b3b80d8

commit b51aa3322dc54cc149250513132c30574b2e003c
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 23:54:54 2009 +0000

    tolerate llvm.eh.selector.i64 on 32-bit systems and llvm.eh.selector.i32 on
    64-bit systems.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82180 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6c5eea69ce28fd4909f68486bb97ad470e989575
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 23:54:26 2009 +0000

    convert to filecheck

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82179 91177308-0d34-0410-b5e6-96231b3b80d8

commit ec1d9adb02b80de2a1e4219c271ca2cad2362000
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 23:42:06 2009 +0000

    rename file

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82178 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7fbb035781529abc1df7b4e4f6471dd977708e3b
Author: Julien Lerouge <jlerouge@apple.com>
Date:   Thu Sep 17 23:27:10 2009 +0000

    Use __attribute__((__used__)) if GCC >= 3.1 (seems to be the oldest GCC
    supporting this attribute).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82177 91177308-0d34-0410-b5e6-96231b3b80d8

commit 941264e406202121ddb019dffa5e1084819790c3
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 17 23:05:07 2009 +0000

    A testcase!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82176 91177308-0d34-0410-b5e6-96231b3b80d8

commit 91c792366e0bc38cb14028cd2068b92104f7db51
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 17 23:04:48 2009 +0000

    Fix parsing of optional metadata for 'load', 'store' and 'alloc' instructions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82175 91177308-0d34-0410-b5e6-96231b3b80d8

commit c953c1da67f69a4698a7f5379775000e12599134
Author: John McCall <rjmccall@apple.com>
Date:   Thu Sep 17 20:35:18 2009 +0000

    Fix a few places where PointerIntPair was using PointerLikeTypeTraits<PointerTy>
    instead of the PtrTraits provided.  Allows PointerIntPair to contain a
    PointerUnion safely, as long as the bits add up.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82163 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0ca4b2cefc8cb9260b1467917e630ed7d7d1f6a2
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 17 20:12:05 2009 +0000

    Add an svn:ignore.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82162 91177308-0d34-0410-b5e6-96231b3b80d8

commit ee62b0424d8c75617484b2d4a9383565044eb5aa
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 18:49:52 2009 +0000

    pass machinemoduleinfo down into getSymbolForDwarfGlobalReference,
    currently unused.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82157 91177308-0d34-0410-b5e6-96231b3b80d8

commit c20e8bfb90176ee9cd27b027c11a3c8c9c117dd6
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 17 18:05:20 2009 +0000

    Teach ScalarEvolution how to reason about no-wrap flags on loops
    where the induction variable has a non-unit stride, such as {0,+,2}, and
    there are expressions such as {1,+,2} inside the loop formed with
    or or add nsw operators.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82151 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47472be0fc842626bbc7103ca8c2d724c213d67e
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Sep 17 17:57:26 2009 +0000

    grammar

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82150 91177308-0d34-0410-b5e6-96231b3b80d8

commit 961e43f21b9c3565598054313e7b928b7d0bf656
Author: Jim Grosbach <grosbach@apple.com>
Date:   Thu Sep 17 17:55:55 2009 +0000

    grammar

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82149 91177308-0d34-0410-b5e6-96231b3b80d8

commit dca235bfe8e20482ce3ad2a42dcf5897756314f2
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 17 17:46:53 2009 +0000

    Another try at fixing compile warnings on 4.0

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82148 91177308-0d34-0410-b5e6-96231b3b80d8

commit a7af40ce842fb14e42581f038d12e76a969121e8
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Sep 17 14:51:57 2009 +0000

    Initialize HasMetadata to zero.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82145 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0add5c53c467b953fb803c8c50e450eeb3a42bc9
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 17 06:37:07 2009 +0000

    Remove test cases using -regalloc=simple.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82130 91177308-0d34-0410-b5e6-96231b3b80d8

commit b21f415e57b24dbb1a962ddab5fd21ebaebc7d0d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 17 05:48:07 2009 +0000

    Remove simple regalloc. It has bit rotted.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82127 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1581dc7e9c17c8c7e315d70e0b09e8b56b18f520
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 17 01:08:43 2009 +0000

    add a version of the APFloat constructor that initializes to 0.0

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82110 91177308-0d34-0410-b5e6-96231b3b80d8

commit f7f012381f5d47bb4f8a5a4663311daee8692cbf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 17 00:57:15 2009 +0000

    Fix PR4910: Broken logic in coalescer means when a physical register liveness is being shortened, the sub-registers were not. The symptom is the register allocator could not find a free register for this particular test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82108 91177308-0d34-0410-b5e6-96231b3b80d8

commit 119fdf6a2815d88d5fdfc5ada6897c96c9f83a0d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 17 00:14:44 2009 +0000

    Some platforms may need malloc.h for alloca.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82100 91177308-0d34-0410-b5e6-96231b3b80d8

commit f955d34bbdbb3377d2e3dc4aa54219b01ba463bc
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 17 00:06:48 2009 +0000

    Update CMake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82097 91177308-0d34-0410-b5e6-96231b3b80d8

commit 23f33d74e817e171decf3915781634cbe9b19a2a
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 22:59:28 2009 +0000

    Added the LODS (load byte into register, usually
    as part string parsing) instructions to the Intel
    instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82089 91177308-0d34-0410-b5e6-96231b3b80d8

commit d86d635d2831ee15f0e5bafb597d29f0318aaeb4
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 16 22:38:48 2009 +0000

    Add StringRef::{rfind, rsplit}

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82087 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2eddf5d5241b54e02b035b40f16ffa1e5effbe19
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 21:55:34 2009 +0000

    Added the LAR (load segment access rights)
    instructions to the Intel instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82084 91177308-0d34-0410-b5e6-96231b3b80d8

commit 503784b9ecdc71df54e3f2b58917b5970c6fcdf5
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 21:50:07 2009 +0000

    Added the LOOP family of instructions to the Intel
    instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82083 91177308-0d34-0410-b5e6-96231b3b80d8

commit 11490dcdcd8a798d9d009bfb12a32ab069a0b530
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 21:11:23 2009 +0000

    Added an alternate form of register-register CMP
    to the Intel instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82081 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3f7aeddf89537d10eebd50196576e3ec91d066e9
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 21:09:07 2009 +0000

    Fix typo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82080 91177308-0d34-0410-b5e6-96231b3b80d8

commit a0fbb00ae6d27128232f1c11550b70bddb6fa76d
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 20:39:11 2009 +0000

    At iSel time, update DebugLoc based on debug info attached with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82077 91177308-0d34-0410-b5e6-96231b3b80d8

commit a653f3541148079687b4c8b95e2dff2e1c91ad77
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 16 20:25:11 2009 +0000

    Add a new pass for doing late hoisting of floating-point and vector
    constants out of loops. These aren't covered by the regular LICM
    pass, because in LLVM IR constants don't require separate
    instructions. They're not always covered by the MachineLICM pass
    either, because it doesn't know how to unfold folded constant-pool
    loads. This is somewhat experimental at this point, and off by
    default.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82076 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1ba76818a6b3281b86c8391cc07aafe821ad45cb
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 20:21:17 2009 +0000

    Print debug info attached with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82075 91177308-0d34-0410-b5e6-96231b3b80d8

commit 94ef1628bb9b33484a3887a742fb4cc662b41fd8
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 16 20:20:44 2009 +0000

    Expand vector floating-point conversions not supported by NEON.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82074 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1a2d32471a3fdc8f274411142bc8bc22294fa470
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 16 19:18:41 2009 +0000

    Now that llc can read .ll files directly, teach it to recognize .ll as
    an extension, so that the default output filename for foo.ll is foo.s,
    not foo.ll.s

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82071 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5223bf761d1d6ee0641bf2644e25265e84801926
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 18:20:05 2009 +0000

    Provide a way to extract location info from DILocation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82064 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7464a698dfc9a4b4a42a303e71eb327768288463
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 18:18:06 2009 +0000

    Parse debug info attached with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82063 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9514eca3ca9a35a0f5fc01763f6556bec579cc0e
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 18:16:11 2009 +0000

    Add an interface to attach debugging information with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82062 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b1fad3ca2acec2db8d4c4545b8d5f74a2500b0f
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 16 18:09:00 2009 +0000

    Add llvm::Metadata to manage metadata used in a context.
    This interface will be used to attach metadata with an instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82060 91177308-0d34-0410-b5e6-96231b3b80d8

commit 86776f75bfef82e33cbd7b9a63c1963b1dd1e7b8
Author: Kevin Enderby <enderby@apple.com>
Date:   Wed Sep 16 18:08:00 2009 +0000

    Fixed some problems with the logic of parsing line comments by adding
    isAtStartOfComment and using that instead in two places where a loop
    to check if the char was in MAI.getCommentString().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82059 91177308-0d34-0410-b5e6-96231b3b80d8

commit 01b83cfcffb62aea094d46d17348d592b0259825
Author: Kevin Enderby <enderby@apple.com>
Date:   Wed Sep 16 17:18:29 2009 +0000

    Fix incorrect assert that should be a user error for code like 'mov $0, %%eax'.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82054 91177308-0d34-0410-b5e6-96231b3b80d8

commit 09cf2b6d63c865ade854b6ec1cf62aecf9e9dcb2
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 16 16:50:24 2009 +0000

    Change FoldPHIArgBinOpIntoPHI to decline folding if it would introduce two
    phis, similar to the FoldPHIArgGEPIntoPHI change.

    Also, delete some comments that don't reflect the code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82053 91177308-0d34-0410-b5e6-96231b3b80d8

commit 77b713700c3d57b01ec3463dd873f546905a9f3c
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 16 16:33:59 2009 +0000

    Fix the comment in this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82051 91177308-0d34-0410-b5e6-96231b3b80d8

commit e680e23e781542c39ba1501bee713dd3bf64ad09
Author: Xerxes Ranby <xerxes@zafena.se>
Date:   Wed Sep 16 14:36:35 2009 +0000

    Make cmake generated llvm-config output correct JIT backend for non X86 targets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82049 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9ccaf3f7c56c9f3e7e3359165f387895a1cd5ffa
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Sep 16 11:43:12 2009 +0000

    Don't sort the vector when it is empty. This should fix some expensive checking
    failures.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82040 91177308-0d34-0410-b5e6-96231b3b80d8

commit ec139a0819923967e3c2b8a8e5fafa8859056b8b
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 16 11:35:50 2009 +0000

    Reapplied r81355 with the problems fixed.
    (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090907/086737.html and
    http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090907/086746.html)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82039 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9f16e4059d7e325248642d3a8051d83bec4c7404
Author: Xerxes Ranby <xerxes@zafena.se>
Date:   Wed Sep 16 10:18:36 2009 +0000

    updated lib/CodeGen/CMakeLists.txt to unbreak cmake build after r82018

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82038 91177308-0d34-0410-b5e6-96231b3b80d8

commit b072028405dca8e4fab7f655c7622c2578e9353a
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 16 09:26:52 2009 +0000

    Preserve ProfileInfo during CodeGenPrepare.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82034 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4117b16b1ef23390d1f1bde4a3f0a1d29250f667
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 06:25:03 2009 +0000

    move FnStubs/GVSTubs/HiddenGVStub handling out of the X86 asmprinter
    and use MachineModuleInfoMachO instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82022 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3e800a55a04aae2d825fbcf5aed2102a68eaec5
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 06:04:53 2009 +0000

    revert a hunk of r82018 that wasn't supposed to go in yet.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82020 91177308-0d34-0410-b5e6-96231b3b80d8

commit f8a575424917e1f0e6921529c7be86d8825f7778
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 06:03:48 2009 +0000

    add a new MachineModuleInfoMachO class, which is the per-module
    stuff common across all macho targets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82018 91177308-0d34-0410-b5e6-96231b3b80d8

commit 956017391974f44b14d1cb75e824e986841aeea6
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:42:12 2009 +0000

    apparently russians are really hard to sort or something!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82016 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47d77721c88c70fa8cadbff68df8f2ac1e250e13
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:37:13 2009 +0000

    I can sort, no really.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82015 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5ee2b3f29d829ac1b99d97d943ffea955d5ee210
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:36:54 2009 +0000

    make more clear since it is sorted by last name now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82014 91177308-0d34-0410-b5e6-96231b3b80d8

commit 520339201d5c16d1c03d3e129b4cc00cb1f4c1dd
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:36:07 2009 +0000

    Doug is now the code owner for most of the Clang frontend.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82013 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16fcdf9d05d09acde6146d531067fab0bf24f822
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:26:00 2009 +0000

    the pointer MMI keeps will start out with object-file format specific stuff

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82012 91177308-0d34-0410-b5e6-96231b3b80d8

commit 242f740dcbfc14d95a6eaf5305ca794d28df9a13
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:25:43 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82011 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b658b8de70a1feabe23c000212d913d2816c7c0
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 05:20:33 2009 +0000

    rearrange X86ATTAsmPrinter::doFinalization, making a scan of
    the global variable list only happen for COFF targets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82010 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0f22f97df2231f18b11b6fe1847dc51a4da98747
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 04:59:30 2009 +0000

    Ted is christened as the owner of the clang static analyzer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82008 91177308-0d34-0410-b5e6-96231b3b80d8

commit 500fba8363dccdd3dd29495831e5d689ddc50c49
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 04:57:15 2009 +0000

    remove the AsmPrinter::printMCInst hook hack now that
    we have MCInstPrinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82006 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0390a18ad30aa3ed70d39b98ded744755434fde
Author: Shantonu Sen <ssen@apple.com>
Date:   Wed Sep 16 04:44:00 2009 +0000

    fix cmake build

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81999 91177308-0d34-0410-b5e6-96231b3b80d8

commit 253e466f7a96658151b4c89c871386ec401311a0
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 04:12:47 2009 +0000

    use an accessor to simplify code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81997 91177308-0d34-0410-b5e6-96231b3b80d8

commit 63715c73c20ed0358d5774bb481c9437fd234f54
Author: Nate Begeman <natebegeman@mac.com>
Date:   Wed Sep 16 03:20:46 2009 +0000

    Do not try and sink a load whose chain result has more than one use, when
    trying to create RMW opportunities in the x86 backend.  This can cause a
    cycle to appear in the graph, since the other uses may eventually feed into
    the TokenFactor we are sinking the load below.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81996 91177308-0d34-0410-b5e6-96231b3b80d8

commit 51b7a9968562cad4c543634dcf5b3e3ec1340611
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 02:57:13 2009 +0000

    Added the ENTER instruction, which sets up a stack
    frame, to the Intel instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81995 91177308-0d34-0410-b5e6-96231b3b80d8

commit ca503e043f3871c7dd5254613b505f0f0e36c361
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 02:28:43 2009 +0000

    Added the definitions for one-bit left shifts to
    the Intel instruction tables.

    The patterns will stay blank because ADD reg, reg
    is faster, but having the encoding available is
    useful for the disassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81994 91177308-0d34-0410-b5e6-96231b3b80d8

commit 37a534b8dca3f6890042845b8ebb50d47ffc2c08
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 16 02:01:52 2009 +0000

    Don't sink gep operators through phi nodes if the result would require
    more than one phi, since that leads to higher register pressure on
    entry to the phi. This is especially problematic when the phi is in
    a loop header, as it increases register pressure throughout the loop.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81993 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1d64b2874ad916274fb18db31b1d898d58cb8076
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 01:54:38 2009 +0000

    Removed a few instructions that were already
    covered by other definitions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81992 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8886dc29cd311a78fd1f672904fd9a3af51c883c
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 01:46:41 2009 +0000

    Big change #1 for personality function references:
    Eliminate the PersonalityPrefix/Suffix & NeedsIndirectEncoding
    fields from MAI: they aren't part of the asm syntax, they are
    related to the structure of the object file.

    To replace their functionality, add a new
    TLOF::getSymbolForDwarfGlobalReference method which asks targets
    to decide how to reference a global from EH in a pc-relative way.

    The default implementation just returns the symbol.  The default
    darwin implementation references the symbol through an indirect
    $non_lazy_ptr stub.  The bizarro x86-64 darwin specialization
    handles the weird "foo@GOTPCREL+4" hack.

    DwarfException.cpp now uses this to emit the reference to the
    symbol in the right way, and this also eliminates another
    horrible hack from DwarfException.cpp:

    -    if (strcmp(MAI->getPersonalitySuffix(), "+4@GOTPCREL"))
    -      O << "-" << MAI->getPCSymbol();

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81991 91177308-0d34-0410-b5e6-96231b3b80d8

commit 73944d4e73d42ea7fcc2a3408c814a13c20c9b29
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 16 01:34:52 2009 +0000

    lit: Add a custom test format for use in clang.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81987 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0da556cc3eeeac05071458f1544ef7ee05b5b65
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 01:29:11 2009 +0000

    remove a dead variable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81985 91177308-0d34-0410-b5e6-96231b3b80d8

commit af90e3e1f69396d48d549d968e969d1d181ee4b9
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 01:26:31 2009 +0000

    add a helper method for creating MCSymbol and MCSymbolRefExpr at
    the same time.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81984 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d5824cc4efb252b69c86e871e4835ece6e16975
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 16 01:13:52 2009 +0000

    Added a variety of floating-point and SSE instructions.
    All of these do not have patterns (they're for the
    disassembler).

    Many of the floating-point instructions will probably
    be rolled into definitions that have patterns, and may
    eventually be superseded by mdefs.  So I put them
    together and left a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81979 91177308-0d34-0410-b5e6-96231b3b80d8

commit 57c76b5eea6a1b4202941a0c3e7d06f0a00c8485
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:35:39 2009 +0000

    inline AsmPrinter::getCurrentFunctionEHName into its only caller.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81970 91177308-0d34-0410-b5e6-96231b3b80d8

commit 71dd44de32bd74e60887991c9f06ab3917229a52
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 16 00:32:15 2009 +0000

    Expand some more vector operations not supported by Neon.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81969 91177308-0d34-0410-b5e6-96231b3b80d8

commit e25bbf679b89aa172316ec349b4a541db246fde1
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:24:31 2009 +0000

    remove a dead bool.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81968 91177308-0d34-0410-b5e6-96231b3b80d8

commit c54a0890ddc80c1d7efa21695fb3159ef1b57cf8
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:17:39 2009 +0000

    Eliminate AsmPrinter::EmitExternalGlobal, inlining its (now)
    one implementation into its one caller.  This eliminates a totally
    awesome and gratuitous hack where we casted a Function* to
    GlobalVariable*.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81967 91177308-0d34-0410-b5e6-96231b3b80d8

commit 098abb4f0f560ae8e2c2e649f7e16046740f3cda
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 16 00:17:28 2009 +0000

    Neon does not support vector divide or remainder.  Expand them.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81966 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8c7099069742b1fda9b8c3c7d513e67e566c6dbb
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:14:19 2009 +0000

    eliminate the PPC backend's implementation of EmitExternalGlobal
    and use PersonalityPrefix/Suffix to achieve the same effect (like
    the x86 backend).

    This changes the code generated for ppc static mode, but guess what,
    we were generating this before:

    	.byte	0x9B                                        ; Personality (indirect pcrel sdata4)
    	.long	___gxx_personality_v0-.                     ; Personality

    which is not correct! (it is not an 'indirect' reference).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81965 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5632fabd0a6e1f30e9cbbd6c2b6d3dce6dcc656a
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:08:41 2009 +0000

    eliminate the horrid AsmPrinter::getGlobalLinkName method, inlining
    it into all of its call sites and simplifying them.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81962 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe0e2534a5b2b89019a3d0ed2b55b0acb5ae4498
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 16 00:08:07 2009 +0000

    simplify some code

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81961 91177308-0d34-0410-b5e6-96231b3b80d8

commit e8fefa0a3f88ebd6f5e24617ca5d5fe7c4734ef9
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 15 23:55:57 2009 +0000

    Expand all v2f64 arithmetic operations for Neon.
    Radar 7200803.  (This should also fix the
    SingleSource/UnitTests/Vector/sumarray-dbl test.)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81959 91177308-0d34-0410-b5e6-96231b3b80d8

commit dbaf51315fa3a150fca8aeed3e2b146d48749c9f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 23:40:07 2009 +0000

    Put back non-obsolete -f sections for 'opt'.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81954 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7a01257a044b62d94b6a049eb0d682ad35015ba3
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 15 23:37:51 2009 +0000

    Added far return instructions (that is, returns to
    code in other segments) to the Intel instruction
    tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81953 91177308-0d34-0410-b5e6-96231b3b80d8

commit 36d0329a368bc31e7129c92b2e1c38559793a48d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 23:11:32 2009 +0000

    remove some horrible MAI hooks which fortunately turn out to be always empty.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81946 91177308-0d34-0410-b5e6-96231b3b80d8

commit 451e8e6330161627a231f22d167d49dd0c374db8
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 22:58:35 2009 +0000

    strength reduce a call to PrintRelDirective(true).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81942 91177308-0d34-0410-b5e6-96231b3b80d8

commit 72ba67246b322935e03e118480c6b8c235669b35
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 22:44:26 2009 +0000

    add hooks to hang target-specific goop off MachineModuleInfo,
    move MachineFunctionInfo virtual method out of line to give it
    a home.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81940 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4c9a0d70e34e1cc679f71bc5ca8e9554255b18d6
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 22:30:11 2009 +0000

    Do not add the SVOffset to the Node CSE ID.  The same pointer argument cannot have different
    SVOffsets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81937 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1482ed20fd413149c26101b5e3741e6ffe7ecf4e
Author: Eric Christopher <echristo@apple.com>
Date:   Tue Sep 15 21:56:46 2009 +0000

    Expand on comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81928 91177308-0d34-0410-b5e6-96231b3b80d8

commit 84df931976ddcf564c582d7385ec8ba305478ed7
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 15 21:43:27 2009 +0000

    Updated comments per Eli's suggestion.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81923 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3941cf7d66ec881570c0025013a9d70bcbfd1110
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 15 20:58:02 2009 +0000

    Convert more tests to FileCheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81915 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7e7df0ef9db04445ae99dd1257213132b00d7010
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 15 20:53:57 2009 +0000

    Added register-to-register ADD instructions to the
    Intel tables, where the source operand is
    specified by the R/M field and the destination
    operand by the Reg field.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81914 91177308-0d34-0410-b5e6-96231b3b80d8

commit 48f5114de937c031d43c91691806b04f55d35e2b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 20:31:46 2009 +0000

    Drop the raw_ostream required buffer size to 1.

     - As best I can tell, we have eliminated all the code which used to require a
       larger buffer size.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81912 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6dee039bc647d7ac37a135272648af92dec812e1
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 20:31:35 2009 +0000

    Remove references to obsolete -f option.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81911 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0a2e0dfe5ec8c5fd8f15bb1f085d635708a7203c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 20:31:28 2009 +0000

    Update llc/opt PODs to clarify they support .ll input.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81910 91177308-0d34-0410-b5e6-96231b3b80d8

commit ef65e0c69530a1832ba84028c8a25096b41e5f04
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 20:31:12 2009 +0000

    Fix -Asserts warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81909 91177308-0d34-0410-b5e6-96231b3b80d8

commit 91304e2755539fa6e746731028f25083ab09722f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 15 20:09:17 2009 +0000

    lit: When finding nested test suites, check first in the execpath in case there
    is a site configuration.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81902 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2494777a2cb2e6e78713b12c0658523856b44ecb
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 19:05:41 2009 +0000

    Better solution for tracking both the original alignment of the access, and the current alignment based
    on the source value offset.  This avoids increasing the size of mem nodes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81897 91177308-0d34-0410-b5e6-96231b3b80d8

commit fb75cc9708004e58a40d63b3061b22b44a1c84b2
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 15 18:56:13 2009 +0000

    Correct comment pasto

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81896 91177308-0d34-0410-b5e6-96231b3b80d8

commit ad87a3af74f9e84f1092e2a97ce28a98deb77437
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 15 18:47:29 2009 +0000

    Added a new register class for segment registers
    to the Intel register table.
    Added 16- and 64-bit MOVs to and from the segment
    registers to the Intel instruction tables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81895 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5bf764bd78d33c4a1e1e0fc2dfdc72044ee70030
Author: Dale Johannesen <dalej@apple.com>
Date:   Tue Sep 15 18:32:14 2009 +0000

    Change the marker byte for stubs from 0xcd to 0xce (another form of
    interrupt instruction, which shouldn't arise any other way).  0xcd is
    also used by JITMemoryManager to initialize the buffer to garbage,
    which means it could appear following a noreturn call even when
    that is not a stub, confusing X86CompilationCallback2.  PR 4929.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81888 91177308-0d34-0410-b5e6-96231b3b80d8

commit d32037b8c08567c1b4e544cec0b3962f9172ae54
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 18:27:02 2009 +0000

    fix PR4984 by ensuring that fastisel adds properly sign extended GEP displacement
    values to machineinstrs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81886 91177308-0d34-0410-b5e6-96231b3b80d8

commit fae4dc746dee18665ac310518148c503373eadd4
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 18:23:37 2009 +0000

    rename test

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81884 91177308-0d34-0410-b5e6-96231b3b80d8

commit e22ad00d2c41cf95d58c05978b106cadd08d0fcc
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 18:23:23 2009 +0000

    convert to filecheck

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81882 91177308-0d34-0410-b5e6-96231b3b80d8

commit 29af822131334c1b2507844c4807ba7852390fb0
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 18:03:13 2009 +0000

    add missing file

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81881 91177308-0d34-0410-b5e6-96231b3b80d8

commit 19f0725ebd200ab818b0431a64943eebf61c794d
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 15 17:56:18 2009 +0000

    Handle AddrMode4 for Thumb2 in rewriteT2FrameIndex.  This occurs for
    VLDM/VSTM instructions, and without this check, the code assumes that an
    offset is allowed, as it would be with VLDR/VSTR.  The asm printer,
    however, silently drops the offset, producing incorrect code.  Since the
    address register in this case is either the stack or frame pointer, the
    spill location ends up conflicting with some other stack slot or with
    outgoing arguments on the stack.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81879 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe9c3803a79895c50881154a3a381f61692e13ae
Author: Sandeep Patel <deeppatel1987@gmail.com>
Date:   Tue Sep 15 17:53:11 2009 +0000

    Fix superreg use in ARMAsmPrinter. Approved by Anton Korobeynikov.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81878 91177308-0d34-0410-b5e6-96231b3b80d8

commit 49102def1108f7c206537893c0ad47d359d00883
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 17:46:24 2009 +0000

    several major improvements to the sparc backend: support for weak linkage
    and PIC codegen.  Patch by Venkatraman Govindaraju!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81877 91177308-0d34-0410-b5e6-96231b3b80d8

commit 03dd9bb9a759b3cc6c658910a3923f8fb869e2fd
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 16:14:44 2009 +0000

    Teach ValueTracking how to look through GlobalAliases. GlobalAliases are
    not folded in the constant folder because the constant folder doesn't
    simplify ConstantExpr operands.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81864 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2b1760f8c98ea4893ee8a9a97c351adf9a377219
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 16:00:30 2009 +0000

    Fix an accidental inversion of the inbounds flag.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81862 91177308-0d34-0410-b5e6-96231b3b80d8

commit 72444efbd46645993821a5167411656371e995b1
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:58:07 2009 +0000

    When a constant's type is refined, update the constant in place
    instead of cloning and RAUWing it.

     - Make AbstractTypeUser a friend of Value so that it can offer
       its subclasses a way to update a Value's type in place. This
       is better than a universally visible setType method on Value,
       and it's sufficient for the immediate need.

     - Eliminate the constant "convert" functions. This eliminates a
       lot of logic duplication, and fixes a complicated bug where a
       constant can't actually be cloned during the type refinement
       process because some of the types that its folder needs are
       half-destroyed, being in the middle of refinement themselves.

     - Move the getValType functions from being static overloaded
       functions in Constants.cpp to be members of class template
       specializations in ConstantsContext.h. This means that the
       code ends up getting instantiated twice, however it also
       makes it possible to eliminate all "convert" functions, so
       it's not a big net code size increase. And if desired, the
       duplicate instantiations could be eliminated with some
       reorganization.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81861 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0682a468f8ced6a32d618480ce6ee3367cfaecc4
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:38:31 2009 +0000

    Use llvm-link -S instead of using llvm-dis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81860 91177308-0d34-0410-b5e6-96231b3b80d8

commit d5939a47767d82e5d4d108c258b7f2320e30bc81
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:35:07 2009 +0000

    Give llvm-link a -S option.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81859 91177308-0d34-0410-b5e6-96231b3b80d8

commit 97b59da0a82c96d077a36f4e4a4417529d0e060c
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:33:42 2009 +0000

    Don't bother using a PassManager just to print a Module.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81858 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43dcc4032dde26fad0276e724095b3f37853c6da
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:09:54 2009 +0000

    Restore a comment that was lost in the merge.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81857 91177308-0d34-0410-b5e6-96231b3b80d8

commit 95bb35e9ba16fcbff3d32a0e32d43f876203d172
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 15:08:33 2009 +0000

    Fix apostrophos.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81856 91177308-0d34-0410-b5e6-96231b3b80d8

commit 93a8e411672c28483ba69f42ad33746adedb7195
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 15 07:08:25 2009 +0000

    Add more newlines to make up for the ones removed from the end of instructions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81851 91177308-0d34-0410-b5e6-96231b3b80d8

commit 527a06706f7a5582eb5ef4dbe1bd2cb2b893f5a0
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 15 07:05:12 2009 +0000

    Forgot this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81850 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6a48b00dc985aaf83b11bf1c6b31ccd4ba49ede6
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 15 06:45:16 2009 +0000

    Another try at early partial coalescing. Identity phi source copies (their sources are defined by phi join def) are coalesced. And the phi join copy is backward copy propagated into the other copies.

    Still miscompiling some tests. :-(

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81849 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9983d964324ffc3bba0d3dd128453d7e49af3c3d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 06:34:29 2009 +0000

    convert to filecheck

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81848 91177308-0d34-0410-b5e6-96231b3b80d8

commit b1208609ee4d18b2c0adaf860b72d0b2d5fd43d4
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 15 06:28:26 2009 +0000

    Forbid arrays of function-type and structures with function-typed fields.

    While I'm there, change code that does:
      SomeTy == Type::getFooType(Context)
    into:
      SomeTy->getTypeID() == FooTyID
    to decrease the amount of useless type creation which may involve locking, etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81846 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0ecef80afbd600d9004952bce40b55da78b4a78
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 06:28:12 2009 +0000

    fix PR4963: folding insertvalue would sometimes turn a packed struct into
    an unpacked one.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81845 91177308-0d34-0410-b5e6-96231b3b80d8

commit 69177fbaef43d051fcc9a84184b2884f41765c6b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 05:40:35 2009 +0000

    add a new CallGraphNode::replaceCallEdge method and use it from
    argpromote to avoid invalidating an iterator.  This fixes PR4977.
    All clang tests now pass with expensive checking (on my system
    at least).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81843 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5957ef5d5226035be8d48b37260bcef1b171a288
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 05:14:57 2009 +0000

    add newline to debug dump

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81840 91177308-0d34-0410-b5e6-96231b3b80d8

commit a6001e21c43647daff2d81359cb3e9e8c0f0843e
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 05:03:04 2009 +0000

    make -debug-pass=Executions show information about what call graph nodes
    are in the SCC for each execution of a CGSCC pass.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81838 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8e3ba7439fb15df005a3125b0b9b6f51ea2697c9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 04:45:26 2009 +0000

    add some missing quotes in debug output

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81836 91177308-0d34-0410-b5e6-96231b3b80d8

commit d2d16acc4549ed7c075425a1337cc2a3b953f52c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 04:37:49 2009 +0000

    switch scciterator to use DenseMap instead of std::map

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81834 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47fbf883bdac3403a5584be5ec476f11f083fa7f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 04:27:29 2009 +0000

    this is failing on linux hosts, force a triple.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81833 91177308-0d34-0410-b5e6-96231b3b80d8

commit a045a696be25f2dec8969a68283582b33d660aae
Author: Ted Kremenek <kremenek@apple.com>
Date:   Tue Sep 15 04:06:36 2009 +0000

    Remove invalid add_dependencies line to unbreak the CMake build.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81827 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5083953c49cfb42b74a512d6b876340cdb958733
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 15 03:39:45 2009 +0000

    Get rid of GetProcessId in Win32/Program.inc.

    GetProcessId was introduced only in XP. As a bonus, this change makes Program
    objects copyable, since Program is now basically a PID.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81826 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f21ba08e546e678bd6cc4c6efd66040507d8050
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 02:27:23 2009 +0000

    merge one more in.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81824 91177308-0d34-0410-b5e6-96231b3b80d8

commit dd42dc82ecfb2d3ec5a138e3dbf7c5249dac3b7d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 02:25:21 2009 +0000

    merge some more cmov tests into cmov.ll

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81823 91177308-0d34-0410-b5e6-96231b3b80d8

commit e8e2cc606cea71cfc40728aae2906ac85b4d2c7d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 15 02:22:47 2009 +0000

    merge two cmov tests into one.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81822 91177308-0d34-0410-b5e6-96231b3b80d8

commit cbe5a493d522295f64e80d1dafd99360ebec7a99
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 01:22:01 2009 +0000

    Don't pull a load through a callseq_start if the load's chain
    has multiple uses, as one of the other uses may be on a path
    to a different node above the callseq_start, because that
    leads to a cyclic graph. This problem is exposed when
    -combiner-global-alias-analysis is used. This fixes PR4880.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81821 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6647b934fcb19a24d6eb7a07750ce292d79205c3
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 00:38:09 2009 +0000

    Remove incorrect CSE code from r81813.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81819 91177308-0d34-0410-b5e6-96231b3b80d8

commit b7e7339c1e4bac5679c7a2e3b46f15d1460882c4
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 15 00:35:17 2009 +0000

    Modified the Intel instruction tables to include
    versions of CALL and JMP with segmented addresses
    provided in-line, as pairs of immediates.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81818 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d711a3d76b29a8b13ec316c81d0161df47818ce
Author: Kevin Enderby <enderby@apple.com>
Date:   Tue Sep 15 00:27:25 2009 +0000

    Added the first bits of the ARM target assembler to llvm-mc.  For now it only
    parses the .word directive as 4 bytes and ARMAsmParser::ParseInstruction will
    give an error is called.  Broke out the test of the .word directive into two
    different test cases, one for x86 and one for arm.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81817 91177308-0d34-0410-b5e6-96231b3b80d8

commit 722f41892d746e32e0456a8e90640be7b93b4175
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 00:18:30 2009 +0000

    Substantially speed up combiner-aa in the following ways:

    1. Switch from an std::set to a SmallPtrSet for visited chain nodes.
    2. Do not force the recursive flattening of token factor nodes, regardless of
       use count.
    3. Immediately process newly created TokenFactor nodes.

    Also, improve combiner-aa by teaching it that loads to non-overlapping offsets
    of relatively aligned objects cannot alias.

    These changes result in a >5x speedup for combiner-aa on most testcases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81816 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9e1b9b6fc8c9553b28a676fda614db3d057aa368
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 00:14:28 2009 +0000

    Teach the legalizer to propagate the original alignment of loads and store when
    it splits them.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81815 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d38ee448663aae93e51b96d0fab617e191e6a80
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 15 00:14:11 2009 +0000

    On x86-64, the 32-bit cmov doesn't actually clear the high 32-bit of
    its result if the condition is false.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81814 91177308-0d34-0410-b5e6-96231b3b80d8

commit e22356dcb8d97062576619c5419a1140c76059dd
Author: Nate Begeman <natebegeman@mac.com>
Date:   Tue Sep 15 00:13:12 2009 +0000

    Add an "original alignment" field to load and store nodes.  This enables the
    DAG Combiner to disambiguate chains for loads and stores of types which are
     broken up by the Legalizer into smaller pieces.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81813 91177308-0d34-0410-b5e6-96231b3b80d8

commit a5e04816bd3e055c1ac97cc22a2035883ec763c6
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 14 23:39:10 2009 +0000

    When extending a memset range past the front, set the alignment of the
    memset region to the alignment of the new start address.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81810 91177308-0d34-0410-b5e6-96231b3b80d8

commit 713985a2dff2024cc0544f497714e239a01a6251
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Mon Sep 14 21:54:32 2009 +0000

    Expose initializing the native target for the execution engine.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81800 91177308-0d34-0410-b5e6-96231b3b80d8

commit f161b718f66f519f5fd348ec4619a1d928f25809
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Mon Sep 14 21:54:15 2009 +0000

    Make sure to initialize the fpm in the ocaml tutorial.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81799 91177308-0d34-0410-b5e6-96231b3b80d8

commit 95320818705e1a8a2ec6e0eaf009695c7b36630e
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Sep 14 21:33:42 2009 +0000

    Add early coalescing to liveintervals. This is work in progress and is known to miscompute some tests. Read it at your own rish, I have aged 10 year while writing this.

    The gist of this is if source of some of the copies that feed into a phi join is defined by the phi join, we'd like to eliminate them. However, if any of the non-identity source overlaps the live interval of the phi join then the coalescer won't be able to coalesce them. The early coalescer's job is to eliminate the identity copies by partially-coalescing the two live intervals.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81796 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3380dd66fb6f3cedf9fe83f56c8680802bfaf4cb
Author: Bill Wendling <isanbard@gmail.com>
Date:   Mon Sep 14 20:52:37 2009 +0000

    Pull the creation of the "RewindFunction" function out of the loop. It's only
    created once, so shouldn't be stuck in the middle of the loop. Also early exit
    if there are no uses of UnwindInst in the function.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81785 91177308-0d34-0410-b5e6-96231b3b80d8

commit 35d089b52ad103aedfe249070244d6bdf0ed7039
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 14 20:40:10 2009 +0000

    Update a comment to match the source. PseudoSourceValues are now
    obtained via accessor functions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81782 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3107c9ecfee9c403e89e3d5eccbc00d1099fc151
Author: Jim Grosbach <grosbach@apple.com>
Date:   Mon Sep 14 17:27:35 2009 +0000

    trivial whitespace cleanup

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81773 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9105aa9a9dc9f159335af3ff23b9f1f13f208069
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 16:49:26 2009 +0000

    add PR#

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81770 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9ab1d2e843fe3ce1ed9f135335e9ba92f72912b6
Author: Eric Christopher <echristo@apple.com>
Date:   Mon Sep 14 16:38:49 2009 +0000

    Enable the jit for llvm-config.

    Patch by Xerxes Rånby!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81768 91177308-0d34-0410-b5e6-96231b3b80d8

commit c662a414b78029f6716f128ae926333a77aaecd3
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 16:10:32 2009 +0000

    Add a valgrind suppressions file for x86_64/linux/4.3.3.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81766 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9dbc0054b4e16f3d94c8009b5d510c3753ed7ca2
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 15:27:43 2009 +0000

    Add a VALGRIND_EXTRA_ARGS makefile variable, with the obvious semantics.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81764 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6c3b4e242e24ed183d4561ce5a8222b441893698
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 05:22:54 2009 +0000

    Update CMake dependencies.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81758 91177308-0d34-0410-b5e6-96231b3b80d8

commit a303520a98b34359e350878fa54c91d314fc0dac
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 05:22:47 2009 +0000

    Update CMake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81757 91177308-0d34-0410-b5e6-96231b3b80d8

commit da5fb6d704adbe833dcf16d12398a87a5af8d01e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 03:15:54 2009 +0000

    PIC16 does allow colon after MBB labels, simplify EmitBasicBlockStart.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81755 91177308-0d34-0410-b5e6-96231b3b80d8

commit a835afd084f0e1c9ce65902b24eac79921547c79
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 03:02:37 2009 +0000

    Change MCAsmStreamer to take an MCInstPrinter instead of a
    full AsmPrinter, and change TargetRegistry to keep track
    of registered MCInstPrinters.

    llvm-mc is still linking in the entire
    target foo to get the code emitter stuff, but this is an
    important step in the right direction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81754 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2eadb171aaa638fa18a7f8ddcb4e9bc22a0fad8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 02:39:01 2009 +0000

    Teach 'make check-lit' to run unittests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81753 91177308-0d34-0410-b5e6-96231b3b80d8

commit e4fe594178a8ee98db0588bfb06d50916cdebc21
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 02:38:53 2009 +0000

    Attempt to fix some 4.0.0 build warnings.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81752 91177308-0d34-0410-b5e6-96231b3b80d8

commit 160f351b7f90ebedb6ef137ea020989769963b98
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 14 02:38:46 2009 +0000

    lit: Give test formats control over test discovery.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81751 91177308-0d34-0410-b5e6-96231b3b80d8

commit ffe6f6bed8d8b1a5e56088fd13b1f05f68c28051
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Sep 14 02:25:34 2009 +0000

    Fix a pair of comment typos.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81750 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5aab63425cb839d86e7ab908d5fc68f27c3b3b3d
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Sep 14 02:25:19 2009 +0000

    Fifth time's a charm! Remove ourselves as abstract type listeners once we've
    been told that the type is no longer abstract.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81749 91177308-0d34-0410-b5e6-96231b3b80d8

commit e6eb694f39d6edf0cfa3be954776f13d2e959a13
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:49:26 2009 +0000

    Give MCInstPrinter a MCAsmInfo member, make X86ATTInstPrinter
    be a MCInstPrinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81746 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3698084edee8995c957027958dd61a0d27e79849
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:43:38 2009 +0000

    add a new MCInstPrinter class, move the (trivial) MCDisassmbler ctor inline.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81745 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5ec814dc4fd6e24fdbec8d092d4e9ba0c21d6dac
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:34:40 2009 +0000

    tidy up a bit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81744 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3f01e21df1740df29a8fbf30f16dca9bae44711
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:27:50 2009 +0000

    slightly increase prettiness.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81742 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9ccbf08d37a60fb1d5f288ce4043f3f66d0822ed
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:26:18 2009 +0000

    emit the register table as a massive string to avoid relocations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81741 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7437911091faa98a519d2fbb16fd13e207708be1
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:19:16 2009 +0000

    move StringToOffsetTable out to its own header.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81740 91177308-0d34-0410-b5e6-96231b3b80d8

commit 07cb8119f076f45883139ccc1d4a9c283e69966e
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 14 01:16:36 2009 +0000

    factor string table generation out to its own class.  This changes
    the encoding of the AsmStrs table saving a byte or two.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81739 91177308-0d34-0410-b5e6-96231b3b80d8

commit b6db52a9bdf56bb5b0ae38cbf3b37a35102144ff
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Sep 14 00:36:52 2009 +0000

    Don't leak! Always remove oneself as a listener after adding oneself.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81736 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3f0d71da30b9523150a0287745e609d3b481be01
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 13 23:45:39 2009 +0000

    Actually remove old types from the set.

    Also break the type verification stuff into its own TypeSet to keep the
    Verifier pass from becoming an AbstractTypeUser.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81729 91177308-0d34-0410-b5e6-96231b3b80d8

commit 826ed7a271c9a966d58a379acdf492fa40c5ffb0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 22:45:04 2009 +0000

    eliminate the TargetRegisterDesc::AsmName field, the asmprinters now have this table.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81728 91177308-0d34-0410-b5e6-96231b3b80d8

commit 00512f63d4d10e60ae18c8b46392ce49e663f0bd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 22:42:03 2009 +0000

    kill off the last use of TRI::AsmName.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81727 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1063d2402ec84d31cf67eaae00cda4822ba35b56
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 22:41:48 2009 +0000

    add some special case handling for strangely named x86 registers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81726 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f1c655d38daf554042502391aac0b873d6d4d75
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 22:39:27 2009 +0000

    Build (not test) the unittests as part of a normal build.
     - 'make unittests' still builds and tests.
     - 'make unitcheck' inside a unittest directory runs the tests in that directory.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81725 91177308-0d34-0410-b5e6-96231b3b80d8

commit 84c0c9a5d338d233548b6f4bc8a81dcd47744be5
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 22:28:17 2009 +0000

    unbreak this test by working around an asmparser bug.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81724 91177308-0d34-0410-b5e6-96231b3b80d8

commit 98544f744488e29f215a07888500ec59e9fb490a
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 22:24:34 2009 +0000

    'printMCInst' doesn't print newlines after instructions anymore.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81723 91177308-0d34-0410-b5e6-96231b3b80d8

commit 453222b9fee0a048540a832ecab293dff2751c9c
Author: Oscar Fuentes <ofv@wanadoo.es>
Date:   Sun Sep 13 22:18:38 2009 +0000

    CMake: New user-settable variable LLVM_TARGET_ARCH useful when
    cross-compiling.

    Patch by Xerxes Rånby!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81722 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6d2eab68c04d4b93330a22469a650f7fdaadfbb2
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 13 21:38:54 2009 +0000

    Update the tutorial to match changes to examples/Kaleidoscope.

    One change I'm not folding in is the removal of two unused variables that
    caused warnings, because those were there for expository purposes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81721 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7909eefe08511c595d7dc8b586abec9c65f2e1f8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 21:31:21 2009 +0000

    Move unittest driver to utils/unittest/UnitTestMain.
     - This eliminates a race between building the unittests and linking the
       UnitTestMain library.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81719 91177308-0d34-0410-b5e6-96231b3b80d8

commit 435de3991f951fdaf77395572f740b7483662a91
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 21:31:07 2009 +0000

    Remove unused variables.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81718 91177308-0d34-0410-b5e6-96231b3b80d8

commit c904d5b8a23fc2ac8181b0e261f0f3292f379721
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sun Sep 13 21:07:59 2009 +0000

    Storing a set of PATypeHolders is a bad idea because their sort order will
    change as types are refined. Remove abstract types from CheckedTypes when they
    we're informed that they have been refined. The only way types get refined in
    the verifier is when later function passes start optimizing. Fixes PR4970.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81716 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0a25de172e71282bba275a51ce75849e5407f8b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 20:31:40 2009 +0000

    remove all but one reference to TargetRegisterDesc::AsmName.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81714 91177308-0d34-0410-b5e6-96231b3b80d8

commit 213703ced9eeaa585c06387ae3c643ea4701462e
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 20:19:22 2009 +0000

    the tblgen produced 'getRegisterName' method does not access
    the object, make it static instead of const.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81711 91177308-0d34-0410-b5e6-96231b3b80d8

commit ec219616d65bf4057d0c4509708b31f7979f7ad6
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 20:15:16 2009 +0000

    switch the x86 asmprinters to use getRegisterName instead
    of getting it from TRI, inst printing now is codegen context
    free!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81710 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0288aeed1baf069135de8bc028e1c82efae7316e
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Sun Sep 13 20:14:57 2009 +0000

    Fix a small issue with recent changes to this code.

    The 'false.c' file wasn't being used.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81709 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9222169c3ad7e619d1a8ab155b7a1118182c3c34
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 20:08:00 2009 +0000

    make tblgen produce a function that returns the name for a physreg.
    Nothing is using this info yet.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81707 91177308-0d34-0410-b5e6-96231b3b80d8

commit 28f7e3506ee1779753939d87c2ce4e1a2f19e9c0
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:48:37 2009 +0000

    eliminate an extraneous use of TRI::getAsmName in a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81705 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4957efed4f96e7af2efbcba4f5a6b3a6f255c795
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:44:38 2009 +0000

    make intel asmprinter use TRI::getAsmName instead of TRI::getName like
    all the other targets.  Add support for weak/linkonce linkage so it doesn't
    crash on basically all nontrivial testcases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81704 91177308-0d34-0410-b5e6-96231b3b80d8

commit 59a6e61b92fa4a02cd9a68b5b6e4e63dee2ff524
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:30:11 2009 +0000

    split MCInst printing out of the X86ATTInstPrinter
    class into its own X86ATTInstPrinter class.  The inst
    printer now has just one dependence on the code generator
    (TRI).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81703 91177308-0d34-0410-b5e6-96231b3b80d8

commit b1c1268be8e349ed9ed5e8012fced58b60da23e2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:10:08 2009 +0000

    reduce indentation with early exit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81699 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6f9b24922a442ab59668c859697e2f1b501eb46f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:03:08 2009 +0000

    second part to r81695, I missed a directory.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81696 91177308-0d34-0410-b5e6-96231b3b80d8

commit 149495f84e67c353295dd54c4ca92ccd0fd3c1ef
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 19:02:16 2009 +0000

    remove MAI::JumpTableSpecialLabelPrefix now that MAI
    has real information about linker private linkage.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81695 91177308-0d34-0410-b5e6-96231b3b80d8

commit 893e8843309b5ca688046b1d11bc7f71eb5fc2a8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 18:58:14 2009 +0000

    Revert unittests build changes temporarily, the unit test build isn't -j safe.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81692 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7e659812c8d34377bc4d9516f1a116ccec4f073f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:50:22 2009 +0000

    delete the fixme too! :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81689 91177308-0d34-0410-b5e6-96231b3b80d8

commit e82fd5e49c2bcf148abe7b8e066076020944505c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:46:37 2009 +0000

    merge the linux cpool/jtbl pic tests into pic.ll and convert to filecheck.

    Change the picbase symbol on non-darwin systems from ".Lllvm$4.$piclabel" to
    ".L4$pb".  The actual name doesn't matter and the darwin name is shorter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81688 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9b41b2da218ae60316e2bbb39bda56bcca893e21
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 18:43:46 2009 +0000

    Build (not test) the unittests as part of a normal build.
     - 'make unittests' still builds and tests.
     - 'make unitcheck' inside a unittest directory runs the tests in that directory.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81687 91177308-0d34-0410-b5e6-96231b3b80d8

commit b47f641f55f98d8ffecf935616fbe8f407a6c47b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:33:59 2009 +0000

    make X86ATTAsmPrinter::PrintPICBaseSymbol forward to X86MCInstLower.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81685 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2faa4ef57551d45e7b58b1827ae8156cea221637
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:25:37 2009 +0000

    replace printBasicBlockLabel with EmitBasicBlockStart,
    now that printBasicBlockLabel is only used for starting
    a MBB.  This allows elimination of a bunch of arguments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81684 91177308-0d34-0410-b5e6-96231b3b80d8

commit adfec708f335a7ea93d685ae753f74a53ca05b83
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:11:09 2009 +0000

    fix MCSymbol printing on darwin to exactly match the mangler (handling of \n and " in a symbol name).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81683 91177308-0d34-0410-b5e6-96231b3b80d8

commit e66b5a5946e9737b7a230ba903779f4c9d15c542
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 18:04:46 2009 +0000

    Make the MC symbol printer and llvm::Mangler exactly agree on mangling
    for systems that don't support quoting (PR4966).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81682 91177308-0d34-0410-b5e6-96231b3b80d8

commit 126c8fe046bc70bf4289cf3d7889abc0bf0176a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 17:25:49 2009 +0000

    remove two docs about the old Sparc backend which used Value*'s for vregs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81680 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5027fd9cf5243d58fdacd2c37ac2dc498bdea6fd
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 17:24:16 2009 +0000

    move old clang readme here.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81679 91177308-0d34-0410-b5e6-96231b3b80d8

commit c6f802dd7f346ac5a44bbdc57d264ed928fe1e7c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sun Sep 13 17:14:04 2009 +0000

    convert some uses of printBasicBlockLabel to use GetMBBSymbol
    instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81677 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7f5f33b5ea2e756e9dd3df83c8924304ac317e4b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 02:45:57 2009 +0000

    Add LLVMGCCBINDIR to path, since LLVMC expects to find llvm-gcc in the path.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81669 91177308-0d34-0410-b5e6-96231b3b80d8

commit 72a7ef551f36b66d339c6c0d91a99d6301ec872c
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:41:47 2009 +0000

    Switch Ocaml to use llvm_supports_binding.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81665 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3324882bda68403c4723a6856f937320c3428849
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:41:18 2009 +0000

    tests: Add llvm_supports_binding predicate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81664 91177308-0d34-0410-b5e6-96231b3b80d8

commit 282ae0b0efbe5ce5ce81c00cb4d89e813b78efc6
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:40:48 2009 +0000

    tests: Use %abs_tmp instead of ./%t to make these tests portable to 'lit'.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81663 91177308-0d34-0410-b5e6-96231b3b80d8

commit c46101cd59d21edd7614d3c2ad57119baebf0db4
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:39:50 2009 +0000

    tests: Add a %abs_tmp substitution which is guaranteed to be a full path.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81662 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61e88aec10e345617c054125c4fdfdc7a692be47
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:39:08 2009 +0000

    Sink llvm-gcc dependent tests into distinct subdirs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81661 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8b6d1e38583dc7932d23c4803c223f54d79248dd
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:37:07 2009 +0000

    Rewrite tests to not use Tcl substitution.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81660 91177308-0d34-0410-b5e6-96231b3b80d8

commit 458d03ea01aa32891785347005f83ccf3944728a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 13 01:36:19 2009 +0000

    Simplify LLVMC tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81659 91177308-0d34-0410-b5e6-96231b3b80d8

commit 02791b0d5c7fe12bf1ada874da30dd5d0440bc98
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sun Sep 13 01:12:15 2009 +0000

    Fix merge problem

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81658 91177308-0d34-0410-b5e6-96231b3b80d8

commit daf700156a4b1aec6f85be6f611f2f949b154f75
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sun Sep 13 00:59:43 2009 +0000

    Define proper subreg sets for arm - this should fix bunch of subtle problems
    with subreg - superreg mapping and also fix PR4965.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81657 91177308-0d34-0410-b5e6-96231b3b80d8

commit b10a5950be94fe5cabce5d6d269bc37dc55bdd41
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 12 23:45:47 2009 +0000

    Add -mattr=+sse2 to the -march=x86 version of this test. Without
    sse, this code falls back to SelectionDAG isel which uses an x87
    instruction, which is fine, but not what this test is testing for.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81656 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1b03709c07c801d218f32e90bb5a77dcaf999474
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 12 23:29:02 2009 +0000

    Experimental fix for PR4960.
     - Could we just always implement this as __clear_cache for __GNUC__?

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81655 91177308-0d34-0410-b5e6-96231b3b80d8

commit 08c9708a8aed7028c5e3126d2d680ee1ffb4af9f
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 23:02:08 2009 +0000

    devirtualize AsmPrinter::printBasicBlockLabel since it is never overridden.
    Move GetMBBSymbol up to AsmPrinter and make printBasicBlockLabel use it so that
    we only have one place that decides what to name bb labels.  Hopefully various
    clients of printBasicBlockLabel can start using GetMBBSymbol instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81652 91177308-0d34-0410-b5e6-96231b3b80d8

commit 69f872cbd1278b340ac8ebb23edd441cd2a0c4da
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 22:57:37 2009 +0000

    we don't want people to override printBasicBlockLabel.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81651 91177308-0d34-0410-b5e6-96231b3b80d8

commit f1df5fea30bfd9fc1b9691dab547277aba769dcd
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 12 22:24:25 2009 +0000

    Remove unnecessary #include.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81636 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3600d16e551d4b49d3d8df86d5c90061804d5c7f
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sat Sep 12 22:21:08 2009 +0000

    Add QPR_VFP2 regclass and add copy_to_regclass nodes, where needed to
    constraint the register usage.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81635 91177308-0d34-0410-b5e6-96231b3b80d8

commit f2e096380d8ea7bd7cb5a47b66a9fa17ef34e365
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 12 22:02:17 2009 +0000

    Preserve the inbounds flag, so that the constant folder doesn't
    recompute it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81634 91177308-0d34-0410-b5e6-96231b3b80d8

commit 07f468d98bf62faf754bc2c72cca515e8b6c9079
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 12 21:56:48 2009 +0000

    Fix the build when DEBUG_SYMBOL_TABLE is set.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81633 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f7a156181caf332944bcd5283cf25e074bdc51e
Author: Dan Gohman <gohman@apple.com>
Date:   Sat Sep 12 21:55:12 2009 +0000

    Convert llvm-link to IRReader.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81632 91177308-0d34-0410-b5e6-96231b3b80d8

commit da044747519b98d6579c6fd0638c863ee3506cb3
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 21:06:08 2009 +0000

    factor MBB label lowering better

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81630 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6874849b9aa710a542b2263e335bd9fe8e073d0b
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 21:01:20 2009 +0000

    X86MCInstLower::Lower should only not emit anything to OutStreamer,
    this means that it can only lower one MachineInstr to one MCInst.  To
    make this fly, we need to pull out handling of MO_GOT_ABSOLUTE_ADDRESS
    (which generates an implicit label) out of X86MCInstLower.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81629 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34461fde24e25c4c789b719f16483367ef125e5c
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 20:45:03 2009 +0000

    eliminate the "MBBLabel" MCOperand type, and just use a MCSymbol for
    MBB labels like everything else.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81628 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1efc2adff3c3193bf402c9167cc3b06ec582a875
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 20:34:57 2009 +0000

    split MachineInstr -> MCInst lowering into its own class (not
    being embedded into X86ATTAsmPrinter).  This still depends heavily
    on X86ATTAsmPrinter, but this is a step in the right direction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81627 91177308-0d34-0410-b5e6-96231b3b80d8

commit a16d146018dbdd8e840db89dae3a4c6fcf8aa947
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 20:01:36 2009 +0000

    remove the "old" at&t style asmprinter.  Unfortunately, most of the
    operand printing crapola cannot be removed yet because it is used by
    the inline asm print stuff.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81626 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58831094f223f49d8fee7413d8ac5933599e4a40
Author: Lang Hames <lhames@gmail.com>
Date:   Sat Sep 12 04:54:18 2009 +0000

    Whoops. Committed the headers for r81605 - 'Moved some more index operations over to LiveIntervals.'

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81609 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2a7b3b261e96625d4fff876dbb859dec67e4c04e
Author: Lang Hames <lhames@gmail.com>
Date:   Sat Sep 12 03:34:03 2009 +0000

    Moved some more index operations over to LiveIntervals.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81605 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2c2313a5e064b39cdbad9b0de471c722d800318a
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Sep 12 02:52:41 2009 +0000

    Added the WAIT instruction to the Intel tables,
    for the purposes of the disassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81603 91177308-0d34-0410-b5e6-96231b3b80d8

commit 25220d648e0af4f977a0ff96fd6fabcf4e45ddb2
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Sep 12 02:25:20 2009 +0000

    Added CMPS (string comparison) instructions for all
    operand widths to the Intel instruction tables, for
    the purposes of the disassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81601 91177308-0d34-0410-b5e6-96231b3b80d8

commit d0d3ee158facc0f354906b1e5559b73ce0fd20e7
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 12 02:14:41 2009 +0000

    Remove -new-coalescer-heuristic. It's not useful.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81600 91177308-0d34-0410-b5e6-96231b3b80d8

commit 16c2f62b7c53316702d1ad99d7c33a08f5f5ced7
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sat Sep 12 02:01:07 2009 +0000

    80 col violations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81598 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3f74d67bcb2ebcb53e4ad66c05bdc668a0859542
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 01:11:50 2009 +0000

    fix another GCC bootstrap problem, which manifested as things
    like:
    foo.s:2412:non-relocatable subtraction expression, "_gomp_tls_key" minus "L1$pb"

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81596 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34184c9a753003dd6161e5f4f8770e906996621d
Author: Chris Lattner <sabre@nondot.org>
Date:   Sat Sep 12 00:49:00 2009 +0000

    fix an embarassing typo that resulted in llvm-gcc bootstrap miscompare
    because the sorting wasn't sorting.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81592 91177308-0d34-0410-b5e6-96231b3b80d8

commit 481f06df77485baab41d3facb6eb9903ee1b1b13
Author: Sean Callanan <scallanan@apple.com>
Date:   Sat Sep 12 00:37:19 2009 +0000

    Added SCAS instructions in their 8, 16, 32, and
    64-bit variants for the disassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81591 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8d13e71bb592c47f214eefc3cfdc016b12ff6396
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 11 22:07:31 2009 +0000

    Fix -Asserts warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81580 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0cc7539863622c30066b5110a48827dfd55675e8
Author: Ted Kremenek <kremenek@apple.com>
Date:   Fri Sep 11 21:49:45 2009 +0000

    Update CMake files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81577 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3996be16362bda84e8975ac6aef9f36358cad869
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Fri Sep 11 21:26:24 2009 +0000

    De-bork CMake build. llvm-extract depends on asmparser

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81574 91177308-0d34-0410-b5e6-96231b3b80d8

commit 31b20c7d4a2789da21fe865cc5e7cfa3f6fdd581
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 20:46:33 2009 +0000

    Fix llvm-extract's "writing bitcode to a terminal" warning, which wasn't
    working. To support this, add an is_displayed() function to raw_ostream,
    and generalize Process::StandardOutIsDisplayed and friends in order to
    support it.

    Also, call RemoveFileOnSignal before creating a file instead of after, so
    that the file isn't left behind if the program is interrupted between when
    the file is created and RemoveFileOnSignal is called.

    While here, add a -S to llvm-extract and port it to IRReader so that it
    supports assembly input.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81568 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5b01f934c23227abf954e317b5b65cc77f38c21d
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Sep 11 20:13:17 2009 +0000

    Revert array initialization regclass change so that the initialization stays static, not runtime.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81560 91177308-0d34-0410-b5e6-96231b3b80d8

commit 21f15abfa99b786925bb1b36717b454ac800251b
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Sep 11 19:49:06 2009 +0000

    Update register class references to use the global constant ARM::*RegisterClass names.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81556 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8562bef1079463f9d3027bd6cfb688e99298bede
Author: Sean Callanan <scallanan@apple.com>
Date:   Fri Sep 11 19:01:56 2009 +0000

    Added ADC, SUB, SBB, and OR instructions that operate
    on rAX and an immediate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81551 91177308-0d34-0410-b5e6-96231b3b80d8

commit 53fac396f5ba849f8837234584303c72fd229747
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 11 18:42:18 2009 +0000

    Fix pr4820: Don't run llvm-config during "make clean" since it may have
    already been removed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81547 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8d8e16bb62905b1b14aea9481c4d085bf1c02796
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 18:41:06 2009 +0000

    Remove an unnecessary -f.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81546 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0cb2f6731090cfc8b56679c7802983d16a21fd92
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 18:36:27 2009 +0000

    Convert more tests to avoid llvm-as.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81545 91177308-0d34-0410-b5e6-96231b3b80d8

commit bb9fe84e889c35f2010090c5d0d13198b57c3327
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 18:33:44 2009 +0000

    fix pasto

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81544 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9da96d8044dc814a45010e9f78af212c189cc447
Author: Caroline Tice <ctice@apple.com>
Date:   Fri Sep 11 18:25:54 2009 +0000

    Don't generate Dwarf line table entries for source line 0.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81542 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1ee2ec58cab5d4aa340aa50f67af4cd99ef184b6
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 18:20:26 2009 +0000

    fix some fixmes: emit stubs in sorted order.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81541 91177308-0d34-0410-b5e6-96231b3b80d8

commit 66c8021be5351d77c0d1cd8dd52f694ad837b741
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 18:17:12 2009 +0000

    Eliminate more redundant llvm-as calls.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81540 91177308-0d34-0410-b5e6-96231b3b80d8

commit 869beecde3919f7332925a43c336778be770d3b5
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 18:16:43 2009 +0000

    Fix this test to test what it was originally intended to test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81539 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3054c0f431010e796b0328150f93aa000f06e863
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 18:15:46 2009 +0000

    give densemap iterators real iterator traits.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81538 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c7d3083e7c99a22ee4803048dfb86c7a57b1006
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 18:01:28 2009 +0000

    Change tests from "opt %s" to "opt < %s" so that opt doesn't see the
    input filename so that opt doesn't print the input filename in the
    output so that grep lines in the tests don't unintentionally match
    strings in the input filename.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81537 91177308-0d34-0410-b5e6-96231b3b80d8

commit a24946acb21bffc40e9054f7ac25eb9319b406d8
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Sep 11 17:24:29 2009 +0000

    Fix PR4948 (and a leak): by not destroying the DwarfException
    object, the timer it creates was not being deleted.  Since the
    timer belonged to a static timer group, the timer group would
    be destroyed on shutdown, and would notice and complain that
    not all timers it contained were destroyed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81533 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6cd70ca0ab41c5eab214b92689b072f3fe53bb37
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 17:07:27 2009 +0000

    turn on -experimental-asm-printer for x86 / AT&T by default.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81532 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe7ed54bd19fceebdf98f3420567afacf9674904
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 17:07:01 2009 +0000

    another random update

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81531 91177308-0d34-0410-b5e6-96231b3b80d8

commit c9f609938abc0aa496f65cec8baaccca78b4af81
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 17:05:29 2009 +0000

    reject attempts to take the address of an intrinsic, PR4949.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81530 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9a8e2f2f2b6fc5e9c6122ab1539d56ef2198577d
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 17:02:12 2009 +0000

    fix a bunch of spurious failures for people whose home directory
    is sabre.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81528 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3c4ea8fe60cd502437e00f7e5a402329aaef79f7
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 16:49:18 2009 +0000

    this test is using invalid "intrinsics".

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81527 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3ad76ad92f6abf6d251e1dfa240c64c19e5bf90
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 16:47:41 2009 +0000

    fix test to not get a moduleid that matches 'br'

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81526 91177308-0d34-0410-b5e6-96231b3b80d8

commit 099640405eda144320bed8acb8db97153779100a
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 16:33:58 2009 +0000

    default construct MCInst's ctor to 0, which is "PHI" which is invalid for MCInsts.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81525 91177308-0d34-0410-b5e6-96231b3b80d8

commit d11bf276c72fb90393a1c8e04ca6ba25553d5739
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 11 15:47:24 2009 +0000

    ... and fix the REQUIRES_RTTI condition.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81524 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7985717063d5538f40b90c688f7da9ba8f8c2bf8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 11 15:45:13 2009 +0000

    Fix REQUIRES_RTTI while awake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81523 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e12b8277f6064a999129a526587d8e7378cb2f3
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 11 15:39:39 2009 +0000

    Make REQUIRES_RTTI work.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81522 91177308-0d34-0410-b5e6-96231b3b80d8

commit f207074410fd77ba40ef110b17a6442b42aed6f1
Author: Owen Anderson <resistor@mac.com>
Date:   Fri Sep 11 09:01:57 2009 +0000

    Eliminate some unnecessary implicit constructors in generated DAG ISel code.

    Partial fix for PR4946.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81518 91177308-0d34-0410-b5e6-96231b3b80d8

commit c88e8254682141c4155c39a021038ea7c0c40cdd
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 11 08:43:15 2009 +0000

    Bugfix. Sorry.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81517 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2634e55f8a73b58ee7399bf55e1cbc21457d3c50
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 11 08:39:33 2009 +0000

    Make ProfileEstimator even more robust on general CFGs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81516 91177308-0d34-0410-b5e6-96231b3b80d8

commit 67e71746b1a96204a9f43688df0115f6fc731bfe
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 07:03:20 2009 +0000

    switch HiddenGVStubs to be a DenseMap instead of a string map, mirroring FnStubs and GVStubs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81514 91177308-0d34-0410-b5e6-96231b3b80d8

commit d17abcab0f6c1ccf446a4447a269d1b2709700f8
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 06:59:18 2009 +0000

    Fix a bug I introduced in FnStubs generation, switch GVStubs to be a
    densemap instead of StringMap to match FnStubs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81513 91177308-0d34-0410-b5e6-96231b3b80d8

commit 25c61740e62d7ea5191b0d81da96102a266ef6c7
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 06:36:33 2009 +0000

    change FnStubs from being a StringMap<std::string> to being a much
    more efficient SmallPtrSet<MCSymbol*>.  This eliminates string
    craziness and fixes CodeGen/X86/darwin-quote.ll with the new asmprinter.

    Codegen is producing stubs in a nondeterminstic order, but it was doing
    this before anyway.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81511 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2fdf82ddf5816c13fe660d6309e1e09c1550e6df
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 05:59:55 2009 +0000

    printInstruction() no longer prints a \n after itself, do it
    for the two instruction MOVPC32r sequence.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81509 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2eaccff47f159c4a90dc8c53f9d81898f6081bd9
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 05:58:44 2009 +0000

    reimplement X86ATTAsmPrinter::GetGlobalAddressSymbol in terms of
    Mangler::getNameWithPrefix.  In addition to avoiding some over
    quoting, this also is more efficient because it uses smallvector
    instead of std::string thrashing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81508 91177308-0d34-0410-b5e6-96231b3b80d8

commit a84c2917d3f8412b093af06801a595dcf8e00ee0
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 05:51:29 2009 +0000

    fix prefix ordering, it's L_foo not _Lfoo

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81506 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd7e1108fe9851970a8f9cf190defddde49ab16b
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 05:40:42 2009 +0000

    add a new Mangler::getNameWithPrefix API which returns the
    (uniqued if unnamed) global variable name with the prefix that
    it is supposed to get.  It doesn't do "mangling" in the sense of
    adding quotes and hacking on bad characters.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81505 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2fe752edba6d2b52a4171262ad9281a3cf21b003
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 04:36:43 2009 +0000

    convert X86ATTAsmPrinter::GetExternalSymbolSymbol to use SmallString
    instead of std::string and Mangler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81503 91177308-0d34-0410-b5e6-96231b3b80d8

commit e6fe945acbcf6c92f3b8e9b193f588e1404a9576
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 04:28:13 2009 +0000

    rearrange some code, export a SmallString version of DecorateCygMingName.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81502 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9d1e4fa6fdfac2bd80e049ef298365d764553302
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 01:49:31 2009 +0000

    more typos

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81499 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5b7dbbf6ff503a3bd10b87ebeeed3e48e36e0d55
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 11 01:01:31 2009 +0000

    Follow up to 81494. When the folded reload is narrowed to a 32-bit load then change the destination register to a 32-bit one or add a sub-register index.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81496 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58f44f226573975dce94b0bd23b95c2b2df80d56
Author: Chris Lattner <sabre@nondot.org>
Date:   Fri Sep 11 00:41:15 2009 +0000

    PHI nodes can never reach the asmprinter, assert and die instead of printing
    out an illegal "PHINODE" instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81495 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8f0797fd72559a3066290f87c4f79a257bf64fc6
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 11 00:39:26 2009 +0000

    It's not legal to fold a load from a narrower stack slot into a wider instruction. If done, the instruction does a 64-bit load and that's not
    safe. This can happen we a subreg_to_reg 0 has been coalesced. One
    exception is when the instruction that folds the load is a move, then we
    can simply turn it into a 32-bit load from the stack slot.

    rdar://7170444

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81494 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8c5f55f3e68092a732e6d3fa0dac6de724461a44
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 00:36:43 2009 +0000

    Make fast-isel try ISD::FNEG before resorting to bitcasts and xors.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81493 91177308-0d34-0410-b5e6-96231b3b80d8

commit b144a5210c2df1b248b0c92fbf18f0cb1f9f9f91
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 00:34:46 2009 +0000

    Reapply r81171 with a fix: don't try to use i64 when it
    isn't legal.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81492 91177308-0d34-0410-b5e6-96231b3b80d8

commit 78894ba572c0da894a177328a0b37d4e8b0cff39
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 00:05:10 2009 +0000

    Fix indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81484 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6200a6ec5cb2d2474317cf7c801d242ec25595f4
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 11 00:04:14 2009 +0000

    Teach lib/VMCore/ConstantFold.cpp how to set the inbounds keyword and
    how to fold notionally-out-of-bounds array getelementptr indices instead
    of just doing these in lib/Analysis/ConstantFolding.cpp, because it can
    be done in a fairly general way without TargetData, and because not all
    constants are visited by lib/Analysis/ConstantFolding.cpp. This enables
    more constant folding.

    Also, set the "inbounds" flag when the getelementptr indices are
    one-past-the-end.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81483 91177308-0d34-0410-b5e6-96231b3b80d8

commit db050e9d9673fda33b4acbf67b1137a6a91e74b7
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 10 23:37:55 2009 +0000

    Factor out the code for checking that all indices in a getelementptr are
    within the notional bounds of the static type of the getelementptr (which
    is not the same as "inbounds") from GlobalOpt into a utility routine,
    and use it in ConstantFold.cpp to check whether there are any mis-behaved
    indices.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81478 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce128857e923728587cf38bac23d9f6ba231ca01
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 10 23:07:18 2009 +0000

    Give these files top-level comments that describe the current code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81473 91177308-0d34-0410-b5e6-96231b3b80d8

commit ffc801c29e1d6fa3f6ff2d4236b671b4183b67a1
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 10 22:36:12 2009 +0000

    Fix whitespaces.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81468 91177308-0d34-0410-b5e6-96231b3b80d8

commit 13d28af8449cfa2269589ffb95b3c1d66e9e888c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 22:14:16 2009 +0000

    Fix validation errors.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81466 91177308-0d34-0410-b5e6-96231b3b80d8

commit ca831f14d40e32df191244092c71e47a3b3498b0
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 22:12:50 2009 +0000

    Fix validation errors.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81465 91177308-0d34-0410-b5e6-96231b3b80d8

commit bdebfa961d5a71ebab1e0e622dd2abb463fff8aa
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Sep 10 22:09:31 2009 +0000

    Don't swap the operands of a subtraction when trying to create a
    post-decrement load/store.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81464 91177308-0d34-0410-b5e6-96231b3b80d8

commit 22457ddb96b05ae203164134cc748b43a120ad26
Author: Dale Johannesen <dalej@apple.com>
Date:   Thu Sep 10 22:01:32 2009 +0000

    Fix uppercaseo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81463 91177308-0d34-0410-b5e6-96231b3b80d8

commit ae90d09ea43ca4b0dfa02d2c6d679f81380231ed
Author: Kevin Enderby <enderby@apple.com>
Date:   Thu Sep 10 20:51:44 2009 +0000

    Added the ParseInstruction() hook for target specific assembler directives so
    that things like .word can be parsed as target specific.  Moved parsing .word
    out of AsmParser.cpp into X86AsmParser.cpp as it is 2 bytes on X86 and 4 bytes
    for other targets that support the .word directive.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81461 91177308-0d34-0410-b5e6-96231b3b80d8

commit 546b28bd90852f0bea34a6dc10cf22de5a773252
Author: Victor Hernandez <vhernandez@apple.com>
Date:   Thu Sep 10 20:18:57 2009 +0000

    Fit code within 80 columns

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81459 91177308-0d34-0410-b5e6-96231b3b80d8

commit 794457a9a6c91baf493f12fe081f70924b1b7c33
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Sep 10 19:52:26 2009 +0000

    Added XOR instructions for rAX and immediates of
    various widths.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81458 91177308-0d34-0410-b5e6-96231b3b80d8

commit 70953a5bee9da7718fab97c9db999041dd38666d
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Sep 10 18:33:42 2009 +0000

    Added MOV instructions between rAX and memory offsets,
    including segment offsets and (for 8-bit operands)
    absolute offsets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81457 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9f3c3f5e4ad869045baed502d9b041f55847f42f
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Sep 10 18:29:13 2009 +0000

    Added a variety of PUSH and POP instructions, including
    ones capable of accessing R/M operands instead of just
    registers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81456 91177308-0d34-0410-b5e6-96231b3b80d8

commit f2c39f52d692834fd39bfb37e942840188554463
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 18:28:06 2009 +0000

    Exit early if exception handling isn't supported.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81454 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7360cdd2ba9923efb70579ec60480c5408edac21
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Sep 10 17:04:32 2009 +0000

    Allow llvmc to take .bc files as input.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81452 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9fc3b22df49c0bce6268f337a17e196cbedee72c
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Sep 10 16:30:38 2009 +0000

    Make ProfileEstimator more robust on general CFGs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81450 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d83433e2b5a37237f7cce22addd8fb1bbb92306
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 10 16:25:02 2009 +0000

    add another broken version of gcc, thanks to Niels Moller for pointing this out.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81449 91177308-0d34-0410-b5e6-96231b3b80d8

commit fcccb9fa64db28ccbb9bdb06341160465dc64a79
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Sep 10 16:22:02 2009 +0000

    Distinguish between 'empty' and empty DAG marker.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81448 91177308-0d34-0410-b5e6-96231b3b80d8

commit a125693f1475029900a6764451778cecfbbc69bf
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Thu Sep 10 16:21:38 2009 +0000

    Add a logical 'not' operator to llvmc's TableGen dialect.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81447 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6df6696a9d9f9691db9498c865b3abe013cbbe37
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Thu Sep 10 14:56:31 2009 +0000

    fix leakage of Module

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81445 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90deca07b0cfa2fdceb9cba6e2abd470659444b9
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Sep 10 11:31:39 2009 +0000

    Add some braces to make newer GCCs happy and update CMakeLists.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81443 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61a788cef4f56ff000806c0c267a7ace68e4f1e2
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Sep 10 07:12:35 2009 +0000

    Cleaned up code by factoring out common portions of edge loading into function.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81438 91177308-0d34-0410-b5e6-96231b3b80d8

commit 70ae96f3e7d2070972d280cecc2ccf13bdea3974
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Thu Sep 10 07:02:09 2009 +0000

    Correctly handle the case where a comparison is created in one BasicBlock and
    used by a terminator in another.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81437 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7bb50b4935836725b83eefeb1e90d0a659ef15a5
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 06:50:01 2009 +0000

    Comment and whitespace cleanups. No intentional functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81436 91177308-0d34-0410-b5e6-96231b3b80d8

commit 74446ffeba3226ae63f9a437230fe0f407a308d4
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 06:27:16 2009 +0000

    Revert part of my r81424 patch. I removed what looked like superfluous padding
    from the exception tables. However, Duncan explained why it's a can of worms to
    do it the GCC way. I went back to doing it the LLVM way and added Duncan's
    explanation so that I don't do this again in the future.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81434 91177308-0d34-0410-b5e6-96231b3b80d8

commit a511570cf8e6859deef445efe8a0db3707e10f95
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 10 05:08:51 2009 +0000

    Add a test case for r81431.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81432 91177308-0d34-0410-b5e6-96231b3b80d8

commit 67d34bd5b31add07ba8413b05d019e22f35d9a0e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 10 04:56:59 2009 +0000

    Remove prcontext.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81427 91177308-0d34-0410-b5e6-96231b3b80d8

commit e5406467385df42184feed2f03fbdab5ac38c9f5
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 10 04:36:43 2009 +0000

    Add malloc call utility functions. Patch by Victor Hernandez.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81426 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c6e5ae3c8ec8cc5df9f82b4c51d67105e941e5f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 02:07:37 2009 +0000

    Don't hardcode the TType format size. In fact, rework the code so that it's more
    like what GCC outputs. The mysterious code to insert padding wasn't in GCC at
    all. I modified the TType base offset code to calculate the offset like GCC
    does, though.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81424 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50e503fc4a90ecd8e98266c4a68c566e5f3e315f
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 10 01:23:53 2009 +0000

    Proper support of non-lazy indirect symbols.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81422 91177308-0d34-0410-b5e6-96231b3b80d8

commit 630d3b5c3e116554239d4c50032d2c1b9a01738d
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 01:12:47 2009 +0000

    Remove the "#if 0" that Noone loved. It wasn't really necessary, because the
    code within it was the same inside and out. There's still a problem of the
    TypeInfoSize should be the size of the TType format encoding (at least that's
    what GCC thinks it should be).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81417 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9ba888a01e1f53c88d8a491b35cee78b170d2ff5
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 10 00:59:15 2009 +0000

    MC: Give target specific parsers access to the MCStreamer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81416 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9aadf0b01025e9a91a285fe87cf58353cc8aa61e
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Sep 10 00:49:22 2009 +0000

    Revert r81171 which was causing pr4927.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81415 91177308-0d34-0410-b5e6-96231b3b80d8

commit d832f2cd021588a797c00175a894f63d652b3755
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 00:17:04 2009 +0000

    Pull check for SJLJ EH into a boolean and use that.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81409 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1961846a4701a5cd43a8d7f2624138da0f745e1f
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 00:13:16 2009 +0000

    Use the SizeOfEncodedValue function instead of magic variables for the
    sizeof(DW_EH_PE_udata4).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81408 91177308-0d34-0410-b5e6-96231b3b80d8

commit f551420260bd4eb5e4ca6307eb9ae4d411154061
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 10 00:04:48 2009 +0000

    Add helpful comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81406 91177308-0d34-0410-b5e6-96231b3b80d8

commit e99c6d49ea0f6f3b562af85580bdf18bd278b933
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 23:56:55 2009 +0000

    Believe it or not, this is a simplification. :-)

    Basically, this patch is working towards removing the hard-coded values that are
    output for the CIE. In particular, the CIE augmentation and the CIE augmentation
    size. Both of these should be calculated. In the process, I was able to make a
    bunch of code simpler.

    The encodings for the personality, LSDA, and FDE in the CIE are still not
    correct. They should be generated either from target-specific callbacks (blech!)
    or grokked from first-principles.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81404 91177308-0d34-0410-b5e6-96231b3b80d8

commit 71429f87316fc88ebe54b904c4b1326a71fbc3ec
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 23:55:03 2009 +0000

    Fix double load / store multiple encoding.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81403 91177308-0d34-0410-b5e6-96231b3b80d8

commit 431b4df9155bfbe94d3b50a1f1bdebfa9055cb44
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 23:46:42 2009 +0000

    canonicalize namespace gymnastics

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81402 91177308-0d34-0410-b5e6-96231b3b80d8

commit b53d938b38393b624f7f12269c9784cd5116c3bf
Author: Dale Johannesen <dalej@apple.com>
Date:   Wed Sep 9 23:37:46 2009 +0000

    Testcase for (llvm-gcc) 81399.  Adjust an older
    test case to allow for different, functionally
    identical output.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81400 91177308-0d34-0410-b5e6-96231b3b80d8

commit 10371a5fdd1b829b3ce0cbd6d0721c700bde1e55
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 9 23:14:54 2009 +0000

    Fix pr4939: Change FPCCToARMCC to translate SETOLE to ARMCC::LS.
    See the bug report for details.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81397 91177308-0d34-0410-b5e6-96231b3b80d8

commit 32d4cc74e1075b6d9f77c75ff6099784ad4f15b2
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 23:14:36 2009 +0000

    remove DebugLoc from MCInst and eliminate "Comment printing" from
    the MCInst path of the asmprinter.  Instead, pull comment printing
    out of the autogenerated asmprinter into each target that uses the
    autogenerated asmprinter.  This causes code duplication into each
    target, but in a way that will be easier to clean up later when more
    asmprinter stuff is commonized into the base AsmPrinter class.

    This also fixes an xcore strangeness where it inserted two tabs
    before every instruction.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81396 91177308-0d34-0410-b5e6-96231b3b80d8

commit c53c4e5693d079829a7a78d662e691217aaf190f
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 23:09:29 2009 +0000

    Fix a subtle bug in "return;" generation which caused us to miss
    a return in one case.  Instead of sprinking return handling code
    throughout the asmprinter generator, just treat it like any other
    normal statement.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81395 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa50179c30d291443d10d93a7ec6eb4958ee1ac5
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 9 23:01:25 2009 +0000

    Add comment re: clang dependency.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81393 91177308-0d34-0410-b5e6-96231b3b80d8

commit ffdf10df7ba8b1cef378d86ab11912a95b04e8d4
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 9 22:49:13 2009 +0000

    Added an abstract superclass, MCDisassembler, for
    all disassemblers.

    Modified the MemoryObject to support 64-bit address
    spaces, regardless of the LLVM process's address
    width.

    Modified the Target class to allow extraction of a
    MCDisassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81392 91177308-0d34-0410-b5e6-96231b3b80d8

commit be23fd415c91d6b17149b67497316d9593305e05
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 21:26:19 2009 +0000

    Use the EOL that takes the encoding and translates it into DWARF-English.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81382 91177308-0d34-0410-b5e6-96231b3b80d8

commit c38ebcb176943ab2d8c5e0aa458f3f18990f15b8
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 21:08:12 2009 +0000

    Early exit from function.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81381 91177308-0d34-0410-b5e6-96231b3b80d8

commit cb3105b639197e0e15486fa17beeee74682a608c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 21:06:24 2009 +0000

    Small amount of code clean-up: Don't use ".size()" when not necessary.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81380 91177308-0d34-0410-b5e6-96231b3b80d8

commit a0741b254540f2c14be367e5de6f893e6b817f35
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 20:45:42 2009 +0000

    add a gross hack to get "SrcLine" comments to show up with the
    new asmprinter.  Differently gross hack coming next.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81379 91177308-0d34-0410-b5e6-96231b3b80d8

commit e34788cb7ed482bf3b51075f1b06ccc03021fbac
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 20:34:59 2009 +0000

    hoist the call to processDebugLoc out of the generated
    asm printer into the "printInstruction" routine.  This
    fixes a problem where the experimental asmprinter would
    drop debug labels in some cases, and fixes issues on ppc/xcore
    where pseudo instructions like "mr" didn't get debug locs properly.

    It is annoying that this moves the call from one place into each
    target, but a future set of more invasive refactorings will fix
    that problem.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81377 91177308-0d34-0410-b5e6-96231b3b80d8

commit a46d337b041e98c716269c600e3097cc5cca64ae
Author: Lang Hames <lhames@gmail.com>
Date:   Wed Sep 9 20:14:17 2009 +0000

    Removed static qualifier from a few index related methods. These methods may require a LiveIntervals instance in future.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81374 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5af655e4025b57503a223cbfba2e540f5bab113f
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 18:19:35 2009 +0000

    Reverted r81358.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81364 91177308-0d34-0410-b5e6-96231b3b80d8

commit f06a9bac9d29e83d24d667ed42f1028e493de42d
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 18:18:18 2009 +0000

    Fix SplitCriticalEdge to properly update LCSSA form when splitting a
    loop exit edge -- new PHIs may be needed not only for the additional
    splits that are made to preserve LoopSimplify form, but also for the
    original split. Factor out the code that inserts new PHIs so that it
    can be used for both. Remove LoopRotation.cpp's code for manually
    updating LCSSA form, as it is now redundant. This fixes PR4934.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81363 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8aa5c72ebecdde5b86c4564ef6059faf34eb1ed7
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Sep 9 18:03:46 2009 +0000

    Fix build, add missing simicolon.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81362 91177308-0d34-0410-b5e6-96231b3b80d8

commit a89b291eb4dee0605e7618653dac2634fea14e92
Author: Mike Stump <mrs@apple.com>
Date:   Wed Sep 9 17:57:16 2009 +0000

    Reflow comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81361 91177308-0d34-0410-b5e6-96231b3b80d8

commit f193e18b174a8fe51242aabb07f3c0a4f39415af
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 17:53:39 2009 +0000

    Preserve ProfileInfo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81360 91177308-0d34-0410-b5e6-96231b3b80d8

commit a1eaf2a024b2338fcdf2ffab01b7169319969830
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 17:52:57 2009 +0000

    Add the first functions for updating ProfileInfo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81359 91177308-0d34-0410-b5e6-96231b3b80d8

commit ba865fcfc00592809b38bad4e65aa5eebd9103bd
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 17:51:39 2009 +0000

    Cleaned up code by factoring out common portions of edge loading into funcion.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81358 91177308-0d34-0410-b5e6-96231b3b80d8

commit 26f6d849e4659e4bb4944359b302fd2aa0e0155b
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 9 17:44:26 2009 +0000

    Take lock before removing a node from MDNodeSet.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81356 91177308-0d34-0410-b5e6-96231b3b80d8

commit 44c965aed1380578a557b9367f94dee4261dd28d
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 9 17:30:04 2009 +0000

    Enable MDNode uniquing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81355 91177308-0d34-0410-b5e6-96231b3b80d8

commit ae4f2739f3a56d33a4049ca94b06021b2bd9bc7e
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 17:17:19 2009 +0000

    Fix an 80-column violation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81354 91177308-0d34-0410-b5e6-96231b3b80d8

commit 94e5001925e25df698a8372024f06bd8581e6edf
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 9 17:07:07 2009 +0000

    Gracefully destroy MDNodes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81353 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0d0ae7a4285264213962e906068c98dcf97f2b8e
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 16:47:12 2009 +0000

    Hide all cscope files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81350 91177308-0d34-0410-b5e6-96231b3b80d8

commit 99a2c97352dfd94a4b94fc6f23f8f0dd6f1ff7be
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 16:45:41 2009 +0000

    Updated svn:ignore to hide *.cmx files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81349 91177308-0d34-0410-b5e6-96231b3b80d8

commit 920911d1e9f01bca349c9cf90fe78712491a4766
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 16:00:57 2009 +0000

    revert r81335, which breaks the build.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81347 91177308-0d34-0410-b5e6-96231b3b80d8

commit da58ebcc2659fad293f11e4cd48f9d92b7fc594b
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 14:22:57 2009 +0000

    When widening a vector load, use the correct chain. This fixes PR4891.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81343 91177308-0d34-0410-b5e6-96231b3b80d8

commit ca1fa68f6f989937a2233797e0f7e6942c4d3b6a
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 13:01:03 2009 +0000

    Fixed wrong storage option for ProfileVerifierDisableAssertions.
    Fixed non working -profile-verifier-noassert option.
    Fixed missing newline in debugEntry().
    Cleaned up assert messages. (assert(0 && Message) is still shown, but the message is printed before.)
    When verifiying loaded profiles the ProfileVerifier got confused when block was a setjmp target, this is checked now.
    When verifiying loaded profiles the ProfileVerifier got confused when block eventually reaching an exit(), this is checked now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81338 91177308-0d34-0410-b5e6-96231b3b80d8

commit 20bfe16d937eb797d4248dec6c2a57b691779e35
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 9 12:48:26 2009 +0000

    Updated ProfileInfo to have clean seperation between different sentinels.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81335 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7662985fce9b2ca4b60bc57321142a7149fe63d2
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Wed Sep 9 12:09:08 2009 +0000

    Add a shortcut for OS X to Path::GetMainExecutable. This gives a nice speedup on
    clang's testsuite.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81333 91177308-0d34-0410-b5e6-96231b3b80d8

commit c755dc57023bd41f52fa464c2fd5008b2171a0c0
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Sep 9 10:14:55 2009 +0000

    Copy-pasto.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81331 91177308-0d34-0410-b5e6-96231b3b80d8

commit 00456a75b37a9e1edda5a37657037001eb2deee9
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Sep 9 09:52:04 2009 +0000

    Revert 81248 for now.

    Program objects have ownership semantics on Windows.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81329 91177308-0d34-0410-b5e6-96231b3b80d8

commit fd1f9fef9648975b0a201da42797d12415eeb83a
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Wed Sep 9 09:51:47 2009 +0000

    Check that the 'kill' call succeeded.

    Thanks to Duncan Sands for spotting this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81328 91177308-0d34-0410-b5e6-96231b3b80d8

commit ebd2da13f15d830ecbac3ffb953fc00bfde9bab2
Author: Edwin Török <edwintorok@gmail.com>
Date:   Wed Sep 9 09:34:43 2009 +0000

    Add testcase for r81322 (PR4933).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81327 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58b79487c4ff0f1a4d6c39ce02ab323a73c20b03
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Wed Sep 9 08:48:53 2009 +0000

    Provide proper section flags for various BSS flavours

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81322 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5e258a3086667213fb50e920d661bd91a7c0c134
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Wed Sep 9 08:41:20 2009 +0000

    Whitespace cleanup

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81321 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4de5778fc6ee03ef9b6f2c79a3c92f1886b90e73
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 06:19:34 2009 +0000

    add a testacse for the objc problem that required required r81305
    to be temporarily disabled.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81320 91177308-0d34-0410-b5e6-96231b3b80d8

commit 965cb2f51ad0e6a8e6e22d1d348057c82a7994b6
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 06:11:14 2009 +0000

    disable the new asmprinter by default.  Both the Mangler and MCSymbol
    printing stuff are quoting symbols now, breaking objc testcases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81319 91177308-0d34-0410-b5e6-96231b3b80d8

commit 52f6f63fbd1339c08b982355b62b85dc344add50
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 06:05:16 2009 +0000

    Cast MO.getImm() to unsigned before comparing with an unsigned limit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81318 91177308-0d34-0410-b5e6-96231b3b80d8

commit 509ea0c591607793cc3fdf076b80c5743b72ef17
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Wed Sep 9 05:04:01 2009 +0000

    Make TypeBuilder's result depend on the LLVMContext it's passed.
    TypeBuilder was using a local static variable to cache its result. This made it
    ignore changes in its LLVMContext argument and always return a type constructed
    from the argument to the first call.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81316 91177308-0d34-0410-b5e6-96231b3b80d8

commit 00b667ca7c080da239365c2b129fa85854005ecb
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 9 02:41:50 2009 +0000

    Update test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81314 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8acf90f7d6f9850e5192cb6530261aa5d829663b
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 9 02:41:42 2009 +0000

    Count test correctly with -q.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81313 91177308-0d34-0410-b5e6-96231b3b80d8

commit 00a068c0defbc610732b89f79904cd04e0a70dc0
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 9 02:41:32 2009 +0000

    Fix another refactoro.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81312 91177308-0d34-0410-b5e6-96231b3b80d8

commit c84d4d3a2e752a4ba621587c066c1177cb8d5f40
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 01:56:29 2009 +0000

    Make sure to make stub region writable before emission, executable after emission.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81311 91177308-0d34-0410-b5e6-96231b3b80d8

commit a989293ca8e2c88ac10cf6fb577a9ece58b7b845
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 01:47:07 2009 +0000

    Fix arm jit encoding bug introduced by 75048. Some instructions', e.g. MOVi, bit 25 should be set.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81310 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa04aba9a45c6870836e614150182cd487aa7af3
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 01:45:24 2009 +0000

    Make sure the memory range is writable before memset'ing it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81308 91177308-0d34-0410-b5e6-96231b3b80d8

commit 204d7688f36dfed6dd487371db80ad9140b36986
Author: Eric Christopher <echristo@apple.com>
Date:   Wed Sep 9 01:44:53 2009 +0000

    Correct __cxa_end_catch documentation to reflect that it doesn't take any arguments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81307 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7b3c2ad4b0e7825170e90aadb07fe99408d4046b
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 9 01:38:23 2009 +0000

    Remove comments which don't add much to .s readibility.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81306 91177308-0d34-0410-b5e6-96231b3b80d8

commit 89e53b29fc360d43953ac7df1fbded8e33ed9956
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:41:36 2009 +0000

    turn the mcinst asmprinter on by default for x86, tweaking two tests to
    expect the slight syntax differences in the generated code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81305 91177308-0d34-0410-b5e6-96231b3b80d8

commit 78c95d8c68ea762991d677773b07eb4d082bfcbc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:40:31 2009 +0000

    tidy up

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81304 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9cecef9d4ce35724024f8df6dac209897a76d6f1
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 00:30:25 2009 +0000

    Remove failing test...

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81303 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4c8121fc171afe801eab440d89443985b136b53f
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 00:23:52 2009 +0000

    Add an svn:ignore.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81302 91177308-0d34-0410-b5e6-96231b3b80d8

commit d456b2e7d9e9d219e1d429104a35cb6ea5db91ab
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:23:32 2009 +0000

    make sure to send external symbols through the mangler,
    this fixes mingw-alloca.ll with the new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81301 91177308-0d34-0410-b5e6-96231b3b80d8

commit abe57efd23c3d7f05b01aa30be895f5ae3a41ff4
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 00:22:49 2009 +0000

    Use "opt < %s" instead of "opt %s" to keep the testname away from the grep.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81299 91177308-0d34-0410-b5e6-96231b3b80d8

commit 44130371343172fe453917c41f74dd795e2fe85e
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:22:31 2009 +0000

    this got merged into lea.ll

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81298 91177308-0d34-0410-b5e6-96231b3b80d8

commit b39ffdf617c65df69bddce5d456bbfb63426060b
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:19:46 2009 +0000

    filecheckize

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81297 91177308-0d34-0410-b5e6-96231b3b80d8

commit 98d648dc6c48b4a9cc0d8126ec22d10ccf51813e
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:14:09 2009 +0000

    allow @ in symbol names without quoting the identifier.  This
    allows things like @PLT without quotes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81296 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6b3593ac463ad21559e0097a268888c79e4e403e
Author: Bill Wendling <isanbard@gmail.com>
Date:   Wed Sep 9 00:11:02 2009 +0000

    Fix PR4865. This syncs up the JIT's DWARF emitter with what's in the
    'DwarfException.cpp' file, which changed how CIEs were emitted, the sizes of
    some fields, etc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81295 91177308-0d34-0410-b5e6-96231b3b80d8

commit 50470b55a378c023286f09325ae098496becc002
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 9 00:10:14 2009 +0000

    add support for @PLT and friends on external symbols, fixes
    x86-64-pic-11.ll with the new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81294 91177308-0d34-0410-b5e6-96231b3b80d8

commit da594cf0865888a79fe498de539e2285430674cb
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 9 00:09:15 2009 +0000

    Eliminate more uses of llvm-as and llvm-dis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81293 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0a063105e432e649d64d354a3ea4b295172ed6cf
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 23:54:48 2009 +0000

    Eliminate more uses of llvm-as and llvm-dis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81290 91177308-0d34-0410-b5e6-96231b3b80d8

commit 801631d7291d79bf1e9381dcd07e1f2af2b9eeb7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:51:06 2009 +0000

    update various tests for signedness changes in .s file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81289 91177308-0d34-0410-b5e6-96231b3b80d8

commit 793df4a99f1c9c201d1d660c469eb396fd30c926
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:44:53 2009 +0000

    adjust for signedness change.  I'd appreciate it if an ARM flavored person
    could look at this: the top undefined bits of an immediate shouldn't affect
    isel (cmp vs cmp.w)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81288 91177308-0d34-0410-b5e6-96231b3b80d8

commit f104fefd323bde3c0259a290322b01883457ed5a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 23:44:24 2009 +0000

    Merge Archive/extract* tests into one; this avoids a race when tests are run in
    parallel (the test should really use temps for the output, though).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81287 91177308-0d34-0410-b5e6-96231b3b80d8

commit 84be013efdfb9340a10c2f2821211423d0a962ab
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:41:06 2009 +0000

    merge thumb2-bic2.ll into thumb2-bic.ll and update for signedness changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81285 91177308-0d34-0410-b5e6-96231b3b80d8

commit 221813a2d67821161ca4604121d3d4b9a5e3c406
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 23:32:51 2009 +0000

    Add Triple::getArchTypeForDarwinArchName, which converts a "Darwin" architecture
    name (e.g. "ppc") to the appropriate constant.

    Also, StringRefize additional Triple constructor.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81274 91177308-0d34-0410-b5e6-96231b3b80d8

commit ee69fee764b11c7e480bb29ef351f93062bbdcca
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:32:40 2009 +0000

    tweak this to pass on linux.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81273 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b349f2003f776ef5bca4e009bf0af96a884ca52
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 23:32:35 2009 +0000

    Improve JIT error message for users crazy enough to use -march with JIT, and
    mention -version in messages about missing targets.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81272 91177308-0d34-0410-b5e6-96231b3b80d8

commit 75410d8bc45d8536e7a7c7acdce7b7a064256291
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:20:50 2009 +0000

    parenthesize symbol names that start with $, fixing X86/dollar-name.ll with
    the new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81269 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd30f56da8ae5252a5028754cbf035d4081c6cb7
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:16:26 2009 +0000

    convert to filecheck syntax

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81267 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0ac501ab8363823363bb62cba3f3bde409d8c5b5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 23:05:44 2009 +0000

    change selectiondag to add the sign extended versions of immediate operands
    to instructions instead of zero extended ones.  This makes the asmprinter
    print signed values more consistently.  This apparently only really affects
    the X86 backend.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81265 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa540692bfbce485b154f35b13f10748819d19e1
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 22:57:49 2009 +0000

    Use "opt < %s" instead of "opt %s" so that opt doesn't print the test
    filename in the output, which interferes with the tests' grep lines.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81263 91177308-0d34-0410-b5e6-96231b3b80d8

commit 14636a5b8822276713045b4322b1f9f9c0c7c600
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Sep 8 22:51:43 2009 +0000

    Unbreak getOnesVector() / getZeroVector() to use valid ARM extended imm's.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81262 91177308-0d34-0410-b5e6-96231b3b80d8

commit f15d065c6f04c706e8262c116d3d4d4040f5eb64
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 22:41:33 2009 +0000

    Convert a few more opt | llvm-dis to opt -S.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81261 91177308-0d34-0410-b5e6-96231b3b80d8

commit d9352009ee611a1443f5dca5202ffc76430fd385
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 22:38:46 2009 +0000

    filecheckize some tests

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81259 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5bb7c7c3b0d45867a9770d5468624cbefe37adad
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 22:34:10 2009 +0000

    Use opt -S instead of piping bitcode output through llvm-dis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81257 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e4519c64ba34818ace9858444a66399be7eecfd
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 22:20:35 2009 +0000

    Use MemoryBuffer::getBufferIdentifier() in the AsmPrinter instead
    of requiring a name be passed in. This makes it use "<stdin>"
    instead of "-" and makes it more consistent with the Bitcode reader.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81256 91177308-0d34-0410-b5e6-96231b3b80d8

commit 61cf99d511f74bef0739cdbfbbcf7094d3db2303
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 8 20:31:27 2009 +0000

    This should unbreak the build on 64-bit Linux.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81252 91177308-0d34-0410-b5e6-96231b3b80d8

commit 66b57f3a2a4891f05392bdffb6717326f99b9bc6
Author: Owen Anderson <resistor@mac.com>
Date:   Tue Sep 8 19:53:15 2009 +0000

    Fix PR4909, patch by Jakub Staszak.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81250 91177308-0d34-0410-b5e6-96231b3b80d8

commit c5e639c1b8eb54e0af46b3a529d0a1cac39f8ded
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 8 19:51:39 2009 +0000

    Const-correctness.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81249 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7490029b28358b8251bf525e199b2618a7da4afa
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 8 19:51:12 2009 +0000

    Since Program is basically a PID, it should be copyable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81248 91177308-0d34-0410-b5e6-96231b3b80d8

commit 460b0175ff36930e7ab2a0c1e0ac1c861b704765
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 8 19:50:55 2009 +0000

    Get rid of the Pid_ member in the Program class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81247 91177308-0d34-0410-b5e6-96231b3b80d8

commit a28016831340436a42b077c2711e040c46cb106f
Author: Mikhail Glushenkov <foldr@codedgers.com>
Date:   Tue Sep 8 19:50:27 2009 +0000

    Add a Kill() function to the Program class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81246 91177308-0d34-0410-b5e6-96231b3b80d8

commit 83d45d7286b38453c8182486393dabde6f28c574
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 19:45:34 2009 +0000

    another typo

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81243 91177308-0d34-0410-b5e6-96231b3b80d8

commit e951acadc8f81264295608f02ea3f7dcbb0e3846
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 8 18:52:20 2009 +0000

    Do not specify -mmacosx-version-min if building for arm-apple-darwin.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81240 91177308-0d34-0410-b5e6-96231b3b80d8

commit a97bc6042d8356416520f6daf9c9269c3afde89b
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 18:48:01 2009 +0000

    remove an extremely dubious instcombine transformation of
    extractelement(load).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81239 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1c440a116254922bcaeae433788bfb170a8546e1
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 8 18:14:36 2009 +0000

    Remove dead code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81235 91177308-0d34-0410-b5e6-96231b3b80d8

commit d873a95ab04653b72825b360c48420e6763f3da3
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 17:03:05 2009 +0000

    Trim unnecessary declarations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81227 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1b4c27779eba0ad4edeb73d1c2855345ad56f6ff
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 16:50:01 2009 +0000

    Change these tests to feed the assembly files to opt directly, instead
    of using llvm-as, now that opt supports this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81226 91177308-0d34-0410-b5e6-96231b3b80d8

commit 06db349124125c3fc5c310afeb56be0d2d81aacb
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 16:14:54 2009 +0000

    Fix may-be-used-uninitialized warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81223 91177308-0d34-0410-b5e6-96231b3b80d8

commit 25de0deb077ad1db2da9b0ed3ba6c0efc07a936d
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 15:52:56 2009 +0000

    llvm-as is no longer needed here, now that opt can read assembly
    files directly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81222 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9cec4125f92b12880692c3e4a378b792a85ea67a
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 15:45:00 2009 +0000

    Re-apply r80926, with fixes: keep the domtree informed of new blocks
    that get created during loop unswitching, and fix SplitBlockPredecessors'
    LCSSA updating code to create new PHIs instead of trying to just move
    existing ones.

    Also, optimize Loop::verifyLoop, since it gets called a lot. Use
    searches on a sorted list of blocks instead of calling the "contains"
    function, as is done in other places in the Loop class, since "contains"
    does a linear search. Also, don't call verifyLoop from LoopSimplify or
    LCSSA, as the PassManager is already calling verifyLoop as part of
    LoopInfo's verifyAnalysis.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81221 91177308-0d34-0410-b5e6-96231b3b80d8

commit dd528195c766db4211a29e0955e5f888f322dc37
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Sep 8 15:22:32 2009 +0000

    Add NEON 'laned' operations. This fixes another bunch of gcc testsuite fails and
    makes the code faster.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81220 91177308-0d34-0410-b5e6-96231b3b80d8

commit c802e48f18be86250b5249a8f545fc61ae858aa6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 15:13:16 2009 +0000

    fix a couple typos pointed out by edwin and duncan

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81219 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce4265b24fa707a83b564c814a66d6f4ca7e76fe
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 14:14:24 2009 +0000

    Unbreak these tests. Chris, please verify that these changes are intended.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81217 91177308-0d34-0410-b5e6-96231b3b80d8

commit b246f53c4457fe7787ba675807eb78e8c4cdd540
Author: Richard Pennington <rich@pennware.com>
Date:   Tue Sep 8 12:47:30 2009 +0000

    Add source debug information to the Sparc code generator.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81215 91177308-0d34-0410-b5e6-96231b3b80d8

commit 99c816857be050d35719a3425f46a4ac1b1057e7
Author: Nicolas Geoffray <nicolas.geoffray@lip6.fr>
Date:   Tue Sep 8 07:39:27 2009 +0000

    When emitting a label for a PostCall safe point, the machine
    instruction to insert before can be end(). getDebugLoc on
    end() returns an invalid value, therefore use the debug
    loc of the call instruction, and give it to InsertLabel.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81207 91177308-0d34-0410-b5e6-96231b3b80d8

commit d326c7aff924917ceb6cb9b9a788865941d8b531
Author: Nicolas Geoffray <nicolas.geoffray@lip6.fr>
Date:   Tue Sep 8 07:36:18 2009 +0000

    Also emit a label for TargetInstrInfo::GC_LABEL.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81206 91177308-0d34-0410-b5e6-96231b3b80d8

commit a04450b1cad35ec96eb4b15d5646661232475a51
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Tue Sep 8 07:30:03 2009 +0000

    Unbreak

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81205 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f6c7da13e517fa7aacc7514bbff034365823970
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Tue Sep 8 06:39:07 2009 +0000

    When remat'ing and destination virtual register has a sub-register index. Make sure the sub-register class matches the register class of the remat'ed instruction definition register class.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81204 91177308-0d34-0410-b5e6-96231b3b80d8

commit b051a8456f5c4ef77a845b6359f32cd26b6938a8
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:37:35 2009 +0000

    Print "X-42" instead of "X+-42".

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81203 91177308-0d34-0410-b5e6-96231b3b80d8

commit 914d43ea8fcbcc97cf319ce1ea86af4489797ca2
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:34:07 2009 +0000

    make formatting of expressions more closely match the existing asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81202 91177308-0d34-0410-b5e6-96231b3b80d8

commit 44ef733215a9c96583d0d74f32b79fd2017718e5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:27:48 2009 +0000

    tidy whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81201 91177308-0d34-0410-b5e6-96231b3b80d8

commit a2724d2a6913f8ec77ccd2291249cbe11d4405d2
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:26:40 2009 +0000

    disable some irrelevant eh emission

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81200 91177308-0d34-0410-b5e6-96231b3b80d8

commit 420109d27c41cf7306706d14ca814636294f2b55
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:25:12 2009 +0000

    add support for some missing modifiers on jumptable/constant pool entries.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81199 91177308-0d34-0410-b5e6-96231b3b80d8

commit c638baf0df2f24ebf41eca5f8521a69ad1a5a076
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:19:15 2009 +0000

    add a bunch more evil lowering code to work around various :subreg32 modifiers
    in the .td files.  This gets us down to 18 failures in codegen/x86 with the
    new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81198 91177308-0d34-0410-b5e6-96231b3b80d8

commit bad5239b41aae2d840894165a79bd315e511d520
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 06:08:07 2009 +0000

    lit needs bash for tcl-as-sh execution, we use set -o pipefail.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81197 91177308-0d34-0410-b5e6-96231b3b80d8

commit 06418126b47276fa17a388ee789fdf2b65bf75e9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 06:03:07 2009 +0000

    ADd support for "lowering" the X86::MOVZX16rr8/X86::MOVZX16rm8
    subreg32 modifiers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81196 91177308-0d34-0410-b5e6-96231b3b80d8

commit a2683c9d41df3f486f949333263ae6a1fd3e8289
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 05:49:25 2009 +0000

    add a hack to lower MOV16r0 to MOV32r0 in MCInstLower, eliminating
    the problem with subreg32 modifiers.  This gets all of Olden working
    with the new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81195 91177308-0d34-0410-b5e6-96231b3b80d8

commit 926c3ff188a32c57f740994172fc2cde75504dfd
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 05:46:28 2009 +0000

    Fix typo that worked on python 2.6.

    Also, fix unit tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81194 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6ed791867cfb7fe82e3f9dd512efe4e33c4f6f51
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 8 05:46:15 2009 +0000

    Hoist out the test+insert to CheckedTypes. This doesn't seem to affect
    performance.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81193 91177308-0d34-0410-b5e6-96231b3b80d8

commit c6be620e43ce72f3e7c4a0acf3f8d05020c5c536
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 05:37:51 2009 +0000

    Fix a refactoro.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81192 91177308-0d34-0410-b5e6-96231b3b80d8

commit 12ffa4de8df01f0dc0533945d05ea8466d79c104
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 05:31:44 2009 +0000

    Add 'lit' support for llvm tests.
     - This adds 'make check-lit' from the top-level Makefile.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81191 91177308-0d34-0410-b5e6-96231b3b80d8

commit fb15e592d9d89cf2ad3949ecc601848c5d930f0f
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 8 05:31:18 2009 +0000

    Add 'lit' testing tool.
     - make install && man $(llvm-config --prefix)/share/man/man1/lit.1 for more
       information.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81190 91177308-0d34-0410-b5e6-96231b3b80d8

commit 599c392e8d93a229de7d1a6a7182b40e33791f3c
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 05:15:50 2009 +0000

    llvm::cerr is gone.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81189 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1efd4fd6a1b967fc3f0dbbd0d9c835ea5eec4f21
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 05:14:44 2009 +0000

    update this to use raw_ostream

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81188 91177308-0d34-0410-b5e6-96231b3b80d8

commit c3195875c346108303d315cac0c245d80f980dfb
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 04:55:44 2009 +0000

    fix PR4767, a crash because fp stackifier visited blocks in
    depth first order, so it wouldn't process unreachable blocks.
    When compiling at -O0, late dead block elimination isn't done
    and the bad instructions got to isel.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81187 91177308-0d34-0410-b5e6-96231b3b80d8

commit d069a058917c5968774064354516f628159971c6
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 03:47:41 2009 +0000

    remove a turd

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81186 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1ba36b786d8c051e764fb39e0c2503ba1f19dc92
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 03:44:51 2009 +0000

    instcombine transforms vector loads that are only used by
    extractelement operations into a bitcast of the pointer,
    then a gep, then a scalar load.  Disable this when the vector
    only has one element, because it leads to infinite loops in
    instcombine (PR4908).

    This transformation seems like a really bad idea to me, as it
    will likely disable CSE of vector load/stores etc and can be
    better done in the code generator when profitable.  This
    goes all the way back to the first days of packed types,
    r25299 specifically.

    I'll let those people who care about the performance of vector
    code decide what to do with this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81185 91177308-0d34-0410-b5e6-96231b3b80d8

commit a48dd11cea464022adf7c557c46b28abf148283a
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 03:39:55 2009 +0000

    fix pasto

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81184 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e63feec4518f1c1d86121cd8f7957cf1211f720
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 03:32:53 2009 +0000

    add getVectorOperand/getIndexOperand accessors to ExtractElementInst.
    Fix some const correctness problems in SelectInst.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81183 91177308-0d34-0410-b5e6-96231b3b80d8

commit 134e5d925b66c14c38438c0beca9b0f3bc30db47
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 8 02:02:39 2009 +0000

    Simplify from my last change. Assert1 is a macro that makes its caller return,
    so "Assert1(isa<>); cast<>" is a valid idiom.

    Actually check the PHI node's odd-numbered operands for BasicBlock-ness, like
    the comment said.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81182 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1b9f83a3e87d2b6cbcf1af525f0b1796c17fd571
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 8 01:44:02 2009 +0000

    Fix an abort on a store of an empty struct member. getValue returns
    null in the case of an empty struct, so don't try to call getNumValues
    on it.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81180 91177308-0d34-0410-b5e6-96231b3b80d8

commit d95bc887780e7af86abcf45c64d8772936ed6475
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Tue Sep 8 01:23:52 2009 +0000

    Verify types. Invalid types can be constructed when assertions are off.

    Make the verifier more robust by avoiding unprotected cast<> calls. Notably,
    Assert1(isa<>); cast<> is not safe as Assert1 does not terminate the program.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81179 91177308-0d34-0410-b5e6-96231b3b80d8

commit d9ac5deabfa68d437de63461d45b9c2912f527b9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 01:22:54 2009 +0000

    fix PR4915, a crash in -debug mode.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81177 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4a748b0f120835f4e83b77cfa761b504125ec817
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 00:27:14 2009 +0000

    Fix PR4882, by making MemCpyOpt not dereference removed stores to get the
    context for the newly created operations.

    Patch by Jakub Staszak!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81175 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1698f255e9973fbc44b66852770e289db3abfa83
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 00:13:52 2009 +0000

    fix ComputeMaskedBits handling of zext/sext/trunc to work with vectors.
    This fixes PR4905

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81174 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6e27672525f06113d206f961212ccd7db9226240
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 8 00:06:16 2009 +0000

    add some comments to describe the invariants.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81173 91177308-0d34-0410-b5e6-96231b3b80d8

commit f3a08b82db22aa66dd10f9a939993c7797baf32e
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 23:54:19 2009 +0000

    Reappy r80998, now that the GlobalOpt bug that it exposed on MiniSAT is fixed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81172 91177308-0d34-0410-b5e6-96231b3b80d8

commit c4d34a74cd602a2a0438efade40a536d67ed38a3
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 23:47:14 2009 +0000

    Fix a thinko: When lowering fneg with xor, bitcast the operands
    from floating-point to integer first, and bitcast the result
    back to floating-point. Previously, this test was passing by
    falling back to SelectionDAG lowering. The resulting code isn't
    as nice, but it's correct and CodeGen now stays on the fast path.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81171 91177308-0d34-0410-b5e6-96231b3b80d8

commit 466291fd5924c11599be837375214d41ef7f518a
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 7 23:33:52 2009 +0000

    add some more notes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81170 91177308-0d34-0410-b5e6-96231b3b80d8

commit fda03491a5933cb61d0c6a54edba4fac12b651e2
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 23:04:59 2009 +0000

    Add a testcase for the GlobalOpt inbounds fix.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81168 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d72cd8e173b1424d6e41eae1494268e457dc718
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 7 22:52:39 2009 +0000

    describe undef semantics in some more detail.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81167 91177308-0d34-0410-b5e6-96231b3b80d8

commit dabbeec685c1fa912aebc208f715ba9ee92a0899
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:45:41 2009 +0000

    Add inbounds to these getelementptrs, now that GlobalOpt requires this,
    to preserve the meaning of these tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81166 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2723ad812300b525b77334a4180d3531613ae3e
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:44:55 2009 +0000

    Don't commit stores with addresses that have indices that are not
    compile-time constant integers or that are out of bounds for their
    corresponding static array types. These can cause aliasing that
    GlobalOpt assumes won't happen.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81165 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9524ee6fbbe252887fc957b2d5612318abed5171
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:42:05 2009 +0000

    Don't commit addresses of aggregate values. This avoids problems with
    an aggregate store overlapping a different aggregate store, despite
    the stores having distinct addresses.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81164 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0c834c07335e47546df1d9ef10f79b69cfee7651
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:40:13 2009 +0000

    Fix GlobalOpt to avoid committing a store if the address getelementptr
    is missing the inbounds flag. This is slightly conservative, but it
    avoids problems with two constants pointing to the same address but
    getting distinct entries in the Memory DenseMap.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81163 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6d907d00498eaaa2bf0d176adf73f66c0c80d8e8
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:34:43 2009 +0000

    Preserve the InBounds flag when evaluating a getelementptr instruction
    into a getelementptr ConstantExpr.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81162 91177308-0d34-0410-b5e6-96231b3b80d8

commit 278fbe6ee2d970a5379dbeb8cf4e55a54e0421d6
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Sep 7 22:31:26 2009 +0000

    Simplify this code by using hasDefinitiveInitializer().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81161 91177308-0d34-0410-b5e6-96231b3b80d8

commit 706e47f84bb290a91bf2147c9e7f5c77deb6558f
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 7 22:15:23 2009 +0000

    tighten test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81159 91177308-0d34-0410-b5e6-96231b3b80d8

commit 542cd205d82f4d38208ea64aed56c38434381539
Author: Chris Lattner <sabre@nondot.org>
Date:   Mon Sep 7 22:14:41 2009 +0000

    tweak test, add PR#

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81158 91177308-0d34-0410-b5e6-96231b3b80d8

commit 13c337ae0c3af6cadefd022baab370e558c00685
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Sep 7 21:50:24 2009 +0000

    Express this in the canonical way.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81157 91177308-0d34-0410-b5e6-96231b3b80d8

commit f9c2f24ff7c9803f68be9a2dbf53c5157cf77c30
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Mon Sep 7 20:44:51 2009 +0000

    Homogenize whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81156 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7201b61a736089675ab6bd04bd5fe92d9b42b76d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 19:26:18 2009 +0000

    Use -output-prefix in bugpoint tests so that outputs go in temp directory (and
    we don't race on them).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81155 91177308-0d34-0410-b5e6-96231b3b80d8

commit 377b5a388198dcfdba040b77352c6b4b2c7f577a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 19:26:11 2009 +0000

    Add -output-prefix option to bugpoint (to change the default output name).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81154 91177308-0d34-0410-b5e6-96231b3b80d8

commit 741507d7505493a7b270ba9146f0ed6eeb1a27f8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 19:26:02 2009 +0000

    Don't depend on Tcl behavior of redirecting stderr for all commands in a
    pipeline.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81153 91177308-0d34-0410-b5e6-96231b3b80d8

commit 45983257e95b1350100ed50a1e207eb73db58ac8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 19:25:54 2009 +0000

    Avoid Tcl substitution, introduced %llvmgcc_only for this one little test
    (%llvmgcc includes a '-w' argument, and this test looks for warnings).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81152 91177308-0d34-0410-b5e6-96231b3b80d8

commit 104b3ff2dbe1f6e8f3b06f2027774ea79fca204e
Author: Duncan Sands <baldrick@free.fr>
Date:   Mon Sep 7 05:58:25 2009 +0000

    Using a signal handler that does nothing should be
    equivalent to SIG_IGN.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81144 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6b778fd333ad44d9f1a8c05bc98fd42f5afc5b42
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 04:19:02 2009 +0000

    Update unittests for MDNode uniquing disable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81142 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41160673bbfa67301f5a3768d624a9bed81812b3
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 04:05:49 2009 +0000

    Disable MDNode uniquing.
     - Hopefully this unbreaks some llvm-gcc bootstraps.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81141 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1c40a1e0e73319536107388601b864e004cef4ad
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Sep 7 04:03:44 2009 +0000

    Document opt -S argument.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81140 91177308-0d34-0410-b5e6-96231b3b80d8

commit e187ef9ba5db756647acb2aff91123328e8feb38
Author: Eric Christopher <echristo@apple.com>
Date:   Sun Sep 6 22:20:54 2009 +0000

    Fix comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81138 91177308-0d34-0410-b5e6-96231b3b80d8

commit 978451f1282a624bc18ae4daf3a1d2a4e32912e1
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Sun Sep 6 20:21:48 2009 +0000

    Do not create calls via PLT in compilation callback - this is higly platform
    dependent. Hopefully, this will fix PR3801.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81132 91177308-0d34-0410-b5e6-96231b3b80d8

commit 65316a37fbf3d14b68a6f6812a429eac9ec82f3f
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 20:02:00 2009 +0000

    Do not try to override non-virtual methods, especially
    when the new method gives the same result as the original
    (as far as I can see).  This will hopefully pacify icc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81131 91177308-0d34-0410-b5e6-96231b3b80d8

commit 831102e53292a8cd36907a32ec96630bc5819378
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 19:29:07 2009 +0000

    Remove a left over bit of code with no effect.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81128 91177308-0d34-0410-b5e6-96231b3b80d8

commit 00caa72006e1ba4b2897461187fb18c060a36369
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 19:28:38 2009 +0000

    Avoid warnings if assertions are off.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81127 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8297d720b3983c946376e590cfbac5918078a4af
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 19:27:53 2009 +0000

    Remove unreachable code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81126 91177308-0d34-0410-b5e6-96231b3b80d8

commit 950b9861ba3a7964bc911df9b97fa8d136e0bcd5
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 18:03:32 2009 +0000

    Simplify.  Testing shows that this is not equivalent to BBI = CR.CaseBB + 1.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81124 91177308-0d34-0410-b5e6-96231b3b80d8

commit e0a6add2ae24cc9270fc5c85b16a8836d9278064
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 16:27:34 2009 +0000

    Avoid an unused variable warning when assertions are
    disabled.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81122 91177308-0d34-0410-b5e6-96231b3b80d8

commit fbc8e46ee99c6bc13b4cef2dabea28fa578f6c52
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 13:10:36 2009 +0000

    Change "const static" to "static const", as warned about
    by icc (#82).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81117 91177308-0d34-0410-b5e6-96231b3b80d8

commit dc94fb91bc0e3dba99c31b3b7f3b8e5048b0e137
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 12:56:52 2009 +0000

    Mark more constants unsigned, as warned about by icc (#68).
    Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81116 91177308-0d34-0410-b5e6-96231b3b80d8

commit 05db668fe21feee223e19fe50ddeb6456ddebafb
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 12:41:19 2009 +0000

    Remove some not-really-used variables, as warned
    about by icc (#593, partial).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81115 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7ac0e8af264c4ab82fb663d342011dfd18d4572d
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Sep 6 12:26:28 2009 +0000

    More MSVC warning fixes:
    1. DUPMAX is defined in regcomp.c, no need to redefine it in regutils.
    2. MSVC doesn't like snprintf, use _snprintf instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81114 91177308-0d34-0410-b5e6-96231b3b80d8

commit cd67298c9746bc1e4ac6f730f7d10122f00072c1
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 12:16:26 2009 +0000

    Remove strange 'const' qualifiers, as warned about by icc
    (#411).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81113 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0db71af6ee5f1ed8495222226db9e4c85eef4805
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Sep 6 12:10:17 2009 +0000

    It's a bool, so treat it like one. Fixes a MSVC warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81112 91177308-0d34-0410-b5e6-96231b3b80d8

commit f6e467911587ca54f496958b9e844d566667017b
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 11:45:14 2009 +0000

    Mark constants as unsigned, as pointed out by icc
    warnings (#174).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81111 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3872b7ec9730d0492e40ab8c279dd8d397d71d42
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 10:53:22 2009 +0000

    Tweak code into an equivalent form for which icc
    doesn't warn about unreachable instructions.  Patch
    by Erick Tryzelaar (#111).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81110 91177308-0d34-0410-b5e6-96231b3b80d8

commit a118e65f108d5222f359ff32d24a27bdcaf27eb1
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Sep 6 09:35:10 2009 +0000

    Fix an integer truncation noticed by MSVC.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81109 91177308-0d34-0410-b5e6-96231b3b80d8

commit defe7950099b9f472d0dc03d621b1c8cd72ecc4d
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sun Sep 6 09:29:39 2009 +0000

    Remove splint hints to silence warnings from ICC and MSVC.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81108 91177308-0d34-0410-b5e6-96231b3b80d8

commit e0223c296633ecaa5712c129a4cab7a0d6a3a9bf
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 08:55:57 2009 +0000

    Public and private corrections, warned about by icc (#304).
    Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81107 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c3f915679bede35de38a5702359ab5befc38b95
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 08:33:48 2009 +0000

    Remove some unused variables and methods warned about by
    icc (#177, partial).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81106 91177308-0d34-0410-b5e6-96231b3b80d8

commit bbfc76d44f8db3457b24e4c2fdfe0f7774a815a5
Author: Duncan Sands <baldrick@free.fr>
Date:   Sun Sep 6 07:23:28 2009 +0000

    Remove unneeded declaration, as warned about by
    icc (#1170).  Patch by Erick Tryzelaar.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81104 91177308-0d34-0410-b5e6-96231b3b80d8

commit cb834e9b6313111b17d9d8ee62ffe3cdf75568f8
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 6 02:31:36 2009 +0000

    Fix a possible crash call setIsInBounds.
     - I think there are more instances of this, but I think they are fixed in Dan's
       incoming patch. This one was preventing me from doing a bugpoint reduction
       though.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81103 91177308-0d34-0410-b5e6-96231b3b80d8

commit 610b1c2a518c8aba64f3e0967b7fd5442efce0b7
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 6 02:31:26 2009 +0000

    Simplify, now that gtest supports raw_ostream directly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81102 91177308-0d34-0410-b5e6-96231b3b80d8

commit ed6987d5e1669a0dec12cb470c38a0340ceabb7d
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Sun Sep 6 02:26:10 2009 +0000

    Revert r80926. It causes loop unswitch assertion and slow down some JIT tests significantly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81101 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4f3451886cd728c60d38f8eec7b6608acc684cc6
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 6 00:11:24 2009 +0000

    Revert "Include optional subclass flags, such as inbounds, nsw, etc., ...", this
    breaks MiniSAT on x86_64.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81098 91177308-0d34-0410-b5e6-96231b3b80d8

commit b7fb353614ccc2574e85f2f4d972e5b452c0e6ec
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sun Sep 6 00:00:13 2009 +0000

    Fix spacing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81097 91177308-0d34-0410-b5e6-96231b3b80d8

commit 6fb7ceecb1b05ddf1c78d5be285fcf38499bbcdf
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Sat Sep 5 18:27:40 2009 +0000

    Now that googletest can print ConstantRange, use EXPECT_EQ when testing for
    equality. Prefer EXPECT_EQ(foo, Full) over EXPECT_TRUE(foo.isFullSet()) because
    the former will print out the contents of the constant range that failed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81094 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2539a0fd5649cc11926e0f8207c871509a064fc0
Author: Jeffrey Yasskin <jyasskin@google.com>
Date:   Sat Sep 5 18:16:17 2009 +0000

    Teach googletest to use raw_ostream instead of just std::ostream.
    This can break when there are implicit conversions from types raw_ostream
    understands but std::ostream doesn't, but it increases the number of cases that
    Just Work.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81093 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3a5a153ce6ed9029a7a27f45b531a434c6139a40
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 12:38:44 2009 +0000

    Quote another '%S' in a test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81088 91177308-0d34-0410-b5e6-96231b3b80d8

commit 568d974702d7ebfc70a6dfae1fae5d69ed6b9d7a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 12:38:35 2009 +0000

    Rename %S metavar to %M (clang uses %S for the basename of the test file).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81087 91177308-0d34-0410-b5e6-96231b3b80d8

commit c6af8408bd6fa8a5517b8f282f8f4519ccf1a7d4
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 12:38:26 2009 +0000

    Temporary test files should use %t.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81086 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0edd5030da5e7f16bf7ae7728c55205bc2a45e7
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 11:53:06 2009 +0000

    Don't depend on arch specific global prefix.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81084 91177308-0d34-0410-b5e6-96231b3b80d8

commit b994d02f07d52dbb7876d2c273a278bf24d7cd22
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 11:35:16 2009 +0000

    Eliminate uses of %prcontext.
     - I'd appreciate it if someone else eyeballs my changes to make sure I captured
       the intent of the test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81083 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1a34ea6046da3f1645557e43e90ba92699ced486
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 11:34:53 2009 +0000

    opt: Add -S option to print output as LLVM assembly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81082 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0b4b45c440ef66927923db8c90555f4a84ad1b93
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Sat Sep 5 11:34:46 2009 +0000

    Eliminate some Tclisms.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81081 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2d876ee1f15217f2a537041f8d1e721dc8c20dc3
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Sat Sep 5 08:50:14 2009 +0000

    Delete unused #include.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81076 91177308-0d34-0410-b5e6-96231b3b80d8

commit e509b44f6964be58d9d5204589d0e68b6ed9c432
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Sat Sep 5 01:19:16 2009 +0000

    Stabilize the order of live intervals in the priority_queue used by the
    linear scan reg alloc.  This fixes a problem I ran into where extracting
    a function from a larger file caused the generated code to change (masking
    the problem I was trying to debug) because the allocator behaved differently.

    This changes the results for two X86 regression checks.  stack-color-with-reg
    is improved, with one less instruction, but pr3495 is worse, with one more
    copy.  As far as I can tell, these tests were just getting lucky or unlucky,
    so I've changed the expected results.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81060 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5290ac201f2bd669d8e09cfc45f98b6f39784324
Author: Devang Patel <dpatel@apple.com>
Date:   Sat Sep 5 00:34:14 2009 +0000

    Detect VLAs.
    Do not use DenseMap operator[] because it inserts new entry if lookup fails. Use find() to check an entry in a DenseMap first.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81058 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0c03f0626103c650db38940c5edf806648f6895d
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Sep 4 23:59:07 2009 +0000

    Ignore malformed global variable debug info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81055 91177308-0d34-0410-b5e6-96231b3b80d8

commit 239b5780eeee253127897d0bcfe0386c483b784d
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Fri Sep 4 22:45:23 2009 +0000

    Prune #includes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81052 91177308-0d34-0410-b5e6-96231b3b80d8

commit 92469fe6cc59a9f06e4d9f26d0047a6702dec6f3
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Fri Sep 4 22:44:03 2009 +0000

    Remove an unneeded call to c_str().

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81051 91177308-0d34-0410-b5e6-96231b3b80d8

commit 71743a46b89750f45c71aa694c103c86c247c040
Author: Kevin Enderby <enderby@apple.com>
Date:   Fri Sep 4 22:40:31 2009 +0000

    Added AsmToken enum constants to MCAsmLexer.h for '[', ']', '{', and '}' in
    preparation of supporting other targets. Then changed the lexer to parse these
    as tokens.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81050 91177308-0d34-0410-b5e6-96231b3b80d8

commit 685689cae6703e4ca9fce5805b44e99ca8047d4e
Author: Kevin Enderby <enderby@apple.com>
Date:   Fri Sep 4 21:45:34 2009 +0000

    Added the AsmToken::Hash enum constant to MCAsmLexer.h in preparation of
    supporting other targets.  Changed the code to pass MCAsmInfo to the parser
    and the lexer.  Then changed the lexer to use CommentString from MCAsmInfo
    instead of a literal '#' character.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81046 91177308-0d34-0410-b5e6-96231b3b80d8

commit 08fe10526f25d21437fd484b007a6ab772ef794d
Author: Devang Patel <dpatel@apple.com>
Date:   Fri Sep 4 21:32:05 2009 +0000

    While replacing an MDNode elment, properly update MDNode's operand list.
    MDNode's operand list does not include all elements.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81045 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1573308b6dd6e548c3ac70d740579db0fb086c67
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 4 21:22:04 2009 +0000

    Prevent warnings on compilers for which its not clear that assert won't return.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81044 91177308-0d34-0410-b5e6-96231b3b80d8

commit 056fc97aaab9f2ae097ee243175fb21a871b5462
Author: Lang Hames <lhames@gmail.com>
Date:   Fri Sep 4 21:03:07 2009 +0000

    Removed yet another std::ostream reference.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81042 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5cd57b09b71bd03b36c5d64707d50d05ca34618c
Author: Lang Hames <lhames@gmail.com>
Date:   Fri Sep 4 20:54:51 2009 +0000

    Removed some junk and a std::ostream operator that was hanging around.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81041 91177308-0d34-0410-b5e6-96231b3b80d8

commit d8f309943c6c05daa9e23f7bcb08cf5c18eb4a26
Author: Lang Hames <lhames@gmail.com>
Date:   Fri Sep 4 20:41:11 2009 +0000

    Replaces uses of unsigned for indexes in LiveInterval and VNInfo with
    a new class, MachineInstrIndex, which hides arithmetic details from
    most clients. This is a step towards allowing the register allocator
    to update/insert code during allocation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81040 91177308-0d34-0410-b5e6-96231b3b80d8

commit d98806736fb1505ccad81879fdddb2cbd0ab4880
Author: Dale Johannesen <dalej@apple.com>
Date:   Fri Sep 4 20:19:09 2009 +0000

    Test for llvm-gcc commit 81037.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81038 91177308-0d34-0410-b5e6-96231b3b80d8

commit 19da904e44d1f35af13c72f0fc3bdd9ec3a0ba73
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 4 17:21:59 2009 +0000

    Updated tests to use ProfileVerifer to test ProfileLoader and ProfileEstimator.
    (Keep disabled test disabled until selfhosted build issue is resolved.)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81008 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2ae05a1c31ecc161fa2ddfec4d1ce8a7fc5c2eb
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 4 17:15:10 2009 +0000

    Cleaned up ProfileVerifierPass.
    (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086219.html)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81007 91177308-0d34-0410-b5e6-96231b3b80d8

commit 68eca1aeb53324309e2cc7ec68a91423ec2e41e3
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Fri Sep 4 12:34:44 2009 +0000

    Converted MaximumSpanningTree algorithm to a generic template, this could go
    into llvm/ADT.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81001 91177308-0d34-0410-b5e6-96231b3b80d8

commit 99da1c065b2d6e4c4a175ec585b7e24f0f8f453a
Author: Dan Gohman <gohman@apple.com>
Date:   Fri Sep 4 12:08:11 2009 +0000

    Include optional subclass flags, such as inbounds, nsw, etc., in the
    Constant uniquing tables. This allows distinct ConstantExpr objects
    with the same operation and different flags.

    Even though a ConstantExpr "a + b" is either always overflowing or
    never overflowing (due to being a ConstantExpr), it's still necessary
    to be able to represent it both with and without overflow flags at
    the same time within the IR, because the safety of the flag may
    depend on the context of the use. If the constant really does overflow,
    it wouldn't ever be safe to use with the flag set, however the use
    may be in code that is never actually executed.

    This also makes it possible to merge all the flags tests into a single test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80998 91177308-0d34-0410-b5e6-96231b3b80d8

commit 680c2a0652497c5b9b550a147c96e506facb854b
Author: Duncan Sands <baldrick@free.fr>
Date:   Fri Sep 4 11:59:43 2009 +0000

    Use delete[] to match new[] (found by valgrind).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80997 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9dcb760ccdb1e1418afe31c42e6b26d663b00cbf
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 4 07:47:40 2009 +0000

    Run branch folding if if-converter make some transformations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80994 91177308-0d34-0410-b5e6-96231b3b80d8

commit 368ddcb5b8995476324018aed319e36085de3411
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Fri Sep 4 07:46:30 2009 +0000

    Fix comment for consistency sake.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80993 91177308-0d34-0410-b5e6-96231b3b80d8

commit 02d88831d19f9f0a81518af2db01e206aaa26473
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 4 05:07:52 2009 +0000

    Remove stale greps.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80986 91177308-0d34-0410-b5e6-96231b3b80d8

commit b273bb5cd6ff131f608ec09f581d7db23d8cb530
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Fri Sep 4 05:07:44 2009 +0000

    Update lib deps.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80985 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5d7babb3ed71916bf46f347d4ff0e0ea2a809c15
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 4 04:07:19 2009 +0000

    Convert tests to FileCheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80983 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9c2ed5cff22b49e07be176f3d4830b5bc67739c6
Author: Jim Grosbach <grosbach@apple.com>
Date:   Fri Sep 4 01:38:51 2009 +0000

    Whitespace cleanup

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80978 91177308-0d34-0410-b5e6-96231b3b80d8

commit 24fd31656faf1f70c5e4ade5b6462b2e66465748
Author: Eric Christopher <echristo@apple.com>
Date:   Fri Sep 4 01:14:14 2009 +0000

    If there's a calling convention attach it to the rewind function call.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80976 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4d47c5af7087d582a2ae89641051543689e2026b
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Fri Sep 4 00:32:31 2009 +0000

    Convert a test to FileCheck.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80975 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe0a279423e23454b9f41d59d2a86340fdceb8a8
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 3 23:54:22 2009 +0000

    Funky indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80971 91177308-0d34-0410-b5e6-96231b3b80d8

commit 146162cd340e559a31b8a3e3f67d358587a0f985
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 23:40:10 2009 +0000

    Revert "--- Reverse-merging r80908 into '.':", I already "fixed" this.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80970 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1046e41998ac9178d87226cb0869612c22f5c6d1
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 23:34:49 2009 +0000

    Revert 80959. It isn't sufficient to solve the full problem. And it
    introduced regressions in the Ocaml bindings tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80969 91177308-0d34-0410-b5e6-96231b3b80d8

commit c527d7e5a814b834aaece6e67d2447b9d2d2be5e
Author: Erick Tryzelaar <idadesub@users.sourceforge.net>
Date:   Thu Sep 3 23:27:31 2009 +0000

    Replace ocamlc tests with ocamlopt tests since they're less noisy.

    There's a bug with ocamlc that uses "char*" instead of "const char*" for
    global string variables. This causes g++ to be very noisy when linking
    ocamlc programs. That's why the ocaml test used to cat to /dev/null.
    ocamlopt doesn't have this problem, so we can get rid of the >/dev/null,
    which may obscure some problems.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80968 91177308-0d34-0410-b5e6-96231b3b80d8

commit e76bfd9f87d7255a4f0940e3a5f911e22cba7f6c
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 3 23:13:46 2009 +0000

    --- Reverse-merging r80908 into '.':
    D    test/Analysis/Profiling

    --- Reverse-merging r80907 into '.':
    U    lib/Analysis/ProfileInfoLoaderPass.cpp

    Attempt to remove failure in the self-hosting build bot.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80966 91177308-0d34-0410-b5e6-96231b3b80d8

commit f3ff0b0ad79a27cbcfbfa456ae031b310bd64d63
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 22:57:02 2009 +0000

    Add test for PR4873, which works for me.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80965 91177308-0d34-0410-b5e6-96231b3b80d8

commit f154271b8e81b6fc65137b7fda7c935b9fe93203
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 22:53:57 2009 +0000

    LLVM currently represents floating-point negation as -0.0 - x. Fix
    FastISel to recognize this pattern and emit a floating-point
    negation using xor.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80963 91177308-0d34-0410-b5e6-96231b3b80d8

commit 598ea31a7440ad0fae45e9fd4d7d640c431ef030
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Sep 3 22:48:51 2009 +0000

    Don't crash when target has no itineraries.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80962 91177308-0d34-0410-b5e6-96231b3b80d8

commit c9ca26dded387110e8c7520f52bd635eb483d1ec
Author: Bill Wendling <isanbard@gmail.com>
Date:   Thu Sep 3 22:19:22 2009 +0000

    If we've pushed registers onto the stack, but aren't adjusting the stack pointer
    (i.e., there are no local variables and stuff), we still need to output FDE
    information for the pushed registers.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80960 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2f2ab4797b28ede081fda36855a26e8ec1b9357e
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 22:17:40 2009 +0000

    Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,
    and exact flags. Because ConstantExprs are uniqued, creating an
    expression with this flag causes all expressions with the same operands
    to have the same flag, which may not be safe. Add, sub, mul, and sdiv
    ConstantExprs are usually folded anyway, so the main interesting flag
    here is inbounds, and the constant folder already knows how to set the
    inbounds flag automatically in most cases, so there isn't an urgent need
    for the API support.

    This can be reconsidered in the future, but for now just removing these
    API bits eliminates a source of potential trouble with little downside.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80959 91177308-0d34-0410-b5e6-96231b3b80d8

commit 856b38c3e9341ed6667788eb3c923be358ac5b71
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Sep 3 22:15:25 2009 +0000

    Create our own block initializer for kill fixups as the scheduling one wasn't doing the right thing.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80958 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3d88e9179113826d90cfe1653b8497e59798858b
Author: David Goodwin <david_goodwin@apple.com>
Date:   Thu Sep 3 22:12:28 2009 +0000

    Calls clobber FPSCR.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80956 91177308-0d34-0410-b5e6-96231b3b80d8

commit 637600a68adadef8e2f835a18a1193c6f8a1f0b5
Author: Ted Kremenek <kremenek@apple.com>
Date:   Thu Sep 3 22:07:30 2009 +0000

    Make ImmutableMap/ImmutableSet quicker by only canonicalizing the tree after an
    Add or Remove operation complete, and not while building the intermediate tree.
    This trades a little bit more memory usage for less accesses to the FoldingSet.  On a benchmark for the clang static analyzer, this shaves off another 13% of execution time when using field/array sensitivity.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80955 91177308-0d34-0410-b5e6-96231b3b80d8

commit bb45a492cfcb01b632213cf5e88f839f2ffb7a68
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 21:09:53 2009 +0000

    Disable some parts of the profiling-tool-chain test, which is currently failing
    on a self-hosted build (although it seems to work on non-self hosted). I'll work
    with Andreas to figure this out.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80947 91177308-0d34-0410-b5e6-96231b3b80d8

commit c653c95f431b4526287d26cb7b5c16860d61ab0a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 20:59:02 2009 +0000

    Remove dead greps.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80946 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa196cc6a40c2f1146f336ee904688ab37d9ac0e
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Thu Sep 3 20:58:42 2009 +0000

    Overhaul the TwoAddressInstructionPass to simplify the logic, especially
    for the complicated case where one register is tied to multiple destinations.
    This avoids the extra scan of instruction operands that was introduced by
    my recent change.  I also pulled some code out into a separate
    TryInstructionTransform method, added more comments, and renamed some
    variables.

    Besides all those changes, this takes care of a FIXME in the code regarding
    an assumption about there being a single tied use of a register when
    converting to a 3-address form.  I'm not aware of cases where that assumption
    is violated, but the code now only attempts to transform an instruction,
    either by commuting its operands or by converting to a 3-address form,
    for the simple case where there is a single pair of tied operands.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80945 91177308-0d34-0410-b5e6-96231b3b80d8

commit ff6a63a57697e8f76e9188b34bc75486528e04ba
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 20:36:13 2009 +0000

    Smallvectorize switchExitBlocks.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80942 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9f876cd88bcf8204ec52dfb03a474a154ad60617
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 3 20:35:57 2009 +0000

    There is not any need to copy metadata while merging modules.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80941 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41b3f4abc695b3ce178e1db7610b34d3745ed22d
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 20:34:31 2009 +0000

    Recognize more opportunities to use SSE min and max instructions,
    swapping the operands if necessary.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80940 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc3c526a5b0a6c97231ab1af117053fc2c89c491
Author: Mon P Wang <wangmp@apple.com>
Date:   Thu Sep 3 19:57:35 2009 +0000

    Test cases for vector shifts changes r80935
    Changed the old vector shift test to use FileCheck

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80936 91177308-0d34-0410-b5e6-96231b3b80d8

commit 04c767e3a81142583c41927d68387f8663cda8e8
Author: Mon P Wang <wangmp@apple.com>
Date:   Thu Sep 3 19:56:25 2009 +0000

    Fixed a few problems with vector shifts
      - when transforming a vector shift of a non-immediate scalar shift amount, zero
        extend the i32 shift amount to i64 since the vector shift reads 64 bits
      - when transforming i16 vectors to use a vector shift, zero extend i16 shift amount
      - improve the code quality in some cases when transforming vectors to use a vector shift

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80935 91177308-0d34-0410-b5e6-96231b3b80d8

commit e84197bc92efd8ee0a1ac63324783d6fcaf0ffd7
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 17:18:51 2009 +0000

    Add a -disable-16bit flag and associated support for experimenting with
    disabling the use of 16-bit operations on x86. This doesn't yet work for
    inline asms with 16-bit constraints, vectors with 16-bit elements,
    trampoline code, and perhaps other obscurities, but it's enough to try
    some experiments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80930 91177308-0d34-0410-b5e6-96231b3b80d8

commit e71842bebb922af77f158cf2bb577575b51a4219
Author: Kevin Enderby <enderby@apple.com>
Date:   Thu Sep 3 17:15:07 2009 +0000

    Removed the non-target independent AsmToken::Register enum constant
    from MCAsmLexer.h in preparation of supporting other targets.  Changed the
    X86AsmParser code to reflect this by removing AsmLexer::LexPercent and looking
    for AsmToken::Percent when parsing in places that used AsmToken::Register.
    Then changed X86ATTAsmParser::ParseRegister to parse out registers as an
    AsmToken::Percent followed by an AsmToken::Identifier.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80929 91177308-0d34-0410-b5e6-96231b3b80d8

commit fb4fa6f860001c6f6663a5c782fae0fa0e83717b
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 3 17:03:47 2009 +0000

    Use WeakVH to hold dead mdnodes. Check use_empty() before deleting a node.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80928 91177308-0d34-0410-b5e6-96231b3b80d8

commit 024ec13192dc9720da09edad698851bddf699c70
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 16:32:58 2009 +0000

    Make bugpoint use ParseIRFile instead of doing the same thing manually.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80927 91177308-0d34-0410-b5e6-96231b3b80d8

commit da313a3723d8fa74893b2b902719daf1b0021e67
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 16:31:42 2009 +0000

    Add a verifyAnalysis to LoopInfo, LoopSimplify, and LCSSA form that verify
    that these passes are properly preserved.

    Fix several transformation passes that claimed to preserve LoopSimplify
    form but weren't.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80926 91177308-0d34-0410-b5e6-96231b3b80d8

commit bad01c4020d7f8048903b13ad2457323f5ab0359
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 16:11:53 2009 +0000

    Remove some unnecessary -f options.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80924 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c42c875f7b8a18b3f3945bf52bbab2fa59450c3
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 16:10:48 2009 +0000

    Move getUniqueExitBlocks from LoopBase to Loop, since they depend on
    LoopSimplify form, which is currently only available on Loops (and
    not MachineLoops). Also, move the code out of the header file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80923 91177308-0d34-0410-b5e6-96231b3b80d8

commit fb17470d7382d820c535988315c65da4e9de0b48
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 16:00:08 2009 +0000

    Use IRReader.h in opt, to support reading of LLVM Assembly files directly.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80922 91177308-0d34-0410-b5e6-96231b3b80d8

commit 798e541fbdd6cdc2da6e6f153b3704d350bd3167
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 15:34:35 2009 +0000

    Change PHINode::hasConstantValue to have a DominatorTree argument
    instead of a bool argument, and to do the dominator check itself.
    This makes it eaiser to use when DominatorTree information is
    available.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80920 91177308-0d34-0410-b5e6-96231b3b80d8

commit 242b4738d28335a58e08db01c2748d0488885348
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 15:09:24 2009 +0000

    Don't try to verify a LoopPass analysis if the loop has been deleted.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80919 91177308-0d34-0410-b5e6-96231b3b80d8

commit f925d7f97fdec5c23250d06d3f93ab41f58afb3f
Author: Dan Gohman <gohman@apple.com>
Date:   Thu Sep 3 15:00:26 2009 +0000

    Remove references to expression "handles", which are no longer used.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80918 91177308-0d34-0410-b5e6-96231b3b80d8

commit d809156d5c860a90cf7b1a8dfb9db62dcc5e6f06
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Thu Sep 3 14:58:24 2009 +0000

    CppBackend: avoid printing unnecessary whitespace.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80917 91177308-0d34-0410-b5e6-96231b3b80d8

commit c50fa7ec0a396461d9addda9b078560e0a7d0e41
Author: Duncan Sands <baldrick@free.fr>
Date:   Thu Sep 3 13:37:16 2009 +0000

    Keep track of how many memmove calls were turned into
    memcpy calls.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80915 91177308-0d34-0410-b5e6-96231b3b80d8

commit 551c462cc936f64e1462b7a973e54e340ae657a4
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Sep 3 09:11:10 2009 +0000

    Fix build warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80912 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34dd111c5c8a54d2b512999eb5179d42a746cf30
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Sep 3 08:52:52 2009 +0000

    Code Cleanup.

    Removed inverted flag form MaximumSpanningTree, also do not handle so much
    information to MaximumSpanningTree.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80911 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3b8513dd94dfd5246166b2762638c05bb5b3a01a
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 08:41:19 2009 +0000

    Filter out -fno-rtti from CXXFLAGS as well (in an expensive checks build).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80910 91177308-0d34-0410-b5e6-96231b3b80d8

commit 36079a8ecc6c65b737304e18dce9c336704a0200
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Thu Sep 3 08:41:05 2009 +0000

    Code Cleanup.
    (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086139.html)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80909 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2b503ff0f62f1359cfc0f35ad36a376296c43b32
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 07:38:00 2009 +0000

    Reapply profiling tests.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80908 91177308-0d34-0410-b5e6-96231b3b80d8

commit df7d5b1736f8fc99a8f5bedcd96559d099793d92
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 07:37:42 2009 +0000

    Remove undefined behavior when loading optimal edge profile info.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80907 91177308-0d34-0410-b5e6-96231b3b80d8

commit b55972f828465055a2e144cf74733abad3132534
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 07:36:42 2009 +0000

    don't call getOffset() on jump tables, this fixes three failing olden benchmarks
    with the new asmprinter.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80906 91177308-0d34-0410-b5e6-96231b3b80d8

commit 02c96d78837bceaecb699bbd4e404403f8188c14
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 07:30:56 2009 +0000

    Implement support for X86II::MO_GOT_ABSOLUTE_ADDRESS.  We get very
    different formatting from the old asmprinter, but it should be
    semantically the same.  We used to get:

    	popl	%eax
    	addl	$_GLOBAL_OFFSET_TABLE_ + [.-.Lllvm$6.$piclabel], %eax
    ...

    Now we get:

    	popl	%eax
    .Lpicbaseref6:
    	addl	$(_GLOBAL_OFFSET_TABLE_ + (.Lpicbaseref6 - .Lllvm$6.$piclabel)), %eax
    ...

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80905 91177308-0d34-0410-b5e6-96231b3b80d8

commit ba2cf3d635dcc68ac416f56b767fd79d77ea7c83
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 3 07:04:02 2009 +0000

    Reference to hidden symbols do not have to go through non-lazy pointer in non-pic mode. rdar://7187172.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80904 91177308-0d34-0410-b5e6-96231b3b80d8

commit 04791af064e508422996148f33ef1f5f48c29e5b
Author: Nick Lewycky <nicholas@mxc.ca>
Date:   Thu Sep 3 06:43:15 2009 +0000

    Remove VISIBILITY_HIDDEN from this file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80903 91177308-0d34-0410-b5e6-96231b3b80d8

commit 93d228067020d3f32f6b45799ad394fa34b9b160
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:29:23 2009 +0000

    merge all the basic linux/32 pic tests together into one test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80902 91177308-0d34-0410-b5e6-96231b3b80d8

commit c420c6c39eae9503d0a3054400fc5615b02bbf1c
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:16:49 2009 +0000

    rename test

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80901 91177308-0d34-0410-b5e6-96231b3b80d8

commit 53d76257db225c1ecc3de84096aae77c4493a962
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:15:11 2009 +0000

    use a darwin triple

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80900 91177308-0d34-0410-b5e6-96231b3b80d8

commit c13d5b47266168db627ade3cf5a4157d61949af0
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:13:54 2009 +0000

    TAI -> MAI

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80899 91177308-0d34-0410-b5e6-96231b3b80d8

commit fba9e5022d361fa9d772c6b00881c8f1478f09ae
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:13:45 2009 +0000

    adjust expected lines.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80898 91177308-0d34-0410-b5e6-96231b3b80d8

commit c5b06e6b2786ec34435e46720ba44a909193c018
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 06:00:00 2009 +0000

    improve comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80897 91177308-0d34-0410-b5e6-96231b3b80d8

commit 648353a52f524287325e5f5af31aa88f40ed0f76
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:57:47 2009 +0000

    fix MCSymbol printing to exactly match the normal mangler rules so
    we can diff .s files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80894 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90c1949efa972a6078654f6b766ff6b7808b3798
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:54:00 2009 +0000

    remove extraneous hack.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80893 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9cc58801a61ba37f4a90b6093ced685fa0197ff6
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 05:47:34 2009 +0000

    Make these functions static and local.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80892 91177308-0d34-0410-b5e6-96231b3b80d8

commit 43ba45cb0f893fd58a0a9f4e80bc455f36b6e46d
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 05:47:22 2009 +0000

    Tweak comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80891 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0fe3a1ed4567dfdd45125c95beed6c6b77be2088
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:46:51 2009 +0000

    Thread an MCAsmInfo pointer through the various MC printing APIs,
    and fix a few things using << on MCSymbols to use ->print(). No
    functionality change other than unbreaking my previous patch.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80890 91177308-0d34-0410-b5e6-96231b3b80d8

commit ad1950e0138c65a6e0d329055b4f60402bc36cbb
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:39:09 2009 +0000

    just use dump()

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80889 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7c75f8d66dd9d6a2ff443ab2fbe16c4d30a8ea1e
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:33:01 2009 +0000

    inline insertion operators.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80888 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2342099f65d7f45542126efa911117c0099a4f5d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:19:59 2009 +0000

    In C++, code is not allowed to call main.  In C it is, this
    simplifylibcalls optimization is thus valid for C++ but not C.
    It's not important enough to worry about for C++ apps, so just
    remove it.

    rdar://7191924

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80887 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3dccf61c7f1d8dbb338f4c0afa20408f53a095c8
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 05:06:07 2009 +0000

    merge globaladdress symbol processing stuff into other stuff.  Now
    all global variable operand flag processing stuff is shared between
    different operand types.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80886 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2b6365ff99c7c321926f0c5b46536665a97f8676
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 3 05:01:00 2009 +0000

    Unbreak x86_64 build.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80885 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5750f44c1063978fa51a46362c8c6a1c52445817
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 04:56:20 2009 +0000

    Split the "operand -> symbol" logic from the "get offset and other munging
    from operand" logic.  GlobalAddress still todo.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80884 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9fb70d6e3120d738d14e0b8fa26e3e492cba6e5a
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 04:44:53 2009 +0000

    implement lowering support for constant pool index operands, this gets a bunch more
    olden programs working.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80881 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5746a94642c6f34c8476fd113ad7913c27a5bc38
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Thu Sep 3 04:37:05 2009 +0000

    X86JITInfo::getLazyResolverFunction() should not read cpu id to determine whether sse is available. Just use consult subtarget.

    No functionality changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80880 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc699fcbd21999eeee0e6659b6aee4f7a9d8c8ec
Author: Ted Kremenek <kremenek@apple.com>
Date:   Thu Sep 3 04:21:34 2009 +0000

    Set the 'cached digest' flag after computing the digest for an
    ImutAVLTree.  This was accidentally left out, and essentially caused
    digest caching to be ignored in ImmutableMap and ImmutableSet (this
    bug was detected from shark traces that showed ComputeDigest was in
    the hot path in the clang static analyzer).

    This reduces the running time of the clang static analyzer on an
    example benchmark by ~32% for both RegionStore (field-sensitivty) and
    BasicStore (without field-sensitivity).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80877 91177308-0d34-0410-b5e6-96231b3b80d8

commit 613e05408626a631c011a3f141eff2d6eea9f1f2
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 04:03:44 2009 +0000

    update test for alignment value in hex

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80876 91177308-0d34-0410-b5e6-96231b3b80d8

commit 27f44adc3b16ead29795d1a06e6be88d8de21471
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 04:01:10 2009 +0000

    output alignment value in hex so that we get:
      .align 3, 0x90
    instead of,
      .align 3, 144

    suggested by eric.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80875 91177308-0d34-0410-b5e6-96231b3b80d8

commit 862164990329cfcc3dc83d595cb8304913f1218d
Author: Chris Lattner <sabre@nondot.org>
Date:   Thu Sep 3 03:54:02 2009 +0000

    simplify this by using SmallString::str(), much nicer!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80874 91177308-0d34-0410-b5e6-96231b3b80d8

commit e86b0df8fc92fdeb05d03897afe4802ee5108dae
Author: Lang Hames <lhames@gmail.com>
Date:   Thu Sep 3 02:52:02 2009 +0000

    Fixed a test that ensures the LocalRewriter does not attempt to
    avoid reloads by reusing clobbered registers.

    This was causing issues in 256.bzip2 when compiled with PIC for
    a while (starting at r78217), though the problem has since been masked.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80872 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5a6b6b43459b875e88d598c232ddef7b805fe107
Author: Gabor Greif <ggreif@gmail.com>
Date:   Thu Sep 3 02:02:59 2009 +0000

    back out my recent commit (r80858), it seems to break self-hosting buildbot's stage 2 configure

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80871 91177308-0d34-0410-b5e6-96231b3b80d8

commit f0cb8b7ce425011e4caedfb841fdfc0aa38e6cff
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 3 01:39:20 2009 +0000

    Now Bitcode reader bug is fixed. Reapply 80839.

    Use CallbackVH, instead of WeakVH, to hold MDNode elements.
    Use FoldingSetNode to unique MDNodes in a context.
    Use CallbackVH hooks to update context's MDNodeSet appropriately.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80868 91177308-0d34-0410-b5e6-96231b3b80d8

commit deda3956ac6e8af372398bd9f4fd64c9cdf02711
Author: Devang Patel <dpatel@apple.com>
Date:   Thu Sep 3 01:38:02 2009 +0000

    Add new value for given index in MDValuePtrs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80867 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e48cf651240e745819e2cbf5cd837b4c24141b1
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Thu Sep 3 01:10:13 2009 +0000

    Improve llvm::getHostTriple for some cases where the LLVM_HOSTTRIPLE is not
    reliable.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80863 91177308-0d34-0410-b5e6-96231b3b80d8

commit fe15ce4a51f0d83bd2a0bb788af70663fc8713aa
Author: Gabor Greif <ggreif@gmail.com>
Date:   Thu Sep 3 00:18:58 2009 +0000

    re-commit r66920 (which has been backed out in r66953) I may have more luck this time. I'll back out if needed...

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80858 91177308-0d34-0410-b5e6-96231b3b80d8

commit 66fdfa0595d378249f8ff71168d0fe923a828b9a
Author: Sean Callanan <scallanan@apple.com>
Date:   Thu Sep 3 00:04:47 2009 +0000

    Added opaque 32-, 48-, and 80-bit memory operand types to the X86
    instruction tables to support segmented addressing (and other objects
    of obscure type).
    Modified the X86 assembly printers to handle these new operand types.
    Added JMP and CALL instructions that use segmented addresses.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80857 91177308-0d34-0410-b5e6-96231b3b80d8

commit 401011eae07426d5669af7c96bb06e92cff60cfe
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 2 23:52:38 2009 +0000

    Show derived host triple in --version.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80855 91177308-0d34-0410-b5e6-96231b3b80d8

commit eba47222d28036cebbd582e4dc84fefa3f76de49
Author: Shantonu Sen <ssen@apple.com>
Date:   Wed Sep 2 23:52:23 2009 +0000

    Improve support for cross-hosted builds of LLVM.
    --build=triple and other configure options are passed
    to the BuildTools/ sub-invocation more consistently

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80854 91177308-0d34-0410-b5e6-96231b3b80d8

commit 66284fca05a7b78636f9f99a14bddf2e16f4f570
Author: Douglas Gregor <doug.gregor@gmail.com>
Date:   Wed Sep 2 22:45:31 2009 +0000

    Unbreak my CMake build. Say you'll link again.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80842 91177308-0d34-0410-b5e6-96231b3b80d8

commit 03ebfa2ba332dcf86a3233b11397f6699c6ac157
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 2 21:49:26 2009 +0000

    Revert 80839 for now. It causes test failures.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80841 91177308-0d34-0410-b5e6-96231b3b80d8

commit 22d00c4b5b0845531feead561116ede02a7354b9
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 2 21:22:09 2009 +0000

    Use CallbackVH, instead of WeakVH, to hold MDNode elements.
    Use FoldingSetNode to unique MDNodes in a context.
    Use CallbackVH hooks to update context's MDNodeSet appropriately.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80839 91177308-0d34-0410-b5e6-96231b3b80d8

commit b261a1986acd86bb414d8e9e190a4e15742efc44
Author: Anton Korobeynikov <asl@math.spbu.ru>
Date:   Wed Sep 2 21:21:28 2009 +0000

    More missed vdup patterns

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80838 91177308-0d34-0410-b5e6-96231b3b80d8

commit 22f2b1c131b207894d8167b516b11aa4c0776e90
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 19:35:19 2009 +0000

    Switch llc from ParseBitcodeFile to ParseIRFile. This lets llc
    transparently read either LLVM Assembly or LLVM Bitcode files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80829 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1bbc7078b1f3d61b52af07ff6ab8344c26d179a6
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 19:21:56 2009 +0000

    Add a comment noting the memory ownership rules.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80827 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56747f2521918e90a939a2db2d8c8e88f9688b89
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 17:54:06 2009 +0000

    Add convenience functions for reading in LLVM IR that autodetect
    and LLVM Assembly and LLVM Bitcode and automatically call the
    corresponding reader.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80809 91177308-0d34-0410-b5e6-96231b3b80d8

commit b8f1df36008dbe45eb80c218979020088c800283
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 17:37:38 2009 +0000

    switch from std::string to SmallString + raw_svector_ostream.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80807 91177308-0d34-0410-b5e6-96231b3b80d8

commit b16f72e48e2ca32c5e795f7f302c1a7448c56b19
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 17:35:12 2009 +0000

    split mcinst lowering stuff out to its own file.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80806 91177308-0d34-0410-b5e6-96231b3b80d8

commit b3b034848455f9961fd34ec9cb6108095c8302cf
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 17:31:42 2009 +0000

    Fix the syntax of add/sub/mul nsw/nuw and sdiv exact.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80805 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0f603892701d4630990e7a552354c8cf2b6374dd
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 17:21:29 2009 +0000

    Add const qualifiers for isBitcodeWrapper, and add new functions
    isRawBitcode and isBitcode to allow clients to test whether a given
    memory buffer holds a bitcode image.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80804 91177308-0d34-0410-b5e6-96231b3b80d8

commit 18721d0596e31317458834d4d6bb0cbdd9d9a332
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 17:18:19 2009 +0000

    Refactor common code from ParseAssemblyString and ParseAssemblyFile,
    to expose a low-level interface for parsing from an existing MemoryBuffer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80803 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5c7b1d9dd31abf15bdeb32ec2dd09b666114da7e
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 17:05:05 2009 +0000

    Add const qualifiers to dominates' arguments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80801 91177308-0d34-0410-b5e6-96231b3b80d8

commit c53892f60f8828b82695fff8895223bf6abdc1a4
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 2 16:47:24 2009 +0000

    Removed temporarily because of breaking Darwin builds.
    (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090831/086214.html)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80799 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa2d3271d5e771007cf55840bb4eae119c02818c
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Wed Sep 2 16:35:35 2009 +0000

    Rearrange code to eliminate redundancy and avoid gotos.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80798 91177308-0d34-0410-b5e6-96231b3b80d8

commit 58837339ac130fbb4a0d1c6456584d7b6d933b71
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Wed Sep 2 15:02:57 2009 +0000

    plug another leak in LLParser::PerFunctionState::SetInstName()

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80792 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2c6e434dc05bbb5cf3eac56dce1ad05d6c97e77f
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 2 14:24:08 2009 +0000

    Changed profiling-tool-chain.ll test to use optimal-edge-profiling instead of
    edge-profiling, this is more useful since the loading of the
    optimal-edge-profiling is more complicated.
    The edge-profiling is tested in edge-profiling.ll where only the
    instrumentation is tested.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80791 91177308-0d34-0410-b5e6-96231b3b80d8

commit f50aecf1cc4ff2b3272d1f4ed6c1783220152875
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Wed Sep 2 14:22:03 2009 +0000

    plug memory leak in LLParser::PerFunctionState::SetInstName() by deleting a value after replacing it

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80790 91177308-0d34-0410-b5e6-96231b3b80d8

commit 46ef7bea5c421a06f05d376742413c18d82e35f6
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 2 14:03:11 2009 +0000

    Sort edges in MaximumSpanningTree more stable in case of equal weight.
    (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090824/085890.html)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80789 91177308-0d34-0410-b5e6-96231b3b80d8

commit f73818861a527851de1f63c34803548dc4844416
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 2 13:59:05 2009 +0000

    Changed set of BlocksToInstrument to set of InsertedBlocks that do not have to
    be instrumented.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80788 91177308-0d34-0410-b5e6-96231b3b80d8

commit 98004cce823f3ae209052fb1229d516dfc0b22df
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Wed Sep 2 12:38:39 2009 +0000

    Code cleanups and added comments.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80781 91177308-0d34-0410-b5e6-96231b3b80d8

commit b65febdbf1a37695e2dea5cee9e5dca9e181fb14
Author: Edwin Török <edwintorok@gmail.com>
Date:   Wed Sep 2 12:23:05 2009 +0000

    Opaque types didn't work if llvm_is_multithreaded().
    AlwaysOpaqueTy is always NULL at this point, and it causes an assertion failure.
    Fix it by using the just constructed tmp instead.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80780 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1298be5a7cc8edb31e1e825a7ddbc755a39bf2f0
Author: Nuno Lopes <nunoplopes@sapo.pt>
Date:   Wed Sep 2 11:58:01 2009 +0000

    set svn:ignore

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80779 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0aebd0cd8b56b87682114d314e77f13a5920f9db
Author: Edwin Török <edwintorok@gmail.com>
Date:   Wed Sep 2 11:13:56 2009 +0000

    Fix DbgStopPointInst->getFileName/getDirectory, broken by the MDNodification in
    r80406, and readd a -print-dbginfo test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80778 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5838baa4a8aedfd453a5b0663425979c77e4e285
Author: Sandeep Patel <deeppatel1987@gmail.com>
Date:   Wed Sep 2 08:44:58 2009 +0000

    Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80773 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7c3d6c1f0cacdc5a01a66ce5f99e09848f0d58f3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 06:34:22 2009 +0000

    Fix month.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80769 91177308-0d34-0410-b5e6-96231b3b80d8

commit 47ecca719dca162477c10e787bb1ab0c4c571ece
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 06:31:02 2009 +0000

    fix PR4815: some cases where DeleteDeadInstruction can delete
    the instruction BBI points to.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80768 91177308-0d34-0410-b5e6-96231b3b80d8

commit 77f1627b24f4256e414864513212cc4648e89dcc
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 06:15:37 2009 +0000

    clean up this code a bit.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80767 91177308-0d34-0410-b5e6-96231b3b80d8

commit fa2d1ba102a74ecb0444957e0e5e1e99b064bfc3
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 06:11:42 2009 +0000

    eliminate VISIBILITY_HIDDEN from Transforms/Scalar.  PR4861

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80766 91177308-0d34-0410-b5e6-96231b3b80d8

commit 84a6720fa162828ccf52531135afc2449662a2cd
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 05:57:00 2009 +0000

    refactor select 'sched insertion' out to its own method.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80764 91177308-0d34-0410-b5e6-96231b3b80d8

commit 556464fc42a499f616530d6c9ec3ab698a05aa90
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 05:53:04 2009 +0000

    Add support for modeling whether or not the processor has support for
    conditional moves as a subtarget feature.  This is the easy part of
    PR4841.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80763 91177308-0d34-0410-b5e6-96231b3b80d8

commit 12aaa0197524bcbf878774e442335813667b8518
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 05:35:45 2009 +0000

    fix PR4848 an infinite loop when indexing down through a recursive gep
    and we get the original pointer type.  This doesn't mean that we're
    at the first pointer being indexed.  Correct the predicate.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80762 91177308-0d34-0410-b5e6-96231b3b80d8

commit 41c09930cfb4e36227f5f73bb618d2a7aa4da884
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 05:12:37 2009 +0000

    fix PR4837, some bugs folding vector compares.  These
    return a vector of i1, not i1 itself.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80761 91177308-0d34-0410-b5e6-96231b3b80d8

commit bc05eef1c31d86b525f0d80429a13344b13192a2
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 04:39:04 2009 +0000

    revert my patch, duncan points out what is wrong with my logic.  Add
    a comment so that I don't change this in the future :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80760 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9d256f1e48cf074e739f478a48f9619797cbe4c1
Author: Chris Lattner <sabre@nondot.org>
Date:   Wed Sep 2 04:34:06 2009 +0000

    one more try at making this simpler, hopefully it won't break everything :)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80759 91177308-0d34-0410-b5e6-96231b3b80d8

commit d1585abba762e44ee70734e77dded04d3a6a77a7
Author: Duncan Sands <baldrick@free.fr>
Date:   Wed Sep 2 03:48:41 2009 +0000

    Complicate Chris's simplification, avoiding complaints
    about singular iterators when building with expensive
    checks turned on.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80757 91177308-0d34-0410-b5e6-96231b3b80d8

commit d7a9a27a450dce545da94ffc43df64c776eabaeb
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Wed Sep 2 02:43:11 2009 +0000

    Don't force the triple or data layout in this test. We just have to get them
    from the host and hope that works.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80751 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7b5cdc094c42b788e1c0d6708ba5fa077eca7f8a
Author: Dan Gohman <gohman@apple.com>
Date:   Wed Sep 2 01:14:16 2009 +0000

    Add a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80749 91177308-0d34-0410-b5e6-96231b3b80d8

commit 251676e7beab341460c562976a1f3f4a2f873929
Author: Sean Callanan <scallanan@apple.com>
Date:   Wed Sep 2 00:55:49 2009 +0000

    Fixed the asmstrings for 8-bit, 16-bit, and 32-bit ADD %rAX, imm instructions.
    Added a 64-bit ADD %RAX, imm32 instruction.
    Added all 4 forms for AND %rAX, imm and CMP %rAX, imm.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80746 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5f0d0810c3224d8296a90ee7c504d19f6b99ea89
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Wed Sep 2 00:19:03 2009 +0000

    Fix PR4845: r77946 completely broke x86_64 Darwin (or any situation where the
    desired triplet is a sub-target, e.g. thumbv7 vs. arm host). Reverting the
    patch isn't quite right either since the previous behavior does not allow the
    triplet to be overridden with -march.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80742 91177308-0d34-0410-b5e6-96231b3b80d8

commit aae9da7d74762fa1aef3d9e9b3eba4657eb5bfd8
Author: Devang Patel <dpatel@apple.com>
Date:   Wed Sep 2 00:16:33 2009 +0000

    Disable uniqueness test for now.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80741 91177308-0d34-0410-b5e6-96231b3b80d8

commit bd93206d2cd5cfc5482b8b9d17a9d7e2862fe26b
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 1 23:56:42 2009 +0000

    For now disable MDNode uniquing. This fixes llvm-gcc bootstrap failure on certain Mac OS X 10.5. I am working on a proper fix.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80738 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2a073840a9863f7fde14aba104621ce546f35510
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 23:18:46 2009 +0000

    Avoid calling removeVirtualRegisterKilled which iterates over the operands
    to find the kill, since we already have the operand.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80736 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4868b2482d56166b836de78a4b35607a799f7958
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 22:51:08 2009 +0000

    Refactor some code into separate functions.  No functional changes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80733 91177308-0d34-0410-b5e6-96231b3b80d8

commit 432d176192c6a1707a9f714ea00ea500f1d9a6ee
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 22:19:00 2009 +0000

    Move use of LV inside condition that guards for null LV.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80731 91177308-0d34-0410-b5e6-96231b3b80d8

commit 7cc00874d5de3b00205dcce03e05205916697d38
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 22:07:12 2009 +0000

    Fix build warning.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80730 91177308-0d34-0410-b5e6-96231b3b80d8

commit 064aca1f4cb7a3ac916d665db62056008ecde927
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 22:07:06 2009 +0000

    Simplify.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80729 91177308-0d34-0410-b5e6-96231b3b80d8

commit 914bc71e34cfa976d86bcd7c95fafd794dcc2020
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 22:07:00 2009 +0000

    Fix what I believe is a copy-n-pasto introduced in r78129.
     - Bruno, please check!!

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80728 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8ac6c04c49a83ce12779ca42416fe5512e69a01e
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 22:06:53 2009 +0000

    X86/Encoding: Support ExternalSymbol operands in emitDisplacementField (for consistency).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80727 91177308-0d34-0410-b5e6-96231b3b80d8

commit 9f086b93c3bb001b72590024114ac8c19f5abdaa
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 22:06:46 2009 +0000

    Remove Offset from ExternalSybmol MachineOperands, this is unused (and at least partly unsupported, in X86 encoding at least).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80726 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3dfe01d21e412c113b13e222c0fde9970d258af2
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 21:37:50 2009 +0000

    debug intrinsics do not go in the callgraph, this fixes a couple
    clang regtest failures.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80724 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0934baa37a70c413600ebc3f2219822cbaf90830
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 20:33:43 2009 +0000

    Fix a regression I introduced in r80708, found by llvm-test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80718 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0c971ca2967e9dd20f26d8d68cacb131dd2fb7ca
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Sep 1 19:25:52 2009 +0000

    Fix ELF Writter related memory leaks

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80717 91177308-0d34-0410-b5e6-96231b3b80d8

commit 231d73422a43624472e0ff74a1d9ec30740c7adb
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 19:08:51 2009 +0000

    OptimalEdgeProfiling: Reading in Profiles.
    This enables LLVM to read the OptimalEdgeProfiles.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80715 91177308-0d34-0410-b5e6-96231b3b80d8

commit 595887666dae3198db047b6e718129fdcf45ab8a
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 19:05:58 2009 +0000

    Addedum to r80712, forgot to add files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80713 91177308-0d34-0410-b5e6-96231b3b80d8

commit 10dd7a2d9c1c123260c8afd730be1c109a20bb2c
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 19:03:44 2009 +0000

    OptimalEdgeProfiling: Creation of profiles.
    This adds the instrumentation and runtime part of OptimalEdgeProfiling.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80712 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8093b5dc9a1e310a79fc7af83c1fc2e1867c2ef7
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 19:01:59 2009 +0000

    Small fix in ProfileEstimator that eliminates duplicated code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80711 91177308-0d34-0410-b5e6-96231b3b80d8

commit d5496d944b0095cfd0d1cc93386a3c569b7f06d5
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 18:55:08 2009 +0000

    reduce size of SmallString to something more reasonable

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80710 91177308-0d34-0410-b5e6-96231b3b80d8

commit b980f057d2ea2119836fbf39040ca8e49386d297
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 18:52:39 2009 +0000

    remove CallGraphNode::replaceCallSite, it is redundant with other APIs.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80708 91177308-0d34-0410-b5e6-96231b3b80d8

commit c2d6585e5e77e5b44a9440f7cb821dada5009692
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 18:51:56 2009 +0000

    Add support for generating code for vst{234}lane intrinsics.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80707 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0b6ab543047eac94f4155297b7b12af78e0e6a6d
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 18:50:55 2009 +0000

    cleanup/simplify

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80706 91177308-0d34-0410-b5e6-96231b3b80d8

commit 10d150b7c19caf36e4dbe6505c0b43cf62c0a858
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 18:50:43 2009 +0000

    Fix incorrect declarations of intrinsics in this test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80705 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1e58780928c42ba7c34deb7bbb35c17391b3d36e
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 18:49:12 2009 +0000

    Use raw_ostream instead of sstream

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80704 91177308-0d34-0410-b5e6-96231b3b80d8

commit ecd40faa95e178986ff2fec6c7eaae10692be6f9
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 18:44:06 2009 +0000

    remove a bunch of explicit code previously needed to update the
    callgraph.  This is now dead because RAUW does the job.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80703 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b023dd6936966cce0cfea28c5148168f7a5b40e
Author: David Goodwin <david_goodwin@apple.com>
Date:   Tue Sep 1 18:34:03 2009 +0000

    Add hidden flags to allow binary search of post-RA scheduling errors.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80702 91177308-0d34-0410-b5e6-96231b3b80d8

commit 02b0e35f988abea2d6e5a07a854b4c6192872355
Author: David Goodwin <david_goodwin@apple.com>
Date:   Tue Sep 1 18:32:09 2009 +0000

    RRX reads CPSR.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80699 91177308-0d34-0410-b5e6-96231b3b80d8

commit 1c79378308526587066ea216550858e780fd6423
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 18:32:03 2009 +0000

    doxygenate RefreshCallGraph, add a new 'verification mode', and run it after
    CGSCC passes make change to ensure they are updating the callgraph correctly
    (when assertions are enabled).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80698 91177308-0d34-0410-b5e6-96231b3b80d8

commit 96d7ddc073ae2bdbf5e0bda96a5d7d8f7185ecb4
Author: Dan Gohman <gohman@apple.com>
Date:   Tue Sep 1 18:29:01 2009 +0000

    Fix a typo in a comment.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80697 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3e4b1a34d5b499ec5547537b59505158e643305c
Author: Sean Callanan <scallanan@apple.com>
Date:   Tue Sep 1 18:14:18 2009 +0000

    Added TEST %rAX, $imm instructions to the Intel tables.  These are required for the X86 disassembler.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80696 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2507c18bfc58d649a6ddd20b3e3ce41b2ed0793f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 18:13:40 2009 +0000

    simpler solution to iterator invalidation "problem" found
    by expensive checking.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80695 91177308-0d34-0410-b5e6-96231b3b80d8

commit d23a9667c9e7f88f4cdb2befc3adc08a5b7df776
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 17:56:32 2009 +0000

    enhance memcpy opt to turn memmoves into memcpy when the src/dest
    don't alias.  Remove an old and poorly reduced testcase that fails
    with this transform for reasons unrelated to the original test.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80693 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8f43b86c52646711a6906e516e17b32224f1a104
Author: Bruno Cardoso Lopes <bruno.cardoso@gmail.com>
Date:   Tue Sep 1 17:27:58 2009 +0000

    Reapply 80278

    Add MO flags to simplify the printing of relocations.
    Remove the support for printing large code model relocs (which
    aren't supported anyway).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80691 91177308-0d34-0410-b5e6-96231b3b80d8

commit 598082b1dd506ca0d6540f2bcaded867bfbf77af
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 17:19:13 2009 +0000

    revert inadvertant change from previous commit

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80689 91177308-0d34-0410-b5e6-96231b3b80d8

commit 2e8a8c4cb8746fbe3d199d69b1efcabe557eec3f
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 17:09:55 2009 +0000

    random code cleanups, no functionality change.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80682 91177308-0d34-0410-b5e6-96231b3b80d8

commit 3efbb51978df6a37350f8d9d8c67ff3a988ad585
Author: Ted Kremenek <kremenek@apple.com>
Date:   Tue Sep 1 17:01:02 2009 +0000

    Update CMake files.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80680 91177308-0d34-0410-b5e6-96231b3b80d8

commit 90cc01b4e49618f75a3cb899cefaa0abe9ca7066
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 16:43:35 2009 +0000

    Simply LSDA lable emission to use a direct special-case output instead of
    EmitLabel()

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80677 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce59c1a172148acb3140cd46dcb94a9d225f31d5
Author: Duncan Sands <baldrick@free.fr>
Date:   Tue Sep 1 15:13:02 2009 +0000

    Do not manipulate invalid iterators.  This fixes the
    llvm-gcc build when expensive checking is turned on.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80671 91177308-0d34-0410-b5e6-96231b3b80d8

commit 724c3211128a50b60e5e479d0e6b66de710a6470
Author: Sanjiv Gupta <sanjiv.gupta@microchip.com>
Date:   Tue Sep 1 10:47:31 2009 +0000

    Further refactoring of PIC16 Obj file code.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80670 91177308-0d34-0410-b5e6-96231b3b80d8

commit ba2ab19fb3bd60795d5e5c84d5ada7121ab5d282
Author: Benjamin Kramer <benny.kra@googlemail.com>
Date:   Tue Sep 1 10:24:10 2009 +0000

    Update CMakeLists.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80669 91177308-0d34-0410-b5e6-96231b3b80d8

commit 204b27e24b13676075ab11b149b3a67db3c59f03
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 10:08:39 2009 +0000

    Preparation for Optimal Edge Profiling:
    Add statistics for regular edge profiling, this enables the comparation of the
    number of edges inserted by regular and optimal edge profiling.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80668 91177308-0d34-0410-b5e6-96231b3b80d8

commit 09ae6e0d77d7eb3339a20c613a6f0a9c391dc9f3
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 10:06:05 2009 +0000

    Preparation for Optimal Edge Profiling:
    Optimal edge profiling is only possible when blocks with no predecessors get an
    virtual edge (BB,0) that counts the execution frequencies of this
    function-exiting blocks.
    This patch makes the necessary changes before actually enabling optimal edge profiling.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80667 91177308-0d34-0410-b5e6-96231b3b80d8

commit 76448f751688349d8dc7330dbe56ba0165878790
Author: Andreas Neustifter <astifter@gmx.at>
Date:   Tue Sep 1 08:48:42 2009 +0000

    Preparation for Optimal Edge Profiling:
    This adds a pass to verify the current profile against the flow conditions.
    This is very helpful when later on trying to perserve the profiling information
    during all passes.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80666 91177308-0d34-0410-b5e6-96231b3b80d8

commit aabe25ea1ff3a49b6daa2e643cdb92ac8cc285f5
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 06:33:49 2009 +0000

    testcase for PR3601

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80664 91177308-0d34-0410-b5e6-96231b3b80d8

commit a59b5decad2d3e3b9e2f565ff5d4e1857b9202a1
Author: Chris Lattner <sabre@nondot.org>
Date:   Tue Sep 1 06:31:31 2009 +0000

    Change CallGraphNode to maintain it's Function as an AssertingVH
    for sanity.  This didn't turn up any bugs.

    Change CallGraphNode to maintain its "callsite" information in the
    call edges list as a WeakVH instead of as an instruction*.  This fixes
    a broad class of dangling pointer bugs, and makes CallGraph have a number
    of useful invariants again.  This fixes the class of problem indicated
    by PR4029 and PR3601.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80663 91177308-0d34-0410-b5e6-96231b3b80d8

commit e18cb0735189d79b73d3643f9bfda482a82f498d
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 1 05:04:28 2009 +0000

    Add virtual destructor.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80660 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56c573ec8f87ef5fe2d507b7fc1446efa1df0043
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 04:27:10 2009 +0000

    Add test for vld{234}_lane instructions.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80658 91177308-0d34-0410-b5e6-96231b3b80d8

commit d14b8b63b3557e85950beb061a1d8b01cff4eadf
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 04:26:28 2009 +0000

    Generate code for vld{234}_lane intrinsics.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80656 91177308-0d34-0410-b5e6-96231b3b80d8

commit 13099514dad37eb4e6f270fc84fb749c3eaeb487
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Tue Sep 1 04:18:40 2009 +0000

    Fix pr4843: When an instruction has multiple destination registers that are
    tied to different source registers, the TwoAddressInstructionPass needs to
    be smarter.  Change it to check before replacing a source register whether
    that source register is tied to a different destination register, and if so,
    defer handling it until a subsequent iteration.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80654 91177308-0d34-0410-b5e6-96231b3b80d8

commit ef0f63722ac72a66dd4486e6ac8a1719d12e6e13
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Tue Sep 1 04:09:03 2009 +0000

    llvm-mc: Store MCSymbolData value as a pointer (to make MSVC happy).

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80652 91177308-0d34-0410-b5e6-96231b3b80d8

commit 843c2a2675a78ce65e781d180fd284d4f4a2ff84
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 02:34:49 2009 +0000

    SJLJ is arm/darwin only for now. force the triple for the test

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80651 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4b673ee8fb5f7351de61d8bc06fb8958aa846d93
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 02:05:03 2009 +0000

    Fix compiler warnings

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80650 91177308-0d34-0410-b5e6-96231b3b80d8

commit 5e0257f9b7567c8c285ee3115c10d552c7c037fb
Author: Jim Grosbach <grosbach@apple.com>
Date:   Tue Sep 1 01:57:56 2009 +0000

    Clean up LSDA name generation and use for SJLJ exception handling. This
    makes an eggregious hack somewhat more palatable. Bringing the LSDA forward
    and making it a GV available for reference would be even better, but is
    beyond the scope of what I'm looking to solve at this point.

    Objective C++ code could generate function names that broke the previous
    scheme. This fixes that.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80649 91177308-0d34-0410-b5e6-96231b3b80d8

commit 8a6a4f5d031875716e06bf7339708874e97d915b
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 1 01:14:15 2009 +0000

    Introduce DILocation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80648 91177308-0d34-0410-b5e6-96231b3b80d8

commit d4794f1da6e32d0eda205da2f994a25d1632aea9
Author: Devang Patel <dpatel@apple.com>
Date:   Tue Sep 1 00:53:21 2009 +0000

    Add getDirectory() and getFilename() interface to DIScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80647 91177308-0d34-0410-b5e6-96231b3b80d8

commit 318d70da84dd9c3371774284695e2f96613d68a9
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 22:47:13 2009 +0000

    Subprogram is a scope. Derive DISubprogram from DIScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80637 91177308-0d34-0410-b5e6-96231b3b80d8

commit a53768e1e514ec9184b3e17c465b19f9334c1e5c
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 22:00:15 2009 +0000

    Rename DIBlock as DILexicalBlock.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80633 91177308-0d34-0410-b5e6-96231b3b80d8

commit c8b451fceb3e26addeda713ec01dbaf1fa183711
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Aug 31 21:58:28 2009 +0000

    Don't use an iterator which is potentially invalidated.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80632 91177308-0d34-0410-b5e6-96231b3b80d8

commit acce6ef067e3e784306ea3e13c30913722a2207c
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Aug 31 21:54:55 2009 +0000

    Use early exit and reduce indentation.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80631 91177308-0d34-0410-b5e6-96231b3b80d8

commit ce99fa7903584a25dd332004f3dcf639bbba91f6
Author: Bob Wilson <bob.wilson@apple.com>
Date:   Mon Aug 31 21:54:16 2009 +0000

    If the tied registers are already the same, there is no need to change
    them.  Move the code to make that change inside the conditional.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80630 91177308-0d34-0410-b5e6-96231b3b80d8

commit 0b3e9544a8c01d83bb746e80ef380e570db47be6
Author: Richard Osborne <richard@xmos.com>
Date:   Mon Aug 31 21:51:36 2009 +0000

    Add triple parsing support for XCore.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80629 91177308-0d34-0410-b5e6-96231b3b80d8

commit 4a47c2447110c5163806b46ee1be881adf70ce38
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 21:34:44 2009 +0000

    Derive DICompileUnit from DIScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80627 91177308-0d34-0410-b5e6-96231b3b80d8

commit 248d5579576fdfb0f1dca59bc3c6cebb8a6976fc
Author: Caroline Tice <ctice@apple.com>
Date:   Mon Aug 31 21:19:37 2009 +0000

    Add flag to mark structs for Apple Block "byref" variables; also add code to
    modify the type and location debug information for these variables to match the
    programmer's expectations.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80625 91177308-0d34-0410-b5e6-96231b3b80d8

commit 30e24e0e6f8e94a50ef6f08911724ef5d43762d7
Author: Dan Gohman <gohman@apple.com>
Date:   Mon Aug 31 21:15:23 2009 +0000

    Extend the ValuesAtScope cache to cover all expressions, not just
    SCEVUnknowns, as the non-SCEVUnknown cases in the getSCEVAtScope code
    can also end up repeatedly climing through the same expression trees,
    which can be unusably slow when the trees are very tall.

    Also, add a quick check for SCEV pointer equality to the main
    SCEV comparison routine, as the full comparison code can be expensive
    in the case of large expression trees.

    These fix compile-time problems in some pathlogical cases.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80623 91177308-0d34-0410-b5e6-96231b3b80d8

commit 21dde52e1976411d2f85eb2505d98d6b8d23baa6
Author: Gabor Greif <ggreif@gmail.com>
Date:   Mon Aug 31 20:54:23 2009 +0000

    restore semantics of operator* (removing a FIXME I had to introduce in r80224)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80622 91177308-0d34-0410-b5e6-96231b3b80d8

commit 864c4b83472a97397039240f7d5e9c6e269174b1
Author: David Goodwin <david_goodwin@apple.com>
Date:   Mon Aug 31 20:47:02 2009 +0000

    Don't mark a register live at an undef use.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80621 91177308-0d34-0410-b5e6-96231b3b80d8

commit 94f536e037d399e79afa64c060da2ac0d4d6b4a7
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 20:44:45 2009 +0000

    Introduce DIScope.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80620 91177308-0d34-0410-b5e6-96231b3b80d8

commit c9db7a5b14625f78cbd619582db31a985eeddd7d
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 20:27:49 2009 +0000

    Oops. Fix inverted logic in assertion check.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80618 91177308-0d34-0410-b5e6-96231b3b80d8

commit 08ed20d6841e1879cff1c6b7717b64fd400dc913
Author: Evan Cheng <evan.cheng@apple.com>
Date:   Mon Aug 31 20:14:07 2009 +0000

    Remove .n suffix for some 16-bit opcodes now that Darwin assembler is fixed.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80615 91177308-0d34-0410-b5e6-96231b3b80d8

commit 34a26db1f0520916f9f5d8a0f31fc9c34119bb05
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Aug 31 19:14:05 2009 +0000

    X86/exp-asm-printer: Lower MachineOperand::MO_JumpTableIndex to MCOperand.
     - Down to 7 failures on 403.gcc.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80605 91177308-0d34-0410-b5e6-96231b3b80d8

commit 59c42d00cd177c318a10364ddea06290b1f9f320
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Aug 31 19:13:56 2009 +0000

    Stop printing old asm printing code inline with -experimental-asm-printer (this allows diffing and assembling the .s)

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80604 91177308-0d34-0410-b5e6-96231b3b80d8

commit befe952c385a9e2f26212b3cdea6439323964a46
Author: Daniel Dunbar <daniel@zuster.org>
Date:   Mon Aug 31 19:13:47 2009 +0000

    Avoid unnecessary +0 in experimental-asm-printer.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80603 91177308-0d34-0410-b5e6-96231b3b80d8

commit 56843af6f90e5bdf7d79a271d2406f57e6674122
Author: Devang Patel <dpatel@apple.com>
Date:   Mon Aug 31 18:49:10 2009 +0000

    Simplify isDerivedType() and other predicate interface.

    git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80602 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-02 11:09:40 +03:00
Török Edvin
8771ff1860 rename libclamav/{llvm->c++} 2009-08-31 11:39:46 +03:00