Skip to content
  1. Oct 31, 2009
    • Dan Gohman's avatar
      Make -print-machineinstrs more readable. · 34341e69
      Dan Gohman authored
       - Be consistent when referring to MachineBasicBlocks: BB#0.
       - Be consistent when referring to virtual registers: %reg1024.
       - Be consistent when referring to unknown physical registers: %physreg10.
       - Be consistent when referring to known physical registers: %RAX
       - Be consistent when referring to register 0: %reg0
       - Be consistent when printing alignments: align=16
       - Print jump table contents.
       - Don't print host addresses, in general.
       - and various other cleanups.
      
      llvm-svn: 85682
      34341e69
  2. Oct 25, 2009
  3. Oct 07, 2009
  4. Oct 04, 2009
  5. Sep 23, 2009
    • Jakob Stoklund Olesen's avatar
      Fix verification of explicit operands. · 75b9c274
      Jakob Stoklund Olesen authored
      The machine code verifier did not check for explicit operands correctly. It
      used MachineInstr::getNumExplicitOperands, but that method may cheat and use
      the declared count in the TargetInstrDesc.
      
      Now we check the explicit operands one at a time in visitMachineOperand.
      
      llvm-svn: 82652
      75b9c274
  6. Sep 21, 2009
  7. Aug 27, 2009
  8. Aug 23, 2009
  9. Aug 13, 2009
  10. Aug 08, 2009
  11. Aug 04, 2009
    • Jakob Stoklund Olesen's avatar
      Enforce stricter rules in machine code verifier. · 3c2a1dea
      Jakob Stoklund Olesen authored
      Implicit operands no longer get a free pass: Imp-use requires a live register
      and imp-def requires a dead register.
      
      There is also no special rule allowing redefinition of a sub-register when the
      super-register is live. The super register must have imp-kill+imp-def operands
      instead.
      
      llvm-svn: 78090
      3c2a1dea
  12. Aug 02, 2009
  13. Jul 31, 2009
    • Dan Gohman's avatar
      Reapply r77654 with a fix: MachineFunctionPass's getAnalysisUsage · 5ea74d55
      Dan Gohman authored
      shouldn't do AU.setPreservesCFG(), because even though CodeGen passes
      don't modify the LLVM IR CFG, they may modify the MachineFunction CFG,
      and passes like MachineLoop are registered with isCFGOnly set to true.
      
      llvm-svn: 77691
      5ea74d55
    • Daniel Dunbar's avatar
      Revert r77654, it appears to be causing llvm-gcc bootstrap failures, and many · 54347565
      Daniel Dunbar authored
      failures when building assorted projects with clang.
      
      --- Reverse-merging r77654 into '.':
      U    include/llvm/CodeGen/Passes.h
      U    include/llvm/CodeGen/MachineFunctionPass.h
      U    include/llvm/CodeGen/MachineFunction.h
      U    include/llvm/CodeGen/LazyLiveness.h
      U    include/llvm/CodeGen/SelectionDAGISel.h
      D    include/llvm/CodeGen/MachineFunctionAnalysis.h
      U    include/llvm/Function.h
      U    lib/Target/CellSPU/SPUISelDAGToDAG.cpp
      U    lib/Target/PowerPC/PPCISelDAGToDAG.cpp
      U    lib/CodeGen/LLVMTargetMachine.cpp
      U    lib/CodeGen/MachineVerifier.cpp
      U    lib/CodeGen/MachineFunction.cpp
      U    lib/CodeGen/PrologEpilogInserter.cpp
      U    lib/CodeGen/MachineLoopInfo.cpp
      U    lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
      D    lib/CodeGen/MachineFunctionAnalysis.cpp
      D    lib/CodeGen/MachineFunctionPass.cpp
      U    lib/CodeGen/LiveVariables.cpp
      
      llvm-svn: 77661
      54347565
    • Dan Gohman's avatar
      Manage MachineFunctions with an analysis Pass instead of the Annotable · bcb44baa
      Dan Gohman authored
      mechanism. To support this, make MachineFunctionPass a little more
      complete.
      
      llvm-svn: 77654
      bcb44baa
  14. Jul 29, 2009
    • Chris Lattner's avatar
      1. Introduce a new TargetOperandInfo::getRegClass() helper method · f3239532
      Chris Lattner authored
         and convert code to using it, instead of having lots of things
         poke the isLookupPtrRegClass() method directly.
      
      2. Make PointerLikeRegClass contain a 'kind' int, and store it in
         the existing regclass field of TargetOperandInfo when the
         isLookupPtrRegClass() predicate is set.  Make getRegClass pass
         this into TargetRegisterInfo::getPointerRegClass(), allowing
         targets to have multiple ptr_rc things.
      
      llvm-svn: 77504
      f3239532
  15. Jul 25, 2009
    • Daniel Dunbar's avatar
      More migration to raw_ostream, the water has dried up around the iostream hole. · 0dd5e1ed
      Daniel Dunbar authored
       - Some clients which used DOUT have moved to DEBUG. We are deprecating the
         "magic" DOUT behavior which avoided calling printing functions when the
         statement was disabled. In addition to being unnecessary magic, it had the
         downside of leaving code in -Asserts builds, and of hiding potentially
         unnecessary computations.
      
      llvm-svn: 77019
      0dd5e1ed
  16. Jul 16, 2009
  17. Jul 11, 2009
  18. May 17, 2009
  19. May 16, 2009
Loading