llvm-6502/lib/CodeGen/SelectionDAG
Owen Anderson 76604af774 Phase 1 of refactoring the MachineRegisterInfo iterators to make them suitable
for use with C++11 range-based for-loops.

The gist of phase 1 is to remove the skipInstruction() and skipBundle()
methods from these iterators, instead splitting each iterator into a version
that walks operands, a version that walks instructions, and a version that
walks bundles.  This has the result of making some "clever" loops in lib/CodeGen
more verbose, but also makes their iterator invalidation characteristics much
more obvious to the casual reader. (Making them concise again in the future is a
good motivating case for a pre-incrementing range adapter!)

Phase 2 of this undertaking with consist of removing the getOperand() method,
and changing operator*() of the operand-walker to return a MachineOperand&.  At
that point, it should be possible to add range views for them that work as one
might expect.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203757 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-13 06:02:25 +00:00
..
CMakeLists.txt
DAGCombiner.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 06:31:39 +00:00
FastISel.cpp [C++11] Add range based accessors for the Use-Def chain of a Value. 2014-03-09 03:16:01 +00:00
FunctionLoweringInfo.cpp [C++11] Add range based accessors for the Use-Def chain of a Value. 2014-03-09 03:16:01 +00:00
InstrEmitter.cpp Make stackmap machineinstrs clobber the scratch regs too. 2014-03-05 07:08:16 +00:00
InstrEmitter.h
LegalizeDAG.cpp IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
LegalizeFloatTypes.cpp
LegalizeIntegerTypes.cpp IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
LegalizeTypes.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 06:31:39 +00:00
LegalizeTypes.h
LegalizeTypesGeneric.cpp
LegalizeVectorOps.cpp
LegalizeVectorTypes.cpp ISel: Make VSELECT selection terminate in cases where the condition type has to 2014-03-07 23:25:55 +00:00
LLVMBuild.txt
Makefile
ResourcePriorityQueue.cpp
ScheduleDAGFast.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 06:31:39 +00:00
ScheduleDAGRRList.cpp Remove copy ctors that did the same thing as the default one. 2014-03-11 11:32:49 +00:00
ScheduleDAGSDNodes.cpp
ScheduleDAGSDNodes.h [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 06:31:39 +00:00
ScheduleDAGVLIW.cpp [C++11] Add 'override' keyword to virtual methods that override their base class. 2014-03-08 06:31:39 +00:00
SDNodeDbgValue.h [Layering] Move DebugLoc.h into the IR library. The implementation 2014-03-05 10:30:38 +00:00
SelectionDAG.cpp IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
SelectionDAGBuilder.cpp IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
SelectionDAGBuilder.h Replace '#include ValueTypes.h' with forward declarations. 2014-03-12 08:00:24 +00:00
SelectionDAGDumper.cpp [Layering] Move DebugInfo.h into the IR library where its implementation 2014-03-06 00:46:21 +00:00
SelectionDAGISel.cpp Phase 1 of refactoring the MachineRegisterInfo iterators to make them suitable 2014-03-13 06:02:25 +00:00
SelectionDAGPrinter.cpp [Layering] Move DebugInfo.h into the IR library where its implementation 2014-03-06 00:46:21 +00:00
TargetLowering.cpp
TargetSelectionDAGInfo.cpp