Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | alloc: Don't require the old size in varena_realloc() | Tavian Barnes | 2024-11-02 | 1 | -21/+52 |
| | | | | Instead, just look up which arena contains the pointer. | ||||
* | sanity: Don't mark memory uninit in sanitize_{alloc,free}() | Tavian Barnes | 2024-11-02 | 1 | -2/+4 |
| | | | | | We might want to change the size of an allocated region without changing which bytes are initialized. | ||||
* | alloc: Stop supporting pathological flexible array ABIs | Tavian Barnes | 2024-11-02 | 1 | -3/+3 |
| | |||||
* | alloc: Don't require size % align == 0 | Tavian Barnes | 2024-11-02 | 1 | -10/+5 |
| | | | | | | | | | 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 | ||||
* | Fix spelling | Tavian Barnes | 2024-09-23 | 1 | -1/+1 |
| | |||||
* | build: Move feature test macros to prelude.h | Tavian Barnes | 2024-08-28 | 1 | -1/+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 | -1/+1 |
| | |||||
* | config: Check for aligned_alloc() | Tavian Barnes | 2024-04-19 | 1 | -3/+3 |
| | |||||
* | Rename config.h to prelude.h | Tavian Barnes | 2024-04-19 | 1 | -1/+1 |
| | |||||
* | config: New variadic attr(...) macro | Tavian Barnes | 2023-12-18 | 1 | -1/+1 |
| | |||||
* | alloc: New helpers for growing dynamic arrays | Tavian Barnes | 2023-11-23 | 1 | -22/+44 |
| | |||||
* | alloc: New helpers for aligned reallocation | Tavian Barnes | 2023-11-23 | 1 | -4/+38 |
| | | | | | | 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 ALLOC_MAX macro | Tavian Barnes | 2023-11-23 | 1 | -2/+10 |
| | |||||
* | alloc: New is_aligned() helper | Tavian Barnes | 2023-11-23 | 1 | -5/+5 |
| | |||||
* | Initial support for Cosmopolitan Libc | Tavian Barnes | 2023-11-10 | 1 | -0/+1 |
| | |||||
* | config: New attr_noinline and attr_cold macros | Tavian Barnes | 2023-11-09 | 1 | -0/+1 |
| | |||||
* | alloc: New varena_grow() function | Tavian Barnes | 2023-08-31 | 1 | -0/+15 |
| | |||||
* | alloc: New [v]arena_clear() functions | Tavian Barnes | 2023-08-31 | 1 | -1/+15 |
| | |||||
* | alloc: Use a different error code for size overflows | Tavian Barnes | 2023-07-13 | 1 | -0/+10 |
| | | | | This should help debuggability, and also squelches a GCC warning. | ||||
* | alloc: Implement an arena for flexible structs | Tavian Barnes | 2023-06-20 | 1 | -0/+118 |
| | |||||
* | alloc: Implement an arena allocator | Tavian Barnes | 2023-06-20 | 1 | -0/+111 |
| | |||||
* | alloc: New header for memory allocation utilities | Tavian Barnes | 2023-06-20 | 1 | -0/+50 |