Don't let splitflow undo double-precision merges

This commit is contained in:
caheckman 2021-08-31 15:37:58 -04:00
parent 169d9859f7
commit 1271bf044a
3 changed files with 6 additions and 0 deletions

View file

@ -1554,6 +1554,8 @@ bool SplitFlow::traceForward(TransformVar *rvn)
break;
case CPUI_SUBPIECE:
{
if (outvn->isPrecisLo() || outvn->isPrecisHi())
return false; // Do not split if we know value comes from double precision pieces
uintb val = op->getIn(1)->getOffset();
if ((val==0)&&(outvn->getSize() == laneDescription.getSize(0))) {
TransformOp *rop = newPreexistingOp(1,CPUI_COPY,op); // Grabs the low piece