Loading...
--- libmalloc/libmalloc-792.80.2/tests/pgm_allocator.c
+++ libmalloc/libmalloc-521.120.7/tests/pgm_allocator.c
@@ -12,8 +12,7 @@
#include <darwintest.h>
-T_GLOBAL_META(T_META_RUN_CONCURRENTLY(TRUE), T_META_NAMESPACE("pgm"),
- T_META_TAG_VM_PREFERRED, T_META_TAG_NO_ALLOCATOR_OVERRIDE);
+T_GLOBAL_META(T_META_RUN_CONCURRENTLY(TRUE), T_META_NAMESPACE("pgm"));
// Use weird page size to expose implicit assumptions and help prevent issues
// caused by different page sizes on macOS and iOS.
@@ -50,8 +49,7 @@
zone.max_allocations = 2; // is_full
zone.num_slots = 2; zone.rr_slot_index = 1; // choose_available_slot
zone.max_metadata = 4; zone.num_metadata = 2; // choose_metadata
- zone.left_align_pct = 10; // choose_offset_on_page
- expected_upper_bound = 100; rand_ret_value = 10; // choose_offset_on_page
+ expected_upper_bound = 2; rand_ret_value = false; // choose_offset_on_page
expected_trace_buffers[0] = metadata[2].trace_buffer; // capture_trace
expected_trace_sizes[0] = 216; collect_trace_ret_value = 88;
zone.begin = 640000; // page_addr
@@ -60,13 +58,13 @@
// Slot metadata
T_EXPECT_EQ((unsigned int)(slots[1].state), ss_allocated, "slot.state");
T_EXPECT_EQ((unsigned int)(slots[1].metadata), 2, "slot.metadata");
- T_EXPECT_EQ(slots[1].size, (uint16_t)16, "slot.size");
+ T_EXPECT_EQ(slots[1].size, (uint16_t)8, "slot.size"); // zone->min_alignment
T_EXPECT_EQ(slots[1].offset, (uint16_t)1008, "slot.offset");
T_EXPECT_EQ(metadata[2].alloc.trace_size, (uint16_t)88, "metadata.alloc.trace_size");
// Zone state
T_EXPECT_EQ(zone.num_allocations, 1, "zone.num_allocations");
- T_EXPECT_EQ(zone.size_in_use, 16ul, "zone.size_in_use");
- T_EXPECT_EQ(zone.max_size_in_use, 16ul, "zone.max_size_in_use");
+ T_EXPECT_EQ(zone.size_in_use, 8ul, "zone.size_in_use");
+ T_EXPECT_EQ(zone.max_size_in_use, 8ul, "zone.max_size_in_use");
zone.max_size_in_use = 55;
expected_trace_buffers[1] = metadata[3].trace_buffer; expected_trace_sizes[1] = 216;
@@ -112,8 +110,7 @@
slots[0] = (slot_t){ .state = ss_allocated, .metadata = 1, .size = 5 }; // lookup_size
zone.max_allocations = 2; // is_full
zone.num_slots = 2; // allocate
- zone.left_align_pct = 10; // allocate -> choose_offset_on_page
- expected_upper_bound = 100; rand_ret_value = 9; // allocate -> choose_offset_on_page
+ expected_upper_bound = 2; rand_ret_value = true; // allocate -> choose_offset_on_page
zone.max_metadata = 1; // allocate -> choose_metadata
expected_trace_buffers[0] = metadata[0].trace_buffer; // allocate -> capture_trace
expected_trace_sizes[0] = 216;
@@ -132,8 +129,7 @@
expected_size_ptr = 1337; size_ret_value = 5; // wrapped_size
zone.max_allocations = 2; // is_full
zone.num_slots = 2; // allocate
- zone.left_align_pct = 10; // allocate -> choose_offset_on_page
- expected_upper_bound = 100; rand_ret_value = 9; // allocate -> choose_offset_on_page
+ expected_upper_bound = 2; rand_ret_value = true; // allocate -> choose_offset_on_page
zone.max_metadata = 1; // allocate -> choose_metadata
expected_trace_buffers[0] = metadata[0].trace_buffer; // allocate -> capture_trace
expected_trace_sizes[0] = 216;