Skip to content
  1. Feb 26, 2008
    • Bill Wendling's avatar
      De-tabify · 80d6b879
      Bill Wendling authored
      llvm-svn: 47600
      80d6b879
    • Arnold Schwaighofer's avatar
      Add support for intermodule tail calls on x86/32bit with · 69a10f41
      Arnold Schwaighofer authored
      GOT-style position independent code. Before only tail calls to
      protected/hidden functions within the same module were optimized.
      Now all function calls are tail call optimized.
      
      llvm-svn: 47594
      69a10f41
    • Arnold Schwaighofer's avatar
      Change the lowering of arguments for tail call optimized · b01b99ec
      Arnold Schwaighofer authored
      calls. Before arguments that could overwrite each other were
      explicitly lowered to a stack slot, not giving the register allocator
      a chance to optimize. Now a sequence of copyto/copyfrom virtual
      registers ensures that arguments are loaded in (virtual) registers
      before they are lowered to the stack slot (and might overwrite each
      other). Also parameter stack slots are marked mutable for
      (potentially) tail calling functions.
      
      llvm-svn: 47593
      b01b99ec
  2. Feb 25, 2008
  3. Feb 23, 2008
  4. Feb 22, 2008
  5. Feb 21, 2008
  6. Feb 20, 2008
  7. Feb 19, 2008
  8. Feb 18, 2008
  9. Feb 17, 2008
  10. Feb 16, 2008
  11. Feb 15, 2008
  12. Feb 14, 2008
    • Duncan Sands's avatar
      In TargetLowering::LowerCallTo, don't assert that · 4c95dbd6
      Duncan Sands authored
      the return value is zero-extended if it isn't
      sign-extended.  It may also be any-extended.
      Also, if a floating point value was returned
      in a larger floating point type, pass 1 as the
      second operand to FP_ROUND, which tells it
      that all the precision is in the original type.
      I think this is right but I could be wrong.
      Finally, when doing libcalls, set isZExt on
      a parameter if it is "unsigned".  Currently
      isSExt is set when signed, and nothing is
      set otherwise.  This should be right for all
      calls to standard library routines.
      
      llvm-svn: 47122
      4c95dbd6
    • Nate Begeman's avatar
      Change how FP immediates are handled. · 53e1b3f9
      Nate Begeman authored
      1) ConstantFP is now expand by default
      2) ConstantFP is not turned into TargetConstantFP during Legalize
         if it is legal.
      
      This allows ConstantFP to be handled like Constant, allowing for 
      targets that can encode FP immediates as MachineOperands.
      
      As a bonus, fix up Itanium FP constants, which now correctly match,
      and match more constants!  Hooray.
      
      llvm-svn: 47121
      53e1b3f9
Loading