Skip to content
  1. Jun 02, 2012
    • Jakob Stoklund Olesen's avatar
      Switch all register list clients to the new MC*Iterator interface. · 54038d79
      Jakob Stoklund Olesen authored
      No functional change intended.
      
      Sorry for the churn. The iterator classes are supposed to help avoid
      giant commits like this one in the future. The TableGen-produced
      register lists are getting quite large, and it may be necessary to
      change the table representation.
      
      This makes it possible to do so without changing all clients (again).
      
      llvm-svn: 157854
      54038d79
  2. Mar 06, 2012
  3. Mar 05, 2012
  4. Feb 29, 2012
    • Jakob Stoklund Olesen's avatar
      Add an analyzeVirtReg() function. · 9e821456
      Jakob Stoklund Olesen authored
      This function does more or less the same as
      MI::readsWritesVirtualRegister(), but it supports bundles as well.
      
      It also determines if any constraint requires reading and writing
      operands to use the same register.  Most clients want to know.
      
      Use the more modern MO.readsReg() instead of trying to sort out undefs
      and partial redefines.  Stop supporting the extra full <imp-def> operand
      as an alternative to <def,undef> sub-register defines.
      
      llvm-svn: 151690
      9e821456
  5. Feb 08, 2012
    • Andrew Trick's avatar
      Codegen pass definition cleanup. No functionality. · 1fa5bcbe
      Andrew Trick authored
      Moving toward a uniform style of pass definition to allow easier target configuration.
      Globally declare Pass ID.
      Globally declare pass initializer.
      Use INITIALIZE_PASS consistently.
      Add a call to the initializer from CodeGen.cpp.
      Remove redundant "createPass" functions and "getPassName" methods.
      
      While cleaning up declarations, cleaned up comments (sorry for large diff).
      
      llvm-svn: 150100
      1fa5bcbe
  6. Jan 19, 2012
  7. Dec 14, 2011
    • Evan Cheng's avatar
      - Add MachineInstrBundle.h and MachineInstrBundle.cpp. This includes a function · 7fae11b2
      Evan Cheng authored
        to finalize MI bundles (i.e. add BUNDLE instruction and computing register def
        and use lists of the BUNDLE instruction) and a pass to unpack bundles.
      - Teach more of MachineBasic and MachineInstr methods to be bundle aware.
      - Switch Thumb2 IT block to MI bundles and delete the hazard recognizer hack to
        prevent IT blocks from being broken apart.
      
      llvm-svn: 146542
      7fae11b2
Loading