History log of /llvm-project/libc/test/src/__support/freetrie_test.cpp (Results 1 – 4 of 4)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5
# d121d71f 22-Nov-2024 Daniel Thornburgh <dthorn@google.com>

[libc][NFC] Remove template arguments from Block (#117386)


# 385961d7 21-Nov-2024 Daniel Thornburgh <dthorn@google.com>

Reapply "[libc] Use best-fit binary trie to make malloc logarithmic (#117065)"

This reverts commit 93b83642ee34d0092b94776728dad0117c2b72a1.

- Correct riscv32 assumption about alignment (bit of a

Reapply "[libc] Use best-fit binary trie to make malloc logarithmic (#117065)"

This reverts commit 93b83642ee34d0092b94776728dad0117c2b72a1.

- Correct riscv32 assumption about alignment (bit of a hack).
- Fix test case where the largest_small and smallest sizes are the
same.

show more ...


# b05600d9 20-Nov-2024 Daniel Thornburgh <dthorn@google.com>

Reapply "[libc] Use best-fit binary trie to make malloc logarithmic" (#117065)

- Fix assertion expressions.
- Fix incorrect small size in freestore_test.
- There may only be one small size for hi

Reapply "[libc] Use best-fit binary trie to make malloc logarithmic" (#117065)

- Fix assertion expressions.
- Fix incorrect small size in freestore_test.
- There may only be one small size for high alignment and small
pointers (riscv32).
- Don't rely on stack alignment in FreeList test.

show more ...


# c3207c31 20-Nov-2024 Daniel Thornburgh <dthorn@google.com>

[libc] Use best-fit binary trie to make malloc logarithmic (#106259)

This reworks the free store implementation in libc's malloc to use a
dlmalloc-style binary trie of circularly linked FIFO free l

[libc] Use best-fit binary trie to make malloc logarithmic (#106259)

This reworks the free store implementation in libc's malloc to use a
dlmalloc-style binary trie of circularly linked FIFO free lists. This
data structure can be maintained in logarithmic time, but it still
permits a relatively small implementation compared to other
logarithmic-time ordered maps.

The implementation doesn't do the various bitwise tricks or
optimizations used in actual dlmalloc; it instead optimizes for
(relative) readability and minimum code size. Specific optimization can
be added as necessary given future profiling.

show more ...