[PATCH] D89162: [SVE] Lower fixed length VECREDUCE_SEQ_FADD operation
Cameron McInally via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Oct 19 09:08:55 PDT 2020
cameron.mcinally updated this revision to Diff 299072.
cameron.mcinally retitled this revision from "[SVE][WIP] Lower fixed length VECREDUCE_SEQ_FADD operation" to "[SVE] Lower fixed length VECREDUCE_SEQ_FADD operation".
cameron.mcinally added a comment.
This is ready for review now...
1. Notice that I made useSVEForFixedLengthVectors*(...) public members so that the ExpandReductions pass can access them. I don't keep up with C++ best practices, so I'm not sure if there's a better way to grant access to these functions. Any suggestions?
2. Also, expansion is kind of ugly for this operation. The ExpandReduction pass is an IR pass that runs before legalization, so the decision to expand is done early. It would be possible to not rely on ExpandReductions, and rather extend normal legalization to do an ordered lowering, but that would be duplicating what is already done. Does anyone feel strongly that expansion should be moved to Legalize or otherwise?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D89162/new/
https://reviews.llvm.org/D89162
Files:
llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/lib/Target/AArch64/AArch64ISelLowering.h
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
llvm/test/CodeGen/AArch64/sve-fixed-length-fp-reduce.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89162.299072.patch
Type: text/x-patch
Size: 18584 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201019/e3b544d5/attachment.bin>
More information about the llvm-commits
mailing list