For VNCoercion, skip scalable vector when analysis rely on fixed size,
otherwise call TypeSize::getFixedSize() explicitly.
Add unit tests to check funtionality of GVN load elimination for scalable type.
Paths
| Differential D76944
[GVN] Fix VNCoercion for Scalable Vector. ClosedPublic Authored by huihuiz on Mar 27 2020, 11:59 AM.
Details Summary For VNCoercion, skip scalable vector when analysis rely on fixed size, Add unit tests to check funtionality of GVN load elimination for scalable type.
Diff Detail
Event Timeline
bjope added inline comments.
huihuiz mentioned this in D77828: [BasicAA] Fix aliasGEP/DecomposeGEPExpression for scalable type..Apr 9 2020, 2:08 PM huihuiz added a child revision: D77828: [BasicAA] Fix aliasGEP/DecomposeGEPExpression for scalable type.. huihuiz retitled this revision from [GVN] Fix VNCoercion/BasicAA for Scalable Vector. to [GVN] Fix VNCoercion for Scalable Vector..Apr 9 2020, 4:43 PM huihuiz added inline comments. This revision is now accepted and ready to land.Apr 9 2020, 5:22 PM Closed by commit rG6e7eeb44b305: [GVN] Fix VNCoercion for Scalable Vector. (authored by huihuiz). · Explain WhyApr 10 2020, 5:49 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 256446 llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
llvm/lib/Transforms/Utils/VNCoercion.cpp
llvm/test/Transforms/GVN/vscale.ll
|
I think TypeSize also has isZero now, assuming that got merged.