GP-5934 Fix handling of integer minimum in SBORROW, SLESS rules, add

SCARRY rule.
This commit is contained in:
caheckman 2025-08-18 23:21:42 +00:00
parent c7b125b1c7
commit 8217593e87
17 changed files with 898 additions and 670 deletions

View file

@ -17,22 +17,6 @@
namespace ghidra {
const int4 BooleanExpressionMatch::maxDepth = 1;
bool BooleanExpressionMatch::verifyCondition(PcodeOp *op, PcodeOp *iop)
{
int4 res = BooleanMatch::evaluate(op->getIn(1), iop->getIn(1), maxDepth);
if (res == BooleanMatch::uncorrelated)
return false;
matchflip = (res == BooleanMatch::complementary);
if (op->isBooleanFlip())
matchflip = !matchflip;
if (iop->isBooleanFlip())
matchflip = !matchflip;
return true;
}
/// \brief Calculate boolean array of all address spaces that have had a heritage pass run.
///
/// Used to test if all the links out of the iblock have been calculated.