From 4ce1deacfd4e5440cc82237ebc5fafbaeea64763 Mon Sep 17 00:00:00 2001 From: Thomas Martitz Date: Sun, 2 Feb 2014 14:43:45 +0100 Subject: buflib: Properly support allocations without any name, to avoid wasting space in micro-allocation scenarios. Change-Id: I97a065bcfba8e0fda9b1670445e839e267c769c8 --- firmware/include/buflib.h | 8 +++++--- firmware/include/core_alloc.h | 7 +------ 2 files changed, 6 insertions(+), 9 deletions(-) (limited to 'firmware/include') diff --git a/firmware/include/buflib.h b/firmware/include/buflib.h index 3048443..e912429 100644 --- a/firmware/include/buflib.h +++ b/firmware/include/buflib.h @@ -303,12 +303,14 @@ void buflib_buffer_in(struct buflib_context *ctx, int size); /* debugging */ /** - * Returns the name, as given to core_alloc() and core_allloc_ex(), of the - * allocation associated with the given handle + * Returns the name, as given to buflib_alloc() and buflib_allloc_ex(), of the + * allocation associated with the given handle. As naming allocations + * is optional, there might be no name associated. * * handle: The handle indicating the allocation * - * Returns: A pointer to the string identifier of the allocation + * Returns: A pointer to the string identifier of the allocation, or NULL + * if none was specified with buflib_alloc_ex/(. */ const char* buflib_get_name(struct buflib_context *ctx, int handle); diff --git a/firmware/include/core_alloc.h b/firmware/include/core_alloc.h index 095cb5d..67fe99d 100644 --- a/firmware/include/core_alloc.h +++ b/firmware/include/core_alloc.h @@ -17,6 +17,7 @@ bool core_shrink(int handle, void* new_start, size_t new_size); int core_free(int handle); size_t core_available(void); size_t core_allocatable(void); +const char* core_get_name(int handle); #ifdef DEBUG void core_check_valid(void); #endif @@ -43,10 +44,4 @@ static inline void* core_get_data(int handle) return buflib_get_data(&core_ctx, handle); } -static inline const char* core_get_name(int handle) -{ - extern struct buflib_context core_ctx; - return buflib_get_name(&core_ctx, handle); -} - #endif /* __CORE_ALLOC_H__ */ -- cgit v1.1