74#define XZ_DEC_PREALLOC
97#define kmalloc(size, flags) unarch_xz_pool_alloc((uint32_t)(size))
107#define kfree(ptr) ((void)(ptr))
117#define vmalloc(size) unarch_xz_pool_alloc((uint32_t)(size))
126#define vfree(ptr) ((void)(ptr))
135#define memeq(a, b, size) (memcmp((a), (b), (size)) == 0)
144#define memzero(buf, size) memset((buf), 0, (size))
157#define min(x, y) (((x) < (y)) ? (x) : (y))
169#define min_t(type, x, y) (((type)(x) < (type)(y)) ? (type)(x) : (type)(y))
181#define fallthrough [[fallthrough]]
192#ifndef __always_inline
194#define __always_inline [[gnu::always_inline]] inline
204typedef enum : uint8_t {
238#define get_unaligned_le32(buf) ra8_xz_cfg_get_unaligned_le32(buf)
248#define get_le32(buf) ra8_xz_cfg_get_unaligned_le32(buf)
Caller-owned bump arena backing xz-embedded's allocator seam.
ra8_xz_cfg_shift_t
Byte-lane shift distances for the little-endian load shim.
@ k_ra8_xz_cfg_shift_b1
Second byte lane shift.
@ k_ra8_xz_cfg_shift_b2
Third byte lane shift.
@ k_ra8_xz_cfg_shift_b3
Fourth byte lane shift.
static uint32_t ra8_xz_cfg_get_unaligned_le32(const uint8_t *buf)
Load an unaligned little-endian 32-bit value byte by byte.