[PATCH] D84968: [PowerPC] Legalize v256i1 and v512i1 and implement load and store of these types
Lei Huang via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 18 06:26:52 PDT 2020
lei accepted this revision.
lei added a comment.
This revision is now accepted and ready to land.
Just some minor comments. Please address them prior to commit.
================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:10519
+ // 2 or 4 vsx registers.
+ if (VT == MVT::v256i1 || VT == MVT::v512i1) {
+ assert((VT != MVT::v512i1 || Subtarget.hasMMA()) &&
----------------
Maybe we can do an early exit instead of this if stmt here
```
if (VT != MVT::v256i1 && VT != MVT::v512i1)
return Op;
assert(Subtarget.pairedVectorMemops()) &&
"Type unsupported without paired vector support");
```
================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:10522
+ "Type unsupported without MMA");
+ assert((VT != MVT::v256i1 || Subtarget.pairedVectorMemops()) &&
+ "Type unsupported without paired vector support");
----------------
I believe the ck for v256i1 here is redundant cause MMA should also set pairedVectorMemops ....
================
Comment at: llvm/lib/Target/PowerPC/PPCISelLowering.cpp:10566
+ // underlying registers individually.
+ if (StoreVT == MVT::v256i1 || StoreVT == MVT::v512i1) {
+ assert((StoreVT != MVT::v512i1 || Subtarget.hasMMA()) &&
----------------
same comment as above... early exit.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D84968/new/
https://reviews.llvm.org/D84968
More information about the llvm-commits
mailing list