From: José Fonseca Date: Thu, 4 Feb 2010 18:06:55 +0000 (+0000) Subject: os/os_memory_aligned.h: fix memory allocation alignment for 64 bits X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=24ea02553efccc52581479819d8ead8d2bb06aaf;p=mesa.git os/os_memory_aligned.h: fix memory allocation alignment for 64 bits Based on Andreia Gaita 's patch. --- diff --git a/src/gallium/auxiliary/os/os_memory.h b/src/gallium/auxiliary/os/os_memory.h index 704aa0762be..556662d35e1 100644 --- a/src/gallium/auxiliary/os/os_memory.h +++ b/src/gallium/auxiliary/os/os_memory.h @@ -58,7 +58,7 @@ void * os_realloc(void *ptr, size_t old_size, size_t new_size); void * -os_malloc_aligned(size_t size, uint alignment); +os_malloc_aligned(size_t size, size_t alignment); void os_free_aligned(void *ptr); diff --git a/src/gallium/auxiliary/os/os_memory_aligned.h b/src/gallium/auxiliary/os/os_memory_aligned.h index d4528f73196..72c5cf65b66 100644 --- a/src/gallium/auxiliary/os/os_memory_aligned.h +++ b/src/gallium/auxiliary/os/os_memory_aligned.h @@ -43,7 +43,7 @@ * Return memory on given byte alignment */ static INLINE void * -os_malloc_aligned(size_t size, uint alignment) +os_malloc_aligned(size_t size, size_t alignment) { char *ptr, *buf; @@ -51,7 +51,7 @@ os_malloc_aligned(size_t size, uint alignment) if (!ptr) return NULL; - buf = (char *)(((uintptr_t)ptr + sizeof(void *) + alignment - 1) & ~(alignment - 1)); + buf = (char *)(((uintptr_t)ptr + sizeof(void *) + alignment - 1) & ~((uintptr_t)(alignment - 1))); *(char **)(buf - sizeof(void *)) = ptr; return buf;