From 68f3ca9831a0ede7439348d0cd952f7730305bca Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 29 Apr 2009 01:52:11 +0200 Subject: macro: add new macro pa_align_ptr() --- src/pulsecore/macro.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src') diff --git a/src/pulsecore/macro.h b/src/pulsecore/macro.h index a5ca6964..2f6ee90b 100644 --- a/src/pulsecore/macro.h +++ b/src/pulsecore/macro.h @@ -57,11 +57,19 @@ #define PA_PAGE_SIZE ((size_t) 4096) #endif +/* Rounds down */ +static inline void* pa_align_ptr(const void *p) { + return (void*) (((size_t) p) & ~(sizeof(void*)-1)); +} +#define PA_ALIGN_PTR(x) (pa_align_ptr(x)) + +/* Rounds up */ static inline size_t pa_align(size_t l) { return (((l + sizeof(void*) - 1) / sizeof(void*)) * sizeof(void*)); } #define PA_ALIGN(x) (pa_align(x)) +/* Rounds down */ static inline void* pa_page_align_ptr(const void *p) { return (void*) (((size_t) p) & ~(PA_PAGE_SIZE-1)); } -- cgit