[libcxx-commits] [libcxx] [libc++][NFC] Simplify string.bench.cpp a bit (PR #169791)
via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Nov 28 02:42:20 PST 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Nikolas Klauser (philnik777)
<details>
<summary>Changes</summary>
This removes some dead code and simplifies an expression.
---
Full diff: https://github.com/llvm/llvm-project/pull/169791.diff
1 Files Affected:
- (modified) libcxx/test/benchmarks/containers/string.bench.cpp (+1-24)
``````````diff
diff --git a/libcxx/test/benchmarks/containers/string.bench.cpp b/libcxx/test/benchmarks/containers/string.bench.cpp
index 2484ec8fd955f..98216d22d0144 100644
--- a/libcxx/test/benchmarks/containers/string.bench.cpp
+++ b/libcxx/test/benchmarks/containers/string.bench.cpp
@@ -541,10 +541,7 @@ struct StringRead {
static bool skip() {
// Huge does not give us anything that Large doesn't have. Skip it.
- if (Length() == ::Length::Huge) {
- return true;
- }
- return false;
+ return Length() == ::Length::Huge;
}
std::string name() const { return "BM_StringRead" + Temperature::name() + Depth::name() + Length::name(); }
@@ -585,14 +582,6 @@ void sanityCheckGeneratedStrings() {
}
}
-// Some small codegen thunks to easily see generated code.
-bool StringEqString(const std::string& a, const std::string& b) { return a == b; }
-bool StringEqCStr(const std::string& a, const char* b) { return a == b; }
-bool CStrEqString(const char* a, const std::string& b) { return a == b; }
-bool StringEqCStrLiteralEmpty(const std::string& a) { return a == ""; }
-bool StringEqCStrLiteralSmall(const std::string& a) { return a == SmallStringLiteral; }
-bool StringEqCStrLiteralLarge(const std::string& a) { return a == LargeStringLiteral; }
-
int main(int argc, char** argv) {
benchmark::Initialize(&argc, argv);
if (benchmark::ReportUnrecognizedArguments(argc, argv))
@@ -615,16 +604,4 @@ int main(int argc, char** argv) {
makeCartesianProductBenchmark<StringRelationalLiteral, AllRelations, AllLengths, AllLengths, AllDiffTypes>();
makeCartesianProductBenchmark<StringRead, AllTemperatures, AllDepths, AllLengths>();
benchmark::RunSpecifiedBenchmarks();
-
- if (argc < 0) {
- // ODR-use the functions to force them being generated in the binary.
- auto functions = std::make_tuple(
- StringEqString,
- StringEqCStr,
- CStrEqString,
- StringEqCStrLiteralEmpty,
- StringEqCStrLiteralSmall,
- StringEqCStrLiteralLarge);
- printf("%p", &functions);
- }
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/169791
More information about the libcxx-commits
mailing list