Skip to content
  1. Apr 08, 2009
    • Douglas Gregor's avatar
    • Duncan Sands's avatar
      Soft float support for undef. Reported by Xerxes Rånby. · fb438caa
      Duncan Sands authored
      llvm-svn: 68607
      fb438caa
    • Rafael Espindola's avatar
      Avoid a hard coded constant. · d173f423
      Rafael Espindola authored
      llvm-svn: 68603
      d173f423
    • Sanjiv Gupta's avatar
      Emit .line debug directives for stoppoints. The debug location is retrieved by... · 44ea053a
      Sanjiv Gupta authored
      Emit .line debug directives for stoppoints. The debug location is retrieved by the MachineInstr itself, rather than by custom handling the DBG_STOPPOINT nodes.
      
      llvm-svn: 68602
      44ea053a
    • Chris Lattner's avatar
      Instcombine should not promote whole computation trees to "strange" · eb510d6b
      Chris Lattner authored
      integer types, unless they are already strange.  This prevents it from
      turning the code produced by SROA into crazy libcalls and stuff that 
      the code generator can't handle.  In the attached example, the result
      was an i96 multiply that caused the x86 backend to assert.
      
      Note that if TargetData had an idea of what the legal types are for
      a target that this could be used to stop instcombine from introducing
      i64 muls, as Scott wanted.
      
      llvm-svn: 68598
      eb510d6b
    • Sanjiv Gupta's avatar
      Handle indirect function calls. · 4b489c75
      Sanjiv Gupta authored
      Every function has the address of its frame in the beginning of code section.
      The frame address is retrieved and used to pass arguments.
      
      llvm-svn: 68597
      4b489c75
    • Chris Lattner's avatar
      disable this code for now, re-breaking PR2975, but fixing · a72576e9
      Chris Lattner authored
      a testcase I'm about to attach to that pr.
      
      llvm-svn: 68592
      a72576e9
    • Chris Lattner's avatar
      Remove AllowInverse: it leaks memory and is not the right · 38751958
      Chris Lattner authored
      abstraction for CommandLine.
      
      llvm-svn: 68588
      38751958
    • Dan Gohman's avatar
      Fully escape the grep string for this test. · 9e7a137d
      Dan Gohman authored
      llvm-svn: 68580
      9e7a137d
    • Dan Gohman's avatar
      Update this test for recent codegen improvements. CodeGen is now · bb4ff96e
      Dan Gohman authored
      using an lea in place of a mov and an add for this test.
      
      llvm-svn: 68579
      bb4ff96e
    • Chris Lattner's avatar
      change printStringChar to emit characters as unsigned char instead of char, · 69b586e5
      Chris Lattner authored
      avoiding sign extension for the top octet.  For "negative" chars, we'd print
      stuff like:
      
      .asciz	"\702...
      now we print:
      .asciz	"\302...
      
      llvm-svn: 68577
      69b586e5
    • Dan Gohman's avatar
      Implement support for using modeling implicit-zero-extension on x86-64 · ad3e549a
      Dan Gohman authored
      with SUBREG_TO_REG, teach SimpleRegisterCoalescing to coalesce
      SUBREG_TO_REG instructions (which are similar to INSERT_SUBREG
      instructions), and teach the DAGCombiner to take advantage of this on
      targets which support it. This eliminates many redundant
      zero-extension operations on x86-64.
      
      This adds a new TargetLowering hook, isZExtFree. It's similar to
      isTruncateFree, except it only applies to actual definitions, and not
      no-op truncates which may not zero the high bits.
      
      Also, this adds a new optimization to SimplifyDemandedBits: transform
      operations like x+y into (zext (add (trunc x), (trunc y))) on targets
      where all the casts are no-ops. In contexts where the high part of the
      add is explicitly masked off, this allows the mask operation to be
      eliminated. Fix the DAGCombiner to avoid undoing these transformations
      to eliminate casts on targets where the casts are no-ops.
      
      Also, this adds a new two-address lowering heuristic. Since
      two-address lowering runs before coalescing, it helps to be able to
      look through copies when deciding whether commuting and/or
      three-address conversion are profitable.
      
      Also, fix a bug in LiveInterval::MergeInClobberRanges. It didn't handle
      the case that a clobber range extended both before and beyond an
      existing live range. In that case, multiple live ranges need to be
      added. This was exposed by the new subreg coalescing code.
      
      Remove 2008-05-06-SpillerBug.ll. It was bugpoint-reduced, and the
      spiller behavior it was looking for no longer occurrs with the new
      instruction selection.
      
      llvm-svn: 68576
      ad3e549a
    • Devang Patel's avatar
      Revert prev. patch for now. · 10f7c3de
      Devang Patel authored
      llvm-svn: 68569
      10f7c3de
    • Bill Wendling's avatar
      Temporarily revert r68552. This was causing a failure in the self-hosting LLVM · 4aa25b79
      Bill Wendling authored
      builds.
      
      --- Reverse-merging (from foreign repository) r68552 into '.':
      U    test/CodeGen/X86/tls8.ll
      U    test/CodeGen/X86/tls10.ll
      U    test/CodeGen/X86/tls2.ll
      U    test/CodeGen/X86/tls6.ll
      U    lib/Target/X86/X86Instr64bit.td
      U    lib/Target/X86/X86InstrSSE.td
      U    lib/Target/X86/X86InstrInfo.td
      U    lib/Target/X86/X86RegisterInfo.cpp
      U    lib/Target/X86/X86ISelLowering.cpp
      U    lib/Target/X86/X86CodeEmitter.cpp
      U    lib/Target/X86/X86FastISel.cpp
      U    lib/Target/X86/X86InstrInfo.h
      U    lib/Target/X86/X86ISelDAGToDAG.cpp
      U    lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
      U    lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.cpp
      U    lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.h
      U    lib/Target/X86/AsmPrinter/X86IntelAsmPrinter.h
      U    lib/Target/X86/X86ISelLowering.h
      U    lib/Target/X86/X86InstrInfo.cpp
      U    lib/Target/X86/X86InstrBuilder.h
      U    lib/Target/X86/X86RegisterInfo.td
      
      llvm-svn: 68560
      4aa25b79
    • Devang Patel's avatar
      Right now DBG_LABEL are required for llvm.dbg.region_start and... · ddafc03e
      Devang Patel authored
      Right now DBG_LABEL are required for llvm.dbg.region_start and llvm.dbg.region_end in non-fast mode also.
      
      llvm-svn: 68559
      ddafc03e
  2. Apr 07, 2009
  3. Apr 06, 2009
Loading