Skip to content
  1. Feb 11, 2011
    • Rafael Espindola's avatar
      Remove std::string version of getNameWithPrefix. · 34b59389
      Rafael Espindola authored
      llvm-svn: 125363
      34b59389
    • Evan Cheng's avatar
      Fix buggy fcopysign lowering. · 2da1c959
      Evan Cheng authored
      This
      define float @foo(float %x, float %y) nounwind readnone {
      entry:
        %0 = tail call float @copysignf(float %x, float %y) nounwind readnone
        ret float %0
      }
      
      Was compiled to:
          vmov     s0, r1
          bic      r0, r0, #-2147483648
          vmov     s1, r0
          vcmpe.f32    s0, #0
          vmrs         apsr_nzcv, fpscr
          it           lt
          vneglt.f32   s1, s1
          vmov         r0, s1
          bx           lr
      
      This fails to copy the sign of -0.0f because it's lost during the float to int
      conversion. Also, it's sub-optimal when the inputs are in GPR registers.
      
      Now it uses integer and + or operations when it's profitable. And it's correct!
          lsrs    r1, r1, #31
          bfi     r0, r1, #31, #1
          bx      lr
      rdar://8984306
      
      llvm-svn: 125357
      2da1c959
    • David Greene's avatar
      · 79827a5a
      David Greene authored
      [AVX] Implement 256-bit vector lowering for SCALAR_TO_VECTOR.  This
      largely completes support for 128-bit fallback lowering for code that
      is not 256-bit ready.
      
      llvm-svn: 125315
      79827a5a
  2. Feb 10, 2011
  3. Feb 09, 2011
  4. Feb 08, 2011
    • Owen Anderson's avatar
      Revert both r121082 (which broke a bunch of constant pool stuff) and r125074... · 4ebf471c
      Owen Anderson authored
      Revert both r121082 (which broke a bunch of constant pool stuff) and r125074 (which worked around it).  This should get us back to the old, correct behavior, though it will make the integrated assembler unhappy for the time being.
      
      llvm-svn: 125127
      4ebf471c
    • David Greene's avatar
      · 10b0db1d
      David Greene authored
      [AVX] Implement BUILD_VECTOR lowering for 256-bit vectors.  For
      anything but the simplest of cases, lower a 256-bit BUILD_VECTOR by
      splitting it into 128-bit parts and recombining.
      
      llvm-svn: 125105
      10b0db1d
    • Evan Cheng's avatar
      Temporary workaround for a bad bug introduced by r121082 which replaced · 558ccef7
      Evan Cheng authored
      t2LDRpci with t2LDRi12.
      There are a couple of problems with this.
      1. The encoding for the literal and immediate constant are different.
         Note bit 7 of the literal case is 'U' so it can be negative.
      2. t2LDRi12 is now narrowed to tLDRpci before constant island pass is run.
         So we end up never using the Thumb2 instruction, which ends up creating a
         lot more constant islands.
      
      llvm-svn: 125074
      558ccef7
  5. Feb 07, 2011
  6. Feb 06, 2011
  7. Feb 05, 2011
  8. Feb 04, 2011
    • Jason W Kim's avatar
      · d2e2f56c
      Jason W Kim authored
      Teach ARM/MC/ELF to handle R_ARM_JUMP24 relocation type for conditional jumps.
      (yes, this is different from R_ARM_CALL)
      
      - Adds a new method getARMBranchTargetOpValue() which handles the
        necessary distinction between the conditional and unconditional br/bl
        needed for ARM/ELF
      
      At least for ARM mode, the needed fixup for conditional versus unconditional
      br/bl is identical, but the ARM docs and existing ARM tools expect this
      reloc type...
      
      Added a few FIXME's for future naming fixups in ARMInstrInfo.td
      
      llvm-svn: 124895
      d2e2f56c
    • Daniel Dunbar's avatar
      MC/AsmParser: Add support for allowing the conversion process to fail (via · 66193404
      Daniel Dunbar authored
      custom conversion functions).
      
      llvm-svn: 124872
      66193404
    • David Greene's avatar
      · 653f1eed
      David Greene authored
      [AVX] Support VSINSERTF128 with more patterns and appropriate
      infrastructure.  This makes lowering 256-bit vectors to 128-bit
      vectors simple when 256-bit vector support is not available.
      
      llvm-svn: 124868
      653f1eed
  9. Feb 03, 2011
  10. Feb 02, 2011
Loading