Skip to content
  1. May 13, 2013
  2. May 12, 2013
  3. May 11, 2013
    • Benjamin Kramer's avatar
      StringRefize some debug accel table bits. · 63e39eb0
      Benjamin Kramer authored
      llvm-svn: 181663
      63e39eb0
    • David Majnemer's avatar
      InstCombine: Turn urem to bitwise-and more often · 470b077b
      David Majnemer authored
      Use isKnownToBeAPowerOfTwo in visitUrem so that we may more aggressively
      fold away urem instructions.
      
      llvm-svn: 181661
      470b077b
    • Rafael Espindola's avatar
      Change getFrameMoves to return a const reference. · 1b09836b
      Rafael Espindola authored
      To add a frame now there is a dedicated addFrameMove which also takes
      care of constructing the move itself.
      
      llvm-svn: 181657
      1b09836b
    • Rafael Espindola's avatar
      Remove more dead code. · 63989022
      Rafael Espindola authored
      llvm-svn: 181656
      63989022
    • Rafael Espindola's avatar
      Remove dead code. · 7e149e3a
      Rafael Espindola authored
      llvm-svn: 181649
      7e149e3a
    • Nadav Rotem's avatar
      SLPVectorizer: Add support for trees with external users. · cdfb48d2
      Nadav Rotem authored
      For example:
      bar() {
        int a = A[i];
        int b = A[i+1];
        B[i] = a;
        B[i+1] = b;
        foo(a);  <--- a is used outside the vectorized expression.
      }
      
      llvm-svn: 181648
      cdfb48d2
    • Nadav Rotem's avatar
      Add a debug print · 0686e5cb
      Nadav Rotem authored
      llvm-svn: 181647
      0686e5cb
    • Reed Kotler's avatar
      Checkin in of first of several patches to finish implementation of · 783c7944
      Reed Kotler authored
      mips16/mips32 floating point interoperability. 
      
      This patch fixes returns from mips16 functions so that if the function
      was in fact called by a mips32 hard float routine, then values
      that would have been returned in floating point registers are so returned.
      
      Mips16 mode has no floating point instructions so there is no way to
      load values into floating point registers.
      
      This is needed when returning float, double, single complex, double complex
      in the Mips ABI.
      
      Helper functions in libc for mips16 are available to do this.
      
      For efficiency purposes, these helper functions have a different calling
      convention from normal Mips calls.
      
      Registers v0,v1,a0,a1 are used to pass parameters instead of
      a0,a1,a2,a3.
      
      This is because v0,v1,a0,a1 are the natural registers used to return
      floating point values in soft float. These values can then be moved
      to the appropriate floating point registers with no extra cost.
      
      The only register that is modified is ra in this call.
      
      The helper functions make sure that the return values are in the floating
      point registers that they would be in if soft float was not in effect
      (which it is for mips16, though the soft float is implemented using a mips32
      library that uses hard float).
       
      
      llvm-svn: 181641
      783c7944
    • Jordan Rose's avatar
      Micro-optimization: don't shift an entire bitcode record over to get the code. · 6ac4ba23
      Jordan Rose authored
      Previously, BitstreamCursor read an abbreviated record by splatting the
      whole thing into a data vector, then extracting and removing the /first/
      element. Now, it reads the first element--the record code--separately from
      the actual field values.
      
      No (intended) functionality change.
      
      llvm-svn: 181639
      6ac4ba23
  4. May 10, 2013
  5. May 09, 2013
Loading