[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:02 PST 2024


llvm-ci wrote:

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

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

<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)
...
[136/994] Running unit test libc.test.src.math.f16mul_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcMulTest.SubnormalRange
[       OK ] LlvmLibcMulTest.SubnormalRange (67 ms)
[ RUN      ] LlvmLibcMulTest.NormalRange
[       OK ] LlvmLibcMulTest.NormalRange (70 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[137/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[138/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freetrie_test.__unit__.__build__
[139/994] 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/build/projects/libc/test/src/__support && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
libc.test.src.__support.freelist_test.__unit__.__build__: /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/src/__support/freelist.cpp:17: void __llvm_libc_20_0_0_git::FreeList::push(__llvm_libc_20_0_0_git::FreeList::Node *): Assertion `Block<>::from_usable_space(node)->outer_size() == begin_->block()->outer_size() && "freelist entries must have the same size"' failed.
Aborted
[140/994] Running unit test libc.test.src.__support.freetrie_test.__unit__
[==========] Running 5 tests from 1 test suite.
[ RUN      ] LlvmLibcFreeTrie.FindBestFitRoot
[       OK ] LlvmLibcFreeTrie.FindBestFitRoot (5 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLower
[       OK ] LlvmLibcFreeTrie.FindBestFitLower (2 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitUpper (3 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper (3 us)
[ RUN      ] LlvmLibcFreeTrie.Remove
[       OK ] LlvmLibcFreeTrie.Remove (4 us)
Ran 5 tests.  PASS: 5  FAIL: 0
[141/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freestore_test.__unit__.__build__
[142/994] Running unit test libc.test.src.math.sinpif16_test.__unit__.__NO_ROUND_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcSinpif16Test.PositiveRange
[       OK ] LlvmLibcSinpif16Test.PositiveRange (168 ms)
[ RUN      ] LlvmLibcSinpif16Test.NegativeRange
[       OK ] LlvmLibcSinpif16Test.NegativeRange (166 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[143/994] Running unit test libc.test.src.math.erff_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcErffTest.SpecialNumbers
[       OK ] LlvmLibcErffTest.SpecialNumbers (6 us)
[ RUN      ] LlvmLibcErffTest.TrickyInputs
[       OK ] LlvmLibcErffTest.TrickyInputs (351 us)
[ RUN      ] LlvmLibcErffTest.InFloatRange
 Test Rounding To Nearest...
 Log failed: 0/234562/234562 tests.
   Max ULPs is at most: 0.
 Test Rounding Downward...
 Log failed: 0/234562/234562 tests.
Step 7 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[136/994] Running unit test libc.test.src.math.f16mul_test.__unit__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcMulTest.SubnormalRange
[       OK ] LlvmLibcMulTest.SubnormalRange (67 ms)
[ RUN      ] LlvmLibcMulTest.NormalRange
[       OK ] LlvmLibcMulTest.NormalRange (70 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[137/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[138/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freetrie_test.__unit__.__build__
[139/994] 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/build/projects/libc/test/src/__support && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/projects/libc/test/src/__support/libc.test.src.__support.freelist_test.__unit__.__build__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcFreeList.FreeList
libc.test.src.__support.freelist_test.__unit__.__build__: /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/src/__support/freelist.cpp:17: void __llvm_libc_20_0_0_git::FreeList::push(__llvm_libc_20_0_0_git::FreeList::Node *): Assertion `Block<>::from_usable_space(node)->outer_size() == begin_->block()->outer_size() && "freelist entries must have the same size"' failed.
Aborted
[140/994] Running unit test libc.test.src.__support.freetrie_test.__unit__
[==========] Running 5 tests from 1 test suite.
[ RUN      ] LlvmLibcFreeTrie.FindBestFitRoot
[       OK ] LlvmLibcFreeTrie.FindBestFitRoot (5 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLower
[       OK ] LlvmLibcFreeTrie.FindBestFitLower (2 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitUpper (3 us)
[ RUN      ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper
[       OK ] LlvmLibcFreeTrie.FindBestFitLowerAndUpper (3 us)
[ RUN      ] LlvmLibcFreeTrie.Remove
[       OK ] LlvmLibcFreeTrie.Remove (4 us)
Ran 5 tests.  PASS: 5  FAIL: 0
[141/994] Linking CXX executable projects/libc/test/src/__support/libc.test.src.__support.freestore_test.__unit__.__build__
[142/994] Running unit test libc.test.src.math.sinpif16_test.__unit__.__NO_ROUND_OPT
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcSinpif16Test.PositiveRange
[       OK ] LlvmLibcSinpif16Test.PositiveRange (168 ms)
[ RUN      ] LlvmLibcSinpif16Test.NegativeRange
[       OK ] LlvmLibcSinpif16Test.NegativeRange (166 ms)
Ran 2 tests.  PASS: 2  FAIL: 0
[143/994] Running unit test libc.test.src.math.erff_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcErffTest.SpecialNumbers
[       OK ] LlvmLibcErffTest.SpecialNumbers (6 us)
[ RUN      ] LlvmLibcErffTest.TrickyInputs
[       OK ] LlvmLibcErffTest.TrickyInputs (351 us)
[ RUN      ] LlvmLibcErffTest.InFloatRange
 Test Rounding To Nearest...
 Log failed: 0/234562/234562 tests.
   Max ULPs is at most: 0.
 Test Rounding Downward...
 Log failed: 0/234562/234562 tests.

```

</details>

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


More information about the libc-commits mailing list