[PATCH] D93851: [RISCV] Rewrite and simplify helper function. NFC.
Fraser Cormack via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Dec 29 03:35:50 PST 2020
This revision was automatically updated to reflect the committed changes.
Closed by commit rGaebb4a605226: [RISCV] Rewrite and simplify helper function. NFC. (authored by frasercrmck).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93851/new/
https://reviews.llvm.org/D93851
Files:
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Index: llvm/lib/Target/RISCV/RISCVISelLowering.cpp
===================================================================
--- llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+++ llvm/lib/Target/RISCV/RISCVISelLowering.cpp
@@ -2487,19 +2487,14 @@
}
template <typename ArgTy>
-static void preAssignMask(const ArgTy &Args,
- Optional<unsigned> &FirstMaskArgument,
- CCState &CCInfo) {
- unsigned NumArgs = Args.size();
- for (unsigned I = 0; I != NumArgs; ++I) {
- MVT ArgVT = Args[I].VT;
- if (!ArgVT.isScalableVector() ||
- ArgVT.getVectorElementType().SimpleTy != MVT::i1)
- continue;
-
- FirstMaskArgument = I;
- break;
+static Optional<unsigned> preAssignMask(const ArgTy &Args) {
+ for (const auto &ArgIdx : enumerate(Args)) {
+ MVT ArgVT = ArgIdx.value().VT;
+ if (ArgVT.isScalableVector() &&
+ ArgVT.getVectorElementType().SimpleTy == MVT::i1)
+ return ArgIdx.index();
}
+ return None;
}
void RISCVTargetLowering::analyzeInputArgs(
@@ -2510,7 +2505,7 @@
Optional<unsigned> FirstMaskArgument;
if (Subtarget.hasStdExtV())
- preAssignMask(Ins, FirstMaskArgument, CCInfo);
+ FirstMaskArgument = preAssignMask(Ins);
for (unsigned i = 0; i != NumArgs; ++i) {
MVT ArgVT = Ins[i].VT;
@@ -2541,7 +2536,7 @@
Optional<unsigned> FirstMaskArgument;
if (Subtarget.hasStdExtV())
- preAssignMask(Outs, FirstMaskArgument, CCInfo);
+ FirstMaskArgument = preAssignMask(Outs);
for (unsigned i = 0; i != NumArgs; i++) {
MVT ArgVT = Outs[i].VT;
@@ -3312,7 +3307,7 @@
Optional<unsigned> FirstMaskArgument;
if (Subtarget.hasStdExtV())
- preAssignMask(Outs, FirstMaskArgument, CCInfo);
+ FirstMaskArgument = preAssignMask(Outs);
for (unsigned i = 0, e = Outs.size(); i != e; ++i) {
MVT VT = Outs[i].VT;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D93851.313956.patch
Type: text/x-patch
Size: 1855 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201229/cd426434/attachment.bin>
More information about the llvm-commits
mailing list