Skip to content
  1. Oct 20, 2003
  2. Oct 10, 2003
  3. Sep 01, 2003
  4. Jul 29, 2003
  5. Jul 25, 2003
    • Vikram S. Adve's avatar
      (1) Major fix to the way unused regs. are marked and found for the FP · 536b1922
      Vikram S. Adve authored
          Single and FP double reg types (which share the same reg class).
          Now all methods marking/finding unused regs consider the regType
          within the reg class, and SparcFloatRegClass specializes this code.
      (2) Remove machine-specific regalloc. methods that are no longer needed.
          In particular, arguments and return value from a call do not need
          machine-specific code for allocation.
      (3) Rename TargetRegInfo::getRegType variants to avoid unintentional
          overloading when an include file is omitted.
      
      llvm-svn: 7334
      536b1922
  6. Jul 21, 2003
  7. Jul 20, 2003
  8. Jul 10, 2003
    • Vikram S. Adve's avatar
      Several fixes to handling of int CC register: · 65280676
      Vikram S. Adve authored
      (1) An int CC live range must be spilled if there are any interferences,
          even if no other "neighbour" in the interf. graph has been allocated
          that reg. yet.  This is actually true of any class with only one reg!
      
      (2) SparcIntCCRegClass::colorIGNode sets the color even if the LR must
          be spilled so that the machine-independent spill code doesn't have to
          make the machine-dependent decision of which CC name to use based on
          operand type: %xcc or %icc.  (These are two halves of the same register.)
      
      (3) LR->isMarkedForSpill() is no longer the same as LR->hasColor().
          These should never have been the same, and this is necessary now for #2.
      
      (4) All RDCCR and WRCCR instructions are directly generated with the
          phony number for %ccr so that EmitAssembly/EmitBinary doesn't have to
          deal with this.
      
      llvm-svn: 7151
      65280676
  9. Jul 06, 2003
  10. Jul 02, 2003
    • Vikram S. Adve's avatar
      Bug/case fixes: · b5f8ada2
      Vikram S. Adve authored
      (1) select: Ok to convert a pointer to a float or double.
      (2) regalloc: Some MachineInstr* for caller-saving code before a call
          were being inserted before and after the call!
      (3) Don't insert the caller-saving instructions in the
          MachineCodeForInstruction for the Call instruction.
          *All* instructions generated by register allocation need to be
          recorded in those maps, but it needs to be done uniformly.
      
      llvm-svn: 7051
      b5f8ada2
  11. Jun 16, 2003
  12. Jun 06, 2003
  13. Jun 01, 2003
  14. May 31, 2003
    • Vikram S. Adve's avatar
      Extensive changes to the way code generation occurs for function · a83804a2
      Vikram S. Adve authored
      call arguments and return values:
      Now all copy operations before and after a call are generated during
      selection instead of during register allocation.
      The values are copied to virtual registers (or to the stack), but
      in the former case these operands are marked with the correct physical
      registers according to the calling convention.
      Although this complicates scheduling and does not work well with
      live range analysis, it simplifies the machine-dependent part of
      register allocation.
      
      llvm-svn: 6465
      a83804a2
  15. May 28, 2003
  16. May 27, 2003
  17. May 21, 2003
  18. May 20, 2003
  19. May 12, 2003
  20. Jan 15, 2003
  21. Dec 29, 2002
  22. Dec 28, 2002
  23. Oct 29, 2002
  24. Oct 28, 2002
  25. Oct 23, 2002
  26. Oct 14, 2002
  27. Oct 13, 2002
Loading