diff --git a/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp b/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp index 0c33c200b240cb2519a18b8c0e55794fa018ad32..a3eab84e48e8707bbdd50b9540aa48dac1bd1964 100644 --- a/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp +++ b/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp @@ -201,6 +201,10 @@ void SSAEPre::CreateCompOcc(MeStmt *meStmt, int seqStmt, OpMeExpr *compare, bool if (iv == nullptr) { continue; } + if (x->GetOp() == OP_sub && i == 1) { // disqualify if subtracting a var + isRelevant = false; + break; + } if ((compareLHS && iv->GetOst() == compareLHS->GetOst()) || (compareRHS && iv->GetOst() == compareRHS->GetOst())) { numRelevantOpnds++;