1. Sep 09, 2009
    • Tanya Lattner's avatar
      Merge 81238 from mainline. · b50bd81d
      Tanya Lattner authored
      convert this to filecheck, hopefully it will fix PR4888.  If nothing
      else it will make tests run faster and make 4888 easier to diagnose.
      
      llvm-svn: 81286
      b50bd81d
    • Tanya Lattner's avatar
      Patch to fix PR4061. · f386982e
      Tanya Lattner authored
      llvm-svn: 81284
      f386982e
    • Tanya Lattner's avatar
      Merge 81236 from mainline. · 642a39be
      Tanya Lattner authored
      Fix PR4922, where Sema would complete tentative definitions in nondeterminstic
      order because it was doing so while iterating over a densemap.
      
      There are still similar problems in other places, for example
      WeakUndeclaredIdentifiers is still written to the PCH file in a nondeterminstic
      order, and we emit warnings about #pragma weak in nondeterminstic order.
      
      llvm-svn: 81280
      642a39be
    • Tanya Lattner's avatar
      Merge 81205 from mainline. · d7a5015a
      Tanya Lattner authored
      Unbreak this test.
      
      llvm-svn: 81271
      d7a5015a
    • Tanya Lattner's avatar
      Merge 81204 from mainline (with minor tweak). · e7ccbb6c
      Tanya Lattner authored
      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.
      
      llvm-svn: 81270
      e7ccbb6c
    • Tanya Lattner's avatar
      Merge 81187 from mainline. · 3df11f79
      Tanya Lattner authored
      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.
      
      llvm-svn: 81268
      3df11f79
    • Tanya Lattner's avatar
      Include file is necessary for 80768 that was merged in. · 1f2e5e95
      Tanya Lattner authored
      llvm-svn: 81253
      1f2e5e95
  2. Sep 05, 2009
    • Tanya Lattner's avatar
      Merge 80808 from mainline. · 28f2f184
      Tanya Lattner authored
      Packed unions should be packed. Fixes an assert Daniel reported.
      
      llvm-svn: 81036
      28f2f184
    • Tanya Lattner's avatar
      Merge 80964 from mainline. · 571a5fc1
      Tanya Lattner authored
      If the alignment of the chosen field in a union is greater than the alignment of the union, we need to use a packed LLVM struct. Fixes <rdar://problem/7184250>.
      
      llvm-svn: 81035
      571a5fc1
    • Tanya Lattner's avatar
      Merge 80933 from mainline. · d92654ae
      Tanya Lattner authored
      Don't use '%ll', this doesn't workin on Win32.
      
      llvm-svn: 81034
      d92654ae
    • Tanya Lattner's avatar
      Merge 80863 from mainline. · e7392a09
      Tanya Lattner authored
      Improve llvm::getHostTriple for some cases where the LLVM_HOSTTRIPLE is not
      reliable.
      
      llvm-svn: 81033
      e7392a09
    • Tanya Lattner's avatar
      Merge 80872 from mainline. · 96e93c80
      Tanya Lattner authored
      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. 
      
      llvm-svn: 81032
      96e93c80
    • Tanya Lattner's avatar
      Merge 80805 from mainline. · d56acabb
      Tanya Lattner authored
      Fix the syntax of add/sub/mul nsw/nuw and sdiv exact.
      
      llvm-svn: 81031
      d56acabb
    • Tanya Lattner's avatar
      Merge 80780 from mainline. · 92aacbb8
      Tanya Lattner authored
      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.
      
      llvm-svn: 81030
      92aacbb8
    • Tanya Lattner's avatar
      Merge 80768 from mainline. · bf783c32
      Tanya Lattner authored
      fix PR4815: some cases where DeleteDeadInstruction can delete
      the instruction BBI points to.
      
      llvm-svn: 81029
      bf783c32
    • Tanya Lattner's avatar
      Merge 80762 from mainline. · 03513021
      Tanya Lattner authored
      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.
      
      llvm-svn: 81028
      03513021
    • Tanya Lattner's avatar
      Merge 80761 from mainline. · 360c61aa
      Tanya Lattner authored
      fix PR4837, some bugs folding vector compares.  These
      return a vector of i1, not i1 itself.
      
      llvm-svn: 81027
      360c61aa
    • Tanya Lattner's avatar
      Merge 80742 from mainline. · 69bf0dce
      Tanya Lattner authored
      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.
      
      llvm-svn: 81023
      69bf0dce
  3. Aug 31, 2009
    • Tanya Lattner's avatar
      Merge r80213 from mainline. · bfae06b3
      Tanya Lattner authored
      For now, only run MC tests if X86 is configured.
      
      llvm-svn: 80565
      bfae06b3
    • Tanya Lattner's avatar
      Merge 79737 from mainline. · 3e549f5b
      Tanya Lattner authored
      Force triple for these tests.
      
      llvm-svn: 80564
      3e549f5b
    • Tanya Lattner's avatar
      Merge 79862 from mainline. · 62d32739
      Tanya Lattner authored
      Fix off-by-one in llvm::Format::print.
       - This also shortens the Format.h implementation, and uses the print buffer
        fully (it was wasting a character).
      
       - This manifested as llvm-test failures, because one side effect was that
        raw_ostream would write garbage '\x00' values into the output stream if it
        happened that the string was at the end of the buffer. This meant that grep
        would report 'Binary file matches', which meant the silly pattern matching
        llvm-test eventually does would fail. Cute. :)
      
      llvm-svn: 80563
      62d32739
    • Tanya Lattner's avatar
      Merge from mainline. · d1d0e8bc
      Tanya Lattner authored
      This is passing for PPC on Mac OS X.
      
      llvm-svn: 80561
      d1d0e8bc
    • Tanya Lattner's avatar
      Merge from mainline. · 8c223dca
      Tanya Lattner authored
      Make sure we specify no arguments for context functions.
      
      llvm-svn: 80560
      8c223dca
    • Tanya Lattner's avatar
      Merge from mainlien. · bc668918
      Tanya Lattner authored
      Fix the start source location for type-specs like long, short, etc.
      
      llvm-svn: 80559
      bc668918
    • Tanya Lattner's avatar
      Merge from mainline. · 311c6eb7
      Tanya Lattner authored
      Fix TypeLoc::operator bool().
      
      llvm-svn: 80558
      311c6eb7
    • Tanya Lattner's avatar
      Merge from mainline · dca066cc
      Tanya Lattner authored
      convert to filecheck and force a triple so that this passes on big
      endian hosts.  Fixes PR4792
      
      llvm-svn: 80556
      dca066cc
    • Tanya Lattner's avatar
      Merge from mainline. · 689802f7
      Tanya Lattner authored
      This should use isIndenticalToWhenDefined.
      
      llvm-svn: 80554
      689802f7
    • Tanya Lattner's avatar
      Merge from mainline. · b89763dd
      Tanya Lattner authored
      Rename Instruction::isIdenticalTo to Instruction::isIdenticalToWhenDefined,
      and introduce a new Instruction::isIdenticalTo which tests for full
      identity, including the SubclassOptionalData flags. Also, fix the
      Instruction::clone implementations to preserve the SubclassOptionalData
      flags. Finally, teach several optimizations how to handle
      SubclassOptionalData correctly, given these changes.
      
      This fixes the counterintuitive behavior of isIdenticalTo not comparing
      the full value, and clone not returning an identical clone, as well as
      some subtle bugs that could be caused by these.
      
      Thanks to Nick Lewycky for reporting this, and for an initial patch!
      
      llvm-svn: 80553
      b89763dd
    • Tanya Lattner's avatar
      Merge from mainline. · c0add561
      Tanya Lattner authored
      When undoing a reuse in ReuseInfo::GetRegForReload, check if it was only a
      sub-register being used. The MachineOperand::getSubReg() method is only valid
      for virtual registers, so we have to recover the sub-register index manually.
      
      llvm-svn: 80552
      c0add561
    • Tanya Lattner's avatar
      Merge from mainline. · 14c9ed11
      Tanya Lattner authored
      Special-case static allocas in IndVarSimplify's loop invariant
      sinking code, since they are special. If the loop preheader happens
      to be the entry block of a function, don't sink static allocas
      out of it. This fixes PR4775.
      
      llvm-svn: 80551
      14c9ed11
    • Tanya Lattner's avatar
      merge from mainline · 7ce86628
      Tanya Lattner authored
      Fix PR4772 ARM JIT.GlobalInFuction unittest by explicitly initialize MMI 
      to 0 during JITEmitter constructor.
      
      llvm-svn: 80550
      7ce86628
    • Tanya Lattner's avatar
      Merge from mainline. · c52000b6
      Tanya Lattner authored
      Don't install FileCheck man page
      
      llvm-svn: 80549
      c52000b6
    • Tanya Lattner's avatar
      Merge from mainline. · 11cec567
      Tanya Lattner authored
      Don't install FileCheck and FileUpdate
      
      llvm-svn: 80548
      11cec567
    • Tanya Lattner's avatar
      Merge from mainline. · 27035f0f
      Tanya Lattner authored
      Don't install Clang libraries
      
      llvm-svn: 80547
      27035f0f
    • Tanya Lattner's avatar
      Merge from mainline. · 1a289c35
      Tanya Lattner authored
      Fix a few tests to be -Asserts agnostic.
      - Ugh.
      fix a GCC type punning warning.
      
      llvm-svn: 80546
      1a289c35
    • Tanya Lattner's avatar
      Merge from mainline. · 1566c709
      Tanya Lattner authored
      Temporarily switch clang back to not using clang-cc by default for C++, and only
      using clang-cc on i386 and x86_64.
      
      llvm-svn: 80545
      1566c709
    • Tanya Lattner's avatar
      Merge from mainline · 08da67fb
      Tanya Lattner authored
      Try to fix MSVC build after r79846.
      
      llvm-svn: 80544
      08da67fb
    • Tanya Lattner's avatar
      Merge from mainline. · 991cf4d8
      Tanya Lattner authored
      Fix non-determinism in DAGISel emitter.
       - This manifested as non-determinism in the .inc output in rare cases (when two
         distinct patterns ended up being equivalent, which is rather rare). That
         meant the pattern matching was non-deterministic, which could eventually mean
         the code generator selected different instructions based on the arch.
      
       - It's probably worth making the DAGISel ensure a total ordering (or force the
         user to), but the simple fix here is to totally order the Record* maps based
         on a unique ID.
      
       - PR4672, PR4711.
      
      llvm-svn: 80543
      991cf4d8
  4. Aug 23, 2009
    • Tanya Lattner's avatar
      Merge 79736 from mainline. · 1c7ce212
      Tanya Lattner authored
      llvm-mc: Hopefully fix Mach-O tests on big-endian platforms, force values to be
      converted to Python ints if possible.
      
      llvm-svn: 79810
      1c7ce212
    • Tanya Lattner's avatar
      Merge 79781 from mainline. · d2eb1892
      Tanya Lattner authored
      Type of a ?: expression whose either expression is a built-in 'id'
      type is 'id' type.
      
      llvm-svn: 79788
      d2eb1892