diff options
author | Chris Lattner <sabre@nondot.org> | 2008-01-07 01:56:04 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-01-07 01:56:04 +0000 |
commit | 69244300b8a0112efb44b6273ecea4ca6264b8cf (patch) | |
tree | b5a0565e968d692bfa45952fe63009ff1b2be001 /lib/CodeGen/MachineBasicBlock.cpp | |
parent | 6425f8be7263e625c2d7484eb2fb8f6643824f49 (diff) | |
download | external_llvm-69244300b8a0112efb44b6273ecea4ca6264b8cf.zip external_llvm-69244300b8a0112efb44b6273ecea4ca6264b8cf.tar.gz external_llvm-69244300b8a0112efb44b6273ecea4ca6264b8cf.tar.bz2 |
Rename MachineInstr::getInstrDescriptor -> getDesc(), which reflects
that it is cheap and efficient to get.
Move a variety of predicates from TargetInstrInfo into
TargetInstrDescriptor, which makes it much easier to query a predicate
when you don't have TII around. Now you can use MI->getDesc()->isBranch()
instead of going through TII, and this is much more efficient anyway. Not
all of the predicates have been moved over yet.
Update old code that used MI->getInstrDescriptor()->Flags to use the
new predicates in many places.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45674 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineBasicBlock.cpp')
-rw-r--r-- | lib/CodeGen/MachineBasicBlock.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/CodeGen/MachineBasicBlock.cpp b/lib/CodeGen/MachineBasicBlock.cpp index 7f93185..d2dcd38 100644 --- a/lib/CodeGen/MachineBasicBlock.cpp +++ b/lib/CodeGen/MachineBasicBlock.cpp @@ -131,11 +131,10 @@ void ilist_traits<MachineInstr>::transferNodesFromList( } MachineBasicBlock::iterator MachineBasicBlock::getFirstTerminator() { - const TargetInstrInfo& TII = *getParent()->getTarget().getInstrInfo(); iterator I = end(); - while (I != begin() && TII.isTerminatorInstr((--I)->getOpcode())) + while (I != begin() && (--I)->getDesc()->isTerminator()) ; /*noop */ - if (I != end() && !TII.isTerminatorInstr(I->getOpcode())) ++I; + if (I != end() && !I->getDesc()->isTerminator()) ++I; return I; } @@ -262,7 +261,7 @@ void MachineBasicBlock::ReplaceUsesOfBlockWith(MachineBasicBlock *Old, MachineBasicBlock::iterator I = end(); while (I != begin()) { --I; - if (!(I->getInstrDescriptor()->Flags & M_TERMINATOR_FLAG)) break; + if (!I->getDesc()->isTerminator()) break; // Scan the operands of this machine instruction, replacing any uses of Old // with New. |