Skip to content
  1. Jan 10, 2015
    • Hal Finkel's avatar
      [PowerPC] Mark zext of a small scalar load as free · 5d5d1539
      Hal Finkel authored
      This initial implementation of PPCTargetLowering::isZExtFree marks as free
      zexts of small scalar loads (that are not sign-extending). This callback is
      used by SelectionDAGBuilder's RegsForValue::getCopyToRegs, and thus to
      determine whether a zext or an anyext is used to lower illegally-typed PHIs.
      Because later truncates of zero-extended values are nops, this allows for the
      elimination of later unnecessary truncations.
      
      Fixes the initial complaint associated with PR22120.
      
      llvm-svn: 225584
      5d5d1539
    • Justin Hibbits's avatar
      Remove some whitespace. · 17744c1e
      Justin Hibbits authored
      llvm-svn: 225583
      17744c1e
    • Dmitri Gribenko's avatar
      ConvertUTFTest: fix misleading empty line · cbc7ae25
      Dmitri Gribenko authored
      llvm-svn: 225580
      cbc7ae25
    • Saleem Abdulrasool's avatar
      tests: fix previous commit · c552218e
      Saleem Abdulrasool authored
      The previous commit accidentally missed changes to the test output checking,
      resulting in an errant failure.
      
      llvm-svn: 225577
      c552218e
    • Saleem Abdulrasool's avatar
      test: merge ARM relocations test · 48bbb6c8
      Saleem Abdulrasool authored
      There is a fair number of relocations that are part of the AAELF specification.
      Simply merge the tests into a single test file, otherwise, we will end up with
      far too many test files to test each relocation type.  NFC.
      
      llvm-svn: 225576
      48bbb6c8
    • Saleem Abdulrasool's avatar
      tests: convert a couple of ARM relocation tests to readobj · ff2da70f
      Saleem Abdulrasool authored
      These tests are checking the relocation generation.  Use the readobj output as
      it is much easier to follow when glancing over the tests.
      
      llvm-svn: 225575
      ff2da70f
    • Justin Hibbits's avatar
      Fully fix Bug #22115. · 654346e6
      Justin Hibbits authored
      Summary:
      In the previous commit, the register was saved, but space was not allocated.
      This resulted in the parameter save area potentially clobbering r30, leading to
      nasty results.
      
      Test Plan: Tests updated
      
      Reviewers: hfinkel
      
      Subscribers: llvm-commits
      
      Differential Revision: http://reviews.llvm.org/D6906
      
      llvm-svn: 225573
      654346e6
    • Alexey Samsonov's avatar
      Fix undefined behavior (shift of negative value) in RuntimeDyldMachOAArch64::encodeAddend. · 7c8a7251
      Alexey Samsonov authored
      Test Plan: regression test suite with/without UBSan.
      
      Reviewers: lhames, ributzka
      
      Subscribers: aemerson, llvm-commits
      
      Differential Revision: http://reviews.llvm.org/D6908
      
      llvm-svn: 225568
      7c8a7251
    • Hal Finkel's avatar
      [PowerPC] Readjust the loop unrolling threshold · 611b127a
      Hal Finkel authored
      Now that the way that the partial unrolling threshold for small loops is used
      to compute the unrolling factor as been corrected, a slightly smaller threshold
      is preferable. This is expected; other targets may need to re-tune as well.
      
      llvm-svn: 225566
      611b127a
    • Hal Finkel's avatar
      [LoopUnroll] Fix the partial unrolling threshold for small loop sizes · 38dd5908
      Hal Finkel authored
      When we compute the size of a loop, we include the branch on the backedge and
      the comparison feeding the conditional branch. Under normal circumstances,
      these don't get replicated with the rest of the loop body when we unroll. This
      led to the somewhat surprising behavior that really small loops would not get
      unrolled enough -- they could be unrolled more and the resulting loop would be
      below the threshold, because we were assuming they'd take
      (LoopSize * UnrollingFactor) instructions after unrolling, instead of
      (((LoopSize-2) * UnrollingFactor)+2) instructions. This fixes that computation.
      
      llvm-svn: 225565
      38dd5908
    • Rafael Espindola's avatar
      Use the DiagnosticHandler to print diagnostics when reading bitcode. · d0b23bef
      Rafael Espindola authored
      The bitcode reading interface used std::error_code to report an error to the
      callers and it is the callers job to print diagnostics.
      
      This is not ideal for error handling or diagnostic reporting:
      
      * For error handling, all that the callers care about is 3 possibilities:
        * It worked
        * The bitcode file is corrupted/invalid.
        * The file is not bitcode at all.
      
      * For diagnostic, it is user friendly to include far more information
        about the invalid case so the user can find out what is wrong with the
        bitcode file. This comes up, for example, when a developer introduces a
        bug while extending the format.
      
      The compromise we had was to have a lot of error codes.
      
      With this patch we use the DiagnosticHandler to communicate with the
      human and std::error_code to communicate with the caller.
      
      This allows us to have far fewer error codes and adds the infrastructure to
      print better diagnostics. This is so because the diagnostics are printed when
      he issue is found. The code that detected the problem in alive in the stack and
      can pass down as much context as needed. As an example the patch updates
      test/Bitcode/invalid.ll.
      
      Using a DiagnosticHandler also moves the fatal/non-fatal error decision to the
      caller. A simple one like llvm-dis can just use fatal errors. The gold plugin
      needs a bit more complex treatment because of being passed non-bitcode files. An
      hypothetical interactive tool would make all bitcode errors non-fatal.
      
      llvm-svn: 225562
      d0b23bef
    • Alexey Samsonov's avatar
      Fix UBSan error reports in ValueMapCallbackVH and AssertingVH<T> empty/tombstone keys generation. · 29e464f0
      Alexey Samsonov authored
      Summary:
      One more attempt to fix UBSan reports: make sure DenseMapInfo::getEmptyKey()
      and DenseMapInfo::getTombstoneKey() doesn't do any upcasts/downcasts to/from Value*.
      
      Test Plan: check-llvm test suite with/without UBSan bootstrap
      
      Reviewers: chandlerc, dexonsmith
      
      Subscribers: llvm-commits, majnemer
      
      Differential Revision: http://reviews.llvm.org/D6903
      
      llvm-svn: 225558
      29e464f0
    • Alexey Samsonov's avatar
      Disable Go bindings test under UBSan. · 55acbc07
      Alexey Samsonov authored
      llvm-svn: 225557
      55acbc07
  2. Jan 09, 2015
Loading