Skip to content
  1. Nov 28, 2013
  2. Nov 27, 2013
  3. Nov 26, 2013
    • Chad Rosier's avatar
      [AArch64] Add support for NEON scalar floating-point to integer convert · 9653d5c9
      Chad Rosier authored
      instructions.
      
      llvm-svn: 195788
      9653d5c9
    • Reed Kotler's avatar
      Fix a bug related to constant islands for Mips16 and mips16/32 dual mode. · 3aeb1d08
      Reed Kotler authored
      The determination of when we are doing constant pools was being made too
      early in the asm printer.
      
      llvm-svn: 195781
      3aeb1d08
    • Michael Liao's avatar
      Fix PR18054 · d617a301
      Michael Liao authored
      - Fix bug in (vsext (vzext x)) -> (vsext x) in SIGN_EXTEND_IN_REG
        lowering where we need to check whether x is a vector type (in-reg
        type) of i8, i16 or i32; otherwise, that optimization is not valid.
      
      llvm-svn: 195779
      d617a301
    • Tim Northover's avatar
      Darwin-ARM: use movw/movt for static relocations · fa36dfee
      Tim Northover authored
      llvm-svn: 195759
      fa36dfee
    • Richard Sandiford's avatar
      [SystemZ] Fix incorrect use of RISBG for a zero-extended right shift · dd7dd930
      Richard Sandiford authored
      We would wrongly transform the testcase into the equivalent of an AND with 1.
      The problem was that, when testing whether the shifted-in bits of the right
      shift were significant, we used the width of the final zero-extended result
      rather than the width of the shifted value.
      
      llvm-svn: 195731
      dd7dd930
    • Kevin Qin's avatar
      Refactored the implementation of AArch64 NEON instruction ZIP, UZP · 599c47d0
      Kevin Qin authored
      and TRN.
      Fix a bug when mixed use of vget_high_u8() and vuzp_u8().
      
      llvm-svn: 195716
      599c47d0
    • Kevin Qin's avatar
      [AArch64]Implement 128 bit register copy with NEON. · 33ca18fd
      Kevin Qin authored
      llvm-svn: 195713
      33ca18fd
    • Andrew Trick's avatar
      StackMap: Implement support for DirectMemRefOp. · 391dbadb
      Andrew Trick authored
      A Direct stack map location records the address of frame index. This
      address is itself the value that the runtime requested. This differs
      from IndirectMemRefOp locations, which refer to a stack locations from
      which the requested values must be loaded. Direct locations can
      directly communicate the address if an alloca, while IndirectMemRefOp
      handle register spills.
      
      For example:
      
      entry:
        %a = alloca i64...
        llvm.experimental.stackmap(i32 <ID>, i32 <shadowBytes>, i64* %a)
      
      Since both the alloca and stackmap intrinsic are in the entry block,
      and the intrinsic takes the address of the alloca, the runtime can
      assume that LLVM will not substitute alloca with any intervening
      value. This must be verified by the runtime by checking that the stack
      map's location is a Direct location type. The runtime can then
      determine the alloca's relative location on the stack immediately after
      compilation, or at any time thereafter. This differs from Register and
      Indirect locations, because the runtime can only read the values in
      those locations when execution reaches the instruction address of the
      stack map.
      
      llvm-svn: 195712
      391dbadb
    • Andrew Trick's avatar
      whitespace · d3ab37cf
      Andrew Trick authored
      llvm-svn: 195711
      d3ab37cf
Loading