Skip to content
  1. Aug 13, 2008
    • Bruno Cardoso Lopes's avatar
      Removed SELECT_CC custom lowering. This is not needed anymore, the SELECT node · 92c64ae2
      Bruno Cardoso Lopes authored
      is lowered properly and covers everything LowerSELECT_CC did.
      Added method printUnsignedImm in AsmPrinter to print uimm16 operands. This
      avoid the ugly instruction by instruction checking in printOperand.
      Added a swap instruction present in the allegrex core.
      Added two conditional instructions present in the allegrex core : MOVZ and MOVN.
      They both allow a more efficient SELECT operation for integers.
      Also added SELECT patterns to optimize MOVZ and MOVN usage.
      The brcond and setcc patterns were cleaned: redundant and suboptimal patterns
      were
      removed. The suboptimals were replaced by more efficient ones.
      Fixed some instructions that were using immZExt16 instead of immSExt16.
      
      llvm-svn: 54724
      92c64ae2
  2. Aug 08, 2008
  3. Jul 30, 2008
  4. Jul 21, 2008
  5. Jul 14, 2008
    • Bruno Cardoso Lopes's avatar
      Added Subtarget support into RegisterInfo · 80ab8f96
      Bruno Cardoso Lopes authored
      Added HasABICall and HasAbsoluteCall (equivalent to gcc -mabicall and 
      -mno-shared). HasAbsoluteCall is not implemented but HasABICall is the 
      default for o32 ABI. Now, both should help into a more accurate 
      relocation types implementation. 
      Added IsLinux is needed to choose between asm directives.
      Instruction name strings cleanup.
      AsmPrinter improved.
      
      llvm-svn: 53551
      80ab8f96
  6. Jul 09, 2008
  7. Jul 05, 2008
    • Bruno Cardoso Lopes's avatar
      Several changes to Mips backend, experimental fp support being the most · c9c3f499
      Bruno Cardoso Lopes authored
      important.
      - Cleanup in the Subtarget info with addition of new features, not all support
        yet, but they allow the future inclusion of features easier. Among new features,
        we have : Arch family info (mips1, mips2, ...), ABI info (o32, eabi), 64-bit
        integer
        and float registers, allegrex vector FPU (VFPU), single float only support.
      - TargetMachine now detects allegrex core.
      - Added allegrex (Mips32r2) sext_inreg instructions.
      - *Added Float Point Instructions*, handling single float only, and
        aliased accesses for 32-bit FPUs.
      - Some cleanup in FP instruction formats and FP register classes.
      - Calling conventions improved to support mips 32-bit EABI.
      - Added Asm Printer support for fp cond codes.
      - Added support for sret copy to a return register.
      - EABI support added into LowerCALL and FORMAL_ARGS.
      - MipsFunctionInfo now keeps a virtual register per function to track the
        sret on function entry until function ret.
      - MipsInstrInfo FP support into methods (isMoveInstr, isLoadFromStackSlot, ...),
        FP cond codes mapping and initial FP Branch Analysis.
      - Two new Mips SDNode to handle fp branch and compare instructions : FPBrcond,
        FPCmp
      - MipsTargetLowering : handling different FP classes, Allegrex support, sret
        return copy, no homing location within EABI, non 32-bit stack objects
        arguments, and asm constraint for float.
      
      llvm-svn: 53146
      c9c3f499
  8. Jun 04, 2008
  9. Dec 29, 2007
  10. Nov 06, 2007
  11. Aug 18, 2007
  12. Jun 06, 2007
    • Bruno Cardoso Lopes's avatar
      Initial Mips support, here we go! =) · 35e43c49
      Bruno Cardoso Lopes authored
      - Modifications from the last patch included
        (issues pointed by Evan Cheng are now fixed).
      - Added more MipsI instructions.
      - Added more patterns to match branch instructions.
      
      llvm-svn: 37461
      35e43c49
  13. Jan 24, 2007
  14. Oct 26, 2005
  15. Oct 25, 2005
  16. Oct 24, 2005
  17. Oct 02, 2005
  18. Sep 30, 2005
Loading