forked from OSchip/llvm-project
Add isSubRegisterEq() and isSuperRegisterEq().
isSub and isSuper return false if RegA == RegB. Add variants which also include the identity function. llvm-svn: 170609
This commit is contained in:
parent
74c6944a31
commit
01ab714758
|
@ -386,14 +386,24 @@ public:
|
|||
return RegEncodingTable[RegNo];
|
||||
}
|
||||
|
||||
/// Returns true if regB is a sub-register of regA.
|
||||
bool isSubRegister(unsigned regA, unsigned regB) const {
|
||||
return isSuperRegister(regB, regA);
|
||||
/// Returns true if RegB is a sub-register of RegA.
|
||||
bool isSubRegister(unsigned RegA, unsigned RegB) const {
|
||||
return isSuperRegister(RegB, RegA);
|
||||
}
|
||||
|
||||
/// Returns true if regB is a super-register of regA.
|
||||
/// Returns true if RegB is a super-register of RegA.
|
||||
bool isSuperRegister(unsigned RegA, unsigned RegB) const;
|
||||
|
||||
/// Returns true if RegB is a sub-register of RegA or if RegB == RegA.
|
||||
bool isSubRegisterEq(unsigned RegA, unsigned RegB) const {
|
||||
return isSuperRegisterEq(RegB, RegA);
|
||||
}
|
||||
|
||||
/// Returns true if RegB is a super-register of RegA or if RegB == RegA.
|
||||
bool isSuperRegisterEq(unsigned RegA, unsigned RegB) const {
|
||||
return RegA == RegB || isSuperRegister(RegA, RegB);
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
|
Loading…
Reference in New Issue