[llvm-branch-commits] [llvm] c4e327a - Remove memory allocation with string
Aditya Kumar via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Dec 5 15:19:58 PST 2020
Author: Aditya Kumar
Date: 2020-12-05T15:14:44-08:00
New Revision: c4e327a960d20e18f3a8116da51a5686c628d51b
URL: https://github.com/llvm/llvm-project/commit/c4e327a960d20e18f3a8116da51a5686c628d51b
DIFF: https://github.com/llvm/llvm-project/commit/c4e327a960d20e18f3a8116da51a5686c628d51b.diff
LOG: Remove memory allocation with string
Differential Revision: https://reviews.llvm.org/D92506
Added:
Modified:
llvm/lib/Option/OptTable.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Option/OptTable.cpp b/llvm/lib/Option/OptTable.cpp
index 304c09fff9d2..9564b4433f0c 100644
--- a/llvm/lib/Option/OptTable.cpp
+++ b/llvm/lib/Option/OptTable.cpp
@@ -196,11 +196,13 @@ static unsigned matchOption(const OptTable::Info *I, StringRef Str,
// Returns true if one of the Prefixes + In.Names matches Option
static bool optionMatches(const OptTable::Info &In, StringRef Option) {
- if (In.Prefixes)
+ if (In.Prefixes) {
+ StringRef InName(In.Name);
for (size_t I = 0; In.Prefixes[I]; I++)
- if (Option.endswith(In.Name))
- if (Option == std::string(In.Prefixes[I]) + In.Name)
+ if (Option.endswith(InName))
+ if (Option.slice(0, Option.size() - InName.size()) == In.Prefixes[I])
return true;
+ }
return false;
}
More information about the llvm-branch-commits
mailing list