[BOLT][NFC] Rename isUnsupportedBranch to isReversibleBranch (#92447)
`isUnsupportedBranch` is not a very informative name, and doesn't match its corresponding `reverseBranchCondition`, as I noted in PR #92018. Here's a renaming to a more mnemonic name.
This commit is contained in:
@@ -438,8 +438,8 @@ public:
|
||||
return false;
|
||||
}
|
||||
|
||||
/// Check whether we support inverting this branch
|
||||
virtual bool isUnsupportedBranch(const MCInst &Inst) const { return false; }
|
||||
/// Check whether this conditional branch can be reversed
|
||||
virtual bool isReversibleBranch(const MCInst &Inst) const { return true; }
|
||||
|
||||
/// Return true of the instruction is of pseudo kind.
|
||||
virtual bool isPseudo(const MCInst &Inst) const {
|
||||
|
||||
@@ -1284,7 +1284,7 @@ Error BinaryFunction::disassemble() {
|
||||
const bool IsCondBranch = MIB->isConditionalBranch(Instruction);
|
||||
MCSymbol *TargetSymbol = nullptr;
|
||||
|
||||
if (BC.MIB->isUnsupportedBranch(Instruction)) {
|
||||
if (!BC.MIB->isReversibleBranch(Instruction)) {
|
||||
setIgnored();
|
||||
if (BinaryFunction *TargetFunc =
|
||||
BC.getBinaryFunctionContainingAddress(TargetAddress))
|
||||
@@ -3381,7 +3381,7 @@ void BinaryFunction::fixBranches() {
|
||||
|
||||
// Reverse branch condition and swap successors.
|
||||
auto swapSuccessors = [&]() {
|
||||
if (MIB->isUnsupportedBranch(*CondBranch)) {
|
||||
if (!MIB->isReversibleBranch(*CondBranch)) {
|
||||
if (opts::Verbosity) {
|
||||
BC.outs() << "BOLT-INFO: unable to swap successors in " << *this
|
||||
<< '\n';
|
||||
|
||||
@@ -480,7 +480,7 @@ void Instrumentation::instrumentFunction(BinaryFunction &Function,
|
||||
else if (BC.MIB->isUnconditionalBranch(Inst))
|
||||
HasUnconditionalBranch = true;
|
||||
else if ((!BC.MIB->isCall(Inst) && !BC.MIB->isConditionalBranch(Inst)) ||
|
||||
BC.MIB->isUnsupportedBranch(Inst))
|
||||
!BC.MIB->isReversibleBranch(Inst))
|
||||
continue;
|
||||
|
||||
const uint32_t FromOffset = *BC.MIB->getOffset(Inst);
|
||||
|
||||
@@ -328,19 +328,19 @@ public:
|
||||
return false;
|
||||
}
|
||||
|
||||
bool isUnsupportedBranch(const MCInst &Inst) const override {
|
||||
bool isReversibleBranch(const MCInst &Inst) const override {
|
||||
if (isDynamicBranch(Inst))
|
||||
return true;
|
||||
return false;
|
||||
|
||||
switch (Inst.getOpcode()) {
|
||||
default:
|
||||
return false;
|
||||
return true;
|
||||
case X86::LOOP:
|
||||
case X86::LOOPE:
|
||||
case X86::LOOPNE:
|
||||
case X86::JECXZ:
|
||||
case X86::JRCXZ:
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1874,7 +1874,7 @@ public:
|
||||
}
|
||||
|
||||
// Handle conditional branches and ignore indirect branches
|
||||
if (!isUnsupportedBranch(*I) && getCondCode(*I) == X86::COND_INVALID) {
|
||||
if (isReversibleBranch(*I) && getCondCode(*I) == X86::COND_INVALID) {
|
||||
// Indirect branch
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user