Infrastructure and build updates

- Update build configuration and flags
- Add missing header files and dependencies
- Update TLS list implementation with proper scoping
- Fix various compilation warnings and issues
- Update debug ring and tiny allocation infrastructure
- Update benchmark results documentation

Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
This commit is contained in:
Moe Charm (CI)
2025-11-11 21:49:05 +09:00
parent 79c74e72da
commit 862e8ea7db
34 changed files with 541 additions and 214 deletions

View File

@ -80,7 +80,8 @@
#else
const size_t next_off = 0;
#endif
*(void**)((uint8_t*)head + next_off) = NULL;
#include "tiny_nextptr.h"
tiny_next_store(head, class_idx, NULL);
void* tail = head; // current tail
int taken = 1;
while (taken < limit && mag->top > 0) {
@ -90,7 +91,7 @@
#else
const size_t next_off2 = 0;
#endif
*(void**)((uint8_t*)p2 + next_off2) = head;
tiny_next_store(p2, class_idx, head);
head = p2;
taken++;
}
@ -211,7 +212,7 @@
if (tls->count < tls->cap) {
void* base = (class_idx == 7) ? ptr : (void*)((uint8_t*)ptr - 1);
tiny_tls_list_guard_push(class_idx, tls, base);
tls_list_push(tls, base, class_idx);
tls_list_push_fast(tls, base, class_idx);
HAK_STAT_FREE(class_idx);
return;
}
@ -222,7 +223,7 @@
{
void* base = (class_idx == 7) ? ptr : (void*)((uint8_t*)ptr - 1);
tiny_tls_list_guard_push(class_idx, tls, base);
tls_list_push(tls, base, class_idx);
tls_list_push_fast(tls, base, class_idx);
}
if (tls_list_should_spill(tls)) {
tls_list_spill_excess(class_idx, tls);