Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | alloc: New for_arena() macro to iterate over allocated objects | Tavian Barnes | 2024-11-04 | 1 | -0/+40 |
| | |||||
* | alloc: Switch arenas from a freelist to a bitmap allocator | Tavian Barnes | 2024-11-04 | 1 | -3/+1 |
| | |||||
* | alloc: Don't require the old size in varena_realloc() | Tavian Barnes | 2024-11-02 | 1 | -8/+4 |
| | | | | Instead, just look up which arena contains the pointer. | ||||
* | alloc: Stop supporting pathological flexible array ABIs | Tavian Barnes | 2024-11-02 | 1 | -15/+26 |
| | |||||
* | alloc: Add macro versions of alignment utils | Tavian Barnes | 2024-11-02 | 1 | -3/+12 |
| | |||||
* | alloc: Don't require size % align == 0 | Tavian Barnes | 2024-11-02 | 1 | -20/+14 |
| | | | | | | | | | Allowing unaligned sizes will allow us to allocate aligned slabs with additional metadata in the tail without ballooning the allocation size for large alignments. Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2244.htm#dr_460 Link: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2072.htm | ||||
* | Write @arg instead of @param arg in doc comments | Tavian Barnes | 2024-10-01 | 1 | -45/+45 |
| | |||||
* | Fix spelling | Tavian Barnes | 2024-09-23 | 1 | -1/+1 |
| | |||||
* | build: Move feature test macros to prelude.h | Tavian Barnes | 2024-08-28 | 1 | -2/+0 |
| | | | | | | This replaces the explicit CPPFLAGS list in flags.mk with just `-include src/prelude.h`, shortening our compiler command lines and allowing them to be easily documented. | ||||
* | prelude: Split bfs-specific utilities into new bfs.h header | Tavian Barnes | 2024-08-28 | 1 | -0/+3 |
| | |||||
* | prelude: Simplify attributes | Tavian Barnes | 2024-07-28 | 1 | -8/+11 |
| | |||||
* | Rename config.h to prelude.h | Tavian Barnes | 2024-04-19 | 1 | -1/+1 |
| | |||||
* | Re-run include-what-you-use | Tavian Barnes | 2024-03-11 | 1 | -0/+1 |
| | |||||
* | alloc: Add attr(nodiscard) to a few functions | Tavian Barnes | 2023-12-20 | 1 | -0/+4 |
| | |||||
* | config: New variadic attr(...) macro | Tavian Barnes | 2023-12-18 | 1 | -6/+4 |
| | |||||
* | alloc: New helpers for growing dynamic arrays | Tavian Barnes | 2023-11-23 | 1 | -0/+36 |
| | |||||
* | alloc: New helpers for aligned reallocation | Tavian Barnes | 2023-11-23 | 1 | -0/+24 |
| | | | | | | There is no aligned_realloc(), so the new xrealloc() function emulates it by manually reallocating and copying for over-aligned types. The new REALLOC_ARRAY() and REALLOC_FLEX() macros wrap xrealloc(). | ||||
* | alloc: New is_aligned() helper | Tavian Barnes | 2023-11-23 | 1 | -0/+5 |
| | |||||
* | config: Add (de)allocator attributes | Tavian Barnes | 2023-11-09 | 1 | -17/+23 |
| | |||||
* | alloc: Test allocation size overflows | Tavian Barnes | 2023-10-06 | 1 | -2/+2 |
| | |||||
* | alloc: New varena_grow() function | Tavian Barnes | 2023-08-31 | 1 | -0/+14 |
| | |||||
* | alloc: New [v]arena_clear() functions | Tavian Barnes | 2023-08-31 | 1 | -0/+10 |
| | |||||
* | alloc: Implement an arena for flexible structs | Tavian Barnes | 2023-06-20 | 1 | -0/+92 |
| | |||||
* | alloc: Implement an arena allocator | Tavian Barnes | 2023-06-20 | 1 | -0/+44 |
| | |||||
* | alloc: New header for memory allocation utilities | Tavian Barnes | 2023-06-20 | 1 | -0/+149 |