[compiler-rt] [scudo] Test secondary cache options only if enabled (PR #95872)
Caslyn Tonelli via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 17 17:41:45 PDT 2024
https://github.com/Caslyn created https://github.com/llvm/llvm-project/pull/95872
Configs that use `MapAllocatorNoCache` for its secondary cache will return `false` if `setOption` is called with some [specific options](https://github.com/llvm/llvm-project/blob/main/compiler-rt/lib/scudo/standalone/secondary.h#L104), and this breaks with the `SecondaryOptions` test.
This change will gate testing all `setOption` expectations for cache options only if the allocator cache is enabled. This will unblock github.com/llvm/llvm-project/pull/95595 from merging into Fuchsia.
>From e070ddd104766acf95c49db5caed4d0796cdbdb5 Mon Sep 17 00:00:00 2001
From: Caslyn Tonelli <caslyn at google.com>
Date: Mon, 17 Jun 2024 17:28:38 -0700
Subject: [PATCH] [scudo] Test secondary cache options only if enabled
---
.../lib/scudo/standalone/tests/secondary_test.cpp | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp b/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
index af69313214ea6..e74930148f25e 100644
--- a/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
+++ b/compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
@@ -191,12 +191,13 @@ TEST_F(MapAllocatorTest, SecondaryIterate) {
}
TEST_F(MapAllocatorTest, SecondaryOptions) {
- // Attempt to set a maximum number of entries higher than the array size.
- EXPECT_TRUE(Allocator->setOption(scudo::Option::MaxCacheEntriesCount, 4096U));
-
- // Attempt to set an invalid (negative) number of entries
- EXPECT_FALSE(Allocator->setOption(scudo::Option::MaxCacheEntriesCount, -1));
+ // Test options that are only meaningful if the secondary cache is enabled.
if (Allocator->canCache(0U)) {
+ // Attempt to set a maximum number of entries higher than the array size.
+ EXPECT_TRUE(
+ Allocator->setOption(scudo::Option::MaxCacheEntriesCount, 4096U));
+ // Attempt to set an invalid (negative) number of entries
+ EXPECT_FALSE(Allocator->setOption(scudo::Option::MaxCacheEntriesCount, -1));
// Various valid combinations.
EXPECT_TRUE(Allocator->setOption(scudo::Option::MaxCacheEntriesCount, 4U));
EXPECT_TRUE(
More information about the llvm-commits
mailing list