You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add heap allocation to lib/support/Pool.h (#11698)
#### Problem
We have too many pool allocators.
Previous PRs (#11428, #11487) transitionally use `BitMapObjectPool`
where previously `System::ObjectPool` had been used, but this lost
the ability to configure heap allocation.
#### Change overview
- Add a heap allocator (from #9590)
- Add allocation selection (from #11371)
- Use this for `System::Timer` (complementing #11487)
- Factor out common code.
- Use a heap-allocated list to track heap-allocated objects.
- More unit tests.
Co-authored-by: Zang MingJie <zealot0630@gmail.com>
Co-authored-by: C Freeman <cecille@google.com>
A future PR will use this for Inet pools (complementing #11428);
that is not done here because it would conflict with other Inet
changes under way.
#### Testing
Added heap versions of unit tests in TestPool. (A future PR will add
`System::Object`-style statistics and re-unify most of these tests.)
CI should show `.bss` decreases corresponding to increases in #11487.
0 commit comments