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

LLVM Continuous Integration via libc-commits libc-commits at lists.llvm.org
Wed Nov 20 13:56:21 PST 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `libc-aarch64-ubuntu-fullbuild-dbg` running on `libc-aarch64-ubuntu` while building `libc` at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/71/builds/10949

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[454/893] Building CXX object projects/libc/test/src/__support/CMakeFiles/libc.test.src.__support.freetrie_test.__unit__.__build__.dir/freetrie_test.cpp.o
[455/893] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[456/893] Running unit test libc.test.src.math.smoke.copysign_test.__unit__.__NO_MISC_MATH_BASIC_OPS_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCopySignTest.SpecialNumbers
[       OK ] LlvmLibcCopySignTest.SpecialNumbers (4 us)
[ RUN      ] LlvmLibcCopySignTest.Range
[       OK ] LlvmLibcCopySignTest.Range (30 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[457/893] Running unit test libc.test.src.__support.freelist_test.__unit__
FAILED: projects/libc/test/src/__support/CMakeFiles/libc.test.src.__support.freelist_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/__support && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/__support/freelist.cpp:17: Assertion failed: 'Block<>::from_usable_space(node)->outer_size() == begin_->block()->outer_size() && "freelist entries must have the same size"' in function: 'void __llvm_libc_20_0_0_git::FreeList::push(__llvm_libc_20_0_0_git::FreeList::Node *)'
[458/893] Running unit test libc.test.src.math.smoke.ceilf_test.__unit__.__NO_ROUND_OPT
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCeilTest.SpecialNumbers
[       OK ] LlvmLibcCeilTest.SpecialNumbers (3 us)
[ RUN      ] LlvmLibcCeilTest.RoundedNubmers
[       OK ] LlvmLibcCeilTest.RoundedNubmers (1 us)
[ RUN      ] LlvmLibcCeilTest.Fractions
[       OK ] LlvmLibcCeilTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[459/893] Running unit test libc.test.src.string.memory_utils.utils_test.__unit__
[==========] Running 48 tests from 1 test suite.
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<64>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<64>] (388 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<32>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<32>] (113 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<16>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<16>] (39 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<8>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<8>] (18 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<4>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<4>] (8 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<3>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<3>] (6 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<2>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<2>] (5 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<1>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<1>] (3 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned int, unsigned short, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned int, unsigned short, unsigned char>] (3 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned short, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned short, unsigned char>] (2 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned char, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned char, unsigned char>] (2 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::Memset<__llvm_libc_20_0_0_git::cpp::array<unsigned char, 2>>]
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[454/893] Building CXX object projects/libc/test/src/__support/CMakeFiles/libc.test.src.__support.freetrie_test.__unit__.__build__.dir/freetrie_test.cpp.o
[455/893] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[456/893] Running unit test libc.test.src.math.smoke.copysign_test.__unit__.__NO_MISC_MATH_BASIC_OPS_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcCopySignTest.SpecialNumbers
[       OK ] LlvmLibcCopySignTest.SpecialNumbers (4 us)
[ RUN      ] LlvmLibcCopySignTest.Range
[       OK ] LlvmLibcCopySignTest.Range (30 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[457/893] Running unit test libc.test.src.__support.freelist_test.__unit__
FAILED: projects/libc/test/src/__support/CMakeFiles/libc.test.src.__support.freelist_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/__support && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/src/__support/freelist.cpp:17: Assertion failed: 'Block<>::from_usable_space(node)->outer_size() == begin_->block()->outer_size() && "freelist entries must have the same size"' in function: 'void __llvm_libc_20_0_0_git::FreeList::push(__llvm_libc_20_0_0_git::FreeList::Node *)'
[458/893] Running unit test libc.test.src.math.smoke.ceilf_test.__unit__.__NO_ROUND_OPT
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCeilTest.SpecialNumbers
[       OK ] LlvmLibcCeilTest.SpecialNumbers (3 us)
[ RUN      ] LlvmLibcCeilTest.RoundedNubmers
[       OK ] LlvmLibcCeilTest.RoundedNubmers (1 us)
[ RUN      ] LlvmLibcCeilTest.Fractions
[       OK ] LlvmLibcCeilTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[459/893] Running unit test libc.test.src.string.memory_utils.utils_test.__unit__
[==========] Running 48 tests from 1 test suite.
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<64>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<64>] (388 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<32>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<32>] (113 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<16>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<16>] (39 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<8>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<8>] (18 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<4>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<4>] (8 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<3>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<3>] (6 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<2>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<2>] (5 us)
[ RUN      ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<1>]
[       OK ] LlvmLibcOpTest.Memcpy [ParamType = __llvm_libc_20_0_0_git::builtin::Memcpy<1>] (3 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned int, unsigned short, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned int, unsigned short, unsigned char>] (3 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned short, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned short, unsigned char>] (2 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned char, unsigned char>]
[       OK ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::MemsetSequence<unsigned char, unsigned char>] (2 us)
[ RUN      ] LlvmLibcOpTest.Memset [ParamType = __llvm_libc_20_0_0_git::generic::Memset<__llvm_libc_20_0_0_git::cpp::array<unsigned char, 2>>]

```

</details>

https://github.com/llvm/llvm-project/pull/106259


More information about the libc-commits mailing list