search for: mioperands

Displaying 5 results from an estimated 5 matches for "mioperands".

Did you mean: mcoperands
2013 Jun 20
0
[LLVMdev] Question about how MC and MI layers may share data structures.
...ing the same functionality between MC and MI. Other possibilities include using virtual functions like: getOperand(0).getReg() replaced by opreg(0), Where opreg(x) would be a virtual function in a base class, which TargetMCInst/TargetMachineInstruction would implement (and avoid MCOperands/MIOperands). Another option would be to use function pointers. Is there a preferred way to share code between MI and MC? Thanks and Regards, David Young -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/201306...
2016 Oct 27
4
Understanding and Cleaning Up Machine Instruction Bundles
...ators == Another source of confusion even for experience register allocation developers is that we have 3 kinds of iterators for MachineOperands: - There is MachineInstr::iterator which is used by the majority of passes and gives you the operands of a single instruction. - There is (Const)MIOperands which appears to be equivalent to MachineInstr::iterator. I think we do not need a 2nd iterator and should get rid of this one (the only real reason to use it today is analyze{Virt|Phys}Reg() but that can be changed). - There is (Const)MIBundleOperands which iterates all machine opera...
2016 Oct 28
2
Understanding and Cleaning Up Machine Instruction Bundles
...ven for experience register allocation developers >> is that we have 3 kinds of iterators for MachineOperands: >> >> - There is MachineInstr::iterator which is used by the majority of passes and >> gives you the operands of a single instruction. >> - There is (Const)MIOperands which appears to be equivalent to >> MachineInstr::iterator. I think we do not need a 2nd iterator and should get >> rid of this one (the only real reason to use it today is >> analyze{Virt|Phys}Reg() but that can be changed). >> - There is (Const)MIBundleOperands whic...
2016 Oct 28
0
Understanding and Cleaning Up Machine Instruction Bundles
...ce of confusion even for experience register allocation developers > is that we have 3 kinds of iterators for MachineOperands: > > - There is MachineInstr::iterator which is used by the majority of passes and > gives you the operands of a single instruction. > - There is (Const)MIOperands which appears to be equivalent to > MachineInstr::iterator. I think we do not need a 2nd iterator and should get > rid of this one (the only real reason to use it today is > analyze{Virt|Phys}Reg() but that can be changed). > - There is (Const)MIBundleOperands which iterates a...
2016 Oct 28
0
Understanding and Cleaning Up Machine Instruction Bundles
...egister allocation developers >>> is that we have 3 kinds of iterators for MachineOperands: >>> >>> - There is MachineInstr::iterator which is used by the majority of passes and >>> gives you the operands of a single instruction. >>> - There is (Const)MIOperands which appears to be equivalent to >>> MachineInstr::iterator. I think we do not need a 2nd iterator and should get >>> rid of this one (the only real reason to use it today is >>> analyze{Virt|Phys}Reg() but that can be changed). >>> - There is (Const)MIBun...