Skip to content
  1. Oct 30, 2008
  2. Oct 21, 2008
    • Dale Johannesen's avatar
      Add an SSE2 algorithm for uint64->f64 conversion. · 28929589
      Dale Johannesen authored
      The same one Apple gcc uses, faster.  Also gets the
      extreme case in gcc.c-torture/execute/ieee/rbug.c
      correct which we weren't before; this is not
      sufficient to get the test to pass though, there
      is another bug.
      
      llvm-svn: 57926
      28929589
  3. Oct 18, 2008
    • Dan Gohman's avatar
      Teach DAGCombine to fold constant offsets into GlobalAddress nodes, · 2fe6bee5
      Dan Gohman authored
      and add a TargetLowering hook for it to use to determine when this
      is legal (i.e. not in PIC mode, etc.)
      
      This allows instruction selection to emit folded constant offsets
      in more cases, such as the included testcase, eliminating the need
      for explicit arithmetic instructions.
      
      This eliminates the need for the C++ code in X86ISelDAGToDAG.cpp
      that attempted to achieve the same effect, but wasn't as effective.
      
      Also, fix handling of offsets in GlobalAddressSDNodes in several
      places, including changing GlobalAddressSDNode's offset from
      int to int64_t.
      
      The Mips, Alpha, Sparc, and CellSPU targets appear to be
      unaware of GlobalAddress offsets currently, so set the hook to
      false on those targets.
      
      llvm-svn: 57748
      2fe6bee5
  4. Oct 15, 2008
  5. Oct 04, 2008
  6. Oct 02, 2008
  7. Oct 01, 2008
  8. Sep 30, 2008
  9. Sep 25, 2008
  10. Sep 24, 2008
  11. Sep 23, 2008
  12. Sep 16, 2008
  13. Sep 13, 2008
    • Dan Gohman's avatar
      Define CallSDNode, an SDNode subclass for use with ISD::CALL. · d3fe174c
      Dan Gohman authored
      Currently it just holds the calling convention and flags
      for isVarArgs and isTailCall.
      
      And it has several utility methods, which eliminate magic
      5+2*i and similar index computations in several places.
      
      CallSDNodes are not CSE'd. Teach UpdateNodeOperands to handle
      nodes that are not CSE'd gracefully.
      
      llvm-svn: 56183
      d3fe174c
  14. Sep 10, 2008
  15. Sep 09, 2008
  16. Sep 04, 2008
    • Dan Gohman's avatar
      Create HandlePHINodesInSuccessorBlocksFast, a version of · 7bda51f5
      Dan Gohman authored
      HandlePHINodesInSuccessorBlocks that works FastISel-style. This
      allows PHI nodes to be updated correctly while using FastISel.
      
      This also involves some code reorganization; ValueMap and
      MBBMap are now members of the FastISel class, so they needn't
      be passed around explicitly anymore. Also, SelectInstructions
      is changed to SelectInstruction, and only does one instruction
      at a time.
      
      llvm-svn: 55746
      7bda51f5
  17. Sep 03, 2008
  18. Aug 20, 2008
  19. Aug 19, 2008
  20. Jul 27, 2008
  21. Jul 17, 2008
  22. Jul 04, 2008
    • Duncan Sands's avatar
      Rather than having a different custom legalization · 93e18034
      Duncan Sands authored
      hook for each way in which a result type can be
      legalized (promotion, expansion, softening etc),
      just use one: ReplaceNodeResults, which returns
      a node with exactly the same result types as the
      node passed to it, but presumably with a bunch of
      custom code behind the scenes.  No change if the
      new LegalizeTypes infrastructure is not turned on.
      
      llvm-svn: 53137
      93e18034
  23. Jun 25, 2008
  24. Jun 14, 2008
  25. Jun 06, 2008
    • Duncan Sands's avatar
      Wrap MVT::ValueType in a struct to get type safety · 13237ac3
      Duncan Sands authored
      and better control the abstraction.  Rename the type
      to MVT.  To update out-of-tree patches, the main
      thing to do is to rename MVT::ValueType to MVT, and
      rewrite expressions like MVT::getSizeInBits(VT) in
      the form VT.getSizeInBits().  Use VT.getSimpleVT()
      to extract a MVT::SimpleValueType for use in switch
      statements (you will get an assert failure if VT is
      an extended value type - these shouldn't exist after
      type legalization).
      This results in a small speedup of codegen and no
      new testsuite failures (x86-64 linux).
      
      llvm-svn: 52044
      13237ac3
  26. May 29, 2008
  27. May 16, 2008
  28. May 15, 2008
  29. May 14, 2008
  30. May 12, 2008
  31. May 10, 2008
  32. May 09, 2008
  33. May 08, 2008
  34. May 05, 2008
Loading