[llvm] 4ba1800 - [LLVM][NFC] Reduce copying of parameter in lambda (#110299)
via llvm-commits
llvm-commits at lists.llvm.org
Wed Oct 16 01:55:04 PDT 2024
Author: Amr Hesham
Date: 2024-10-16T09:55:01+01:00
New Revision: 4ba1800be6c9294e21e2b87b64600daac12730c1
URL: https://github.com/llvm/llvm-project/commit/4ba1800be6c9294e21e2b87b64600daac12730c1
DIFF: https://github.com/llvm/llvm-project/commit/4ba1800be6c9294e21e2b87b64600daac12730c1.diff
LOG: [LLVM][NFC] Reduce copying of parameter in lambda (#110299)
Reduce redundant copy parameter in lambda
Fixes #95642
Added:
Modified:
llvm/lib/Analysis/VectorUtils.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Analysis/VectorUtils.cpp b/llvm/lib/Analysis/VectorUtils.cpp
index dbffbb8a5f81d9..6b5251e0ad34eb 100644
--- a/llvm/lib/Analysis/VectorUtils.cpp
+++ b/llvm/lib/Analysis/VectorUtils.cpp
@@ -1414,7 +1414,7 @@ void InterleavedAccessInfo::analyzeInterleaving(
auto InvalidateGroupIfMemberMayWrap = [&](InterleaveGroup<Instruction> *Group,
int Index,
- std::string FirstOrLast) -> bool {
+ const char *FirstOrLast) -> bool {
Instruction *Member = Group->getMember(Index);
assert(Member && "Group member does not exist");
Value *MemberPtr = getLoadStorePointerOperand(Member);
@@ -1455,11 +1455,10 @@ void InterleavedAccessInfo::analyzeInterleaving(
// So we check only group member 0 (which is always guaranteed to exist),
// and group member Factor - 1; If the latter doesn't exist we rely on
// peeling (if it is a non-reversed access -- see Case 3).
- if (InvalidateGroupIfMemberMayWrap(Group, 0, std::string("first")))
+ if (InvalidateGroupIfMemberMayWrap(Group, 0, "first"))
continue;
if (Group->getMember(Group->getFactor() - 1))
- InvalidateGroupIfMemberMayWrap(Group, Group->getFactor() - 1,
- std::string("last"));
+ InvalidateGroupIfMemberMayWrap(Group, Group->getFactor() - 1, "last");
else {
// Case 3: A non-reversed interleaved load group with gaps: We need
// to execute at least one scalar epilogue iteration. This will ensure
@@ -1503,11 +1502,11 @@ void InterleavedAccessInfo::analyzeInterleaving(
// and the last group member. Case 3 (scalar epilog) is not relevant for
// stores with gaps, which are implemented with masked-store (rather than
// speculative access, as in loads).
- if (InvalidateGroupIfMemberMayWrap(Group, 0, std::string("first")))
+ if (InvalidateGroupIfMemberMayWrap(Group, 0, "first"))
continue;
for (int Index = Group->getFactor() - 1; Index > 0; Index--)
if (Group->getMember(Index)) {
- InvalidateGroupIfMemberMayWrap(Group, Index, std::string("last"));
+ InvalidateGroupIfMemberMayWrap(Group, Index, "last");
break;
}
}
More information about the llvm-commits
mailing list