From 1af34609111b91e3e0695f2d0f4793c8a496d159 Mon Sep 17 00:00:00 2001 From: KasonChan Date: Sat, 26 Jun 2021 15:42:49 +0800 Subject: [PATCH] fix lftr bugs that may cause the realocc not inorder --- src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) 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 3a1e1c16f9..87d1119f9f 100644 --- a/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp +++ b/src/mapleall/maple_me/src/ssa_epre_for_lftr.cpp @@ -57,7 +57,6 @@ OpMeExpr *SSAEPre::FormLFTRCompare(MeRealOcc *compOcc, MeExpr *regorvar) { // handle the ops corresponding to OpMeExpr::StrengthReducible() OpMeExpr newSide(-1, x->GetOp(), x->GetPrimType(), x->GetNumOpnds()); newSide.SetOpnd(i, compare->GetOpnd(1-j)); - bool isRebuild = !newSide.GetOpnd(i)->IsLeaf(); // so hashedSide will always create new workcand switch (x->GetOp()) { case OP_cvt: { newSide.SetOpndType(x->GetOpndType()); @@ -81,7 +80,7 @@ OpMeExpr *SSAEPre::FormLFTRCompare(MeRealOcc *compOcc, MeExpr *regorvar) { hashedSide = simplifyExpr; } else { hashedSide = irMap->HashMeExpr(newSide); - BuildWorkListExpr(*compOcc->GetMeStmt(), compOcc->GetSequence(), *hashedSide, isRebuild, nullptr, true); + BuildWorkListExpr(*compOcc->GetMeStmt(), compOcc->GetSequence(), *hashedSide, true, nullptr, true); } OpMeExpr newcompare(-1, compare->GetOp(), compare->GetPrimType(), 2); newcompare.SetOpndType(static_cast(compare)->GetOpndType()); -- Gitee