anv/allocator: Better casting in PFL macros

We cast he constant 0xfff values to a uintptr_t before applying a bitwise
negate to ensure that they are actually 64-bit when needed.  Also, the
count variable doesn't need to be explicitly cast, it will get upcast as
needed by the "|" operation.
This commit is contained in:
Jason Ekstrand
2016-03-07 21:27:55 -08:00
parent 3d4f2b0927
commit f61d40adc2

View File

@@ -198,9 +198,9 @@ anv_free_list_push(union anv_free_list *list, void *map, int32_t offset)
* means that the bottom 12 bits should all be zero.
*/
#define PFL_COUNT(x) ((uintptr_t)(x) & 0xfff)
#define PFL_PTR(x) ((void *)((uintptr_t)(x) & ~0xfff))
#define PFL_PTR(x) ((void *)((uintptr_t)(x) & ~(uintptr_t)0xfff))
#define PFL_PACK(ptr, count) ({ \
(void *)((uintptr_t)(ptr) | (uintptr_t)((count) & 0xfff)); \
(void *)(((uintptr_t)(ptr) & ~(uintptr_t)0xfff) | ((count) & 0xfff)); \
})
static bool