From 25925687f728f1f3a8b29984f35ff8ba7d0f6cdf Mon Sep 17 00:00:00 2001 From: Georg Hopp Date: Mon, 16 Jun 2014 09:51:09 +0100 Subject: [PATCH] another small optimization --- src/memory.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/memory.c b/src/memory.c index 55550cc..fc169bc 100644 --- a/src/memory.c +++ b/src/memory.c @@ -748,14 +748,16 @@ TR_malloc(size_t size) if (size < 8) { size = 8; } else { - size_t check = size; - size_t mask = 1; + size_t check = size >> 4; + size_t mask = 0x1F; while (check >>= 1) { mask = (mask << 1) | 1; } - size = (size << 1) & ~mask; + if (size != (size & ~(mask >> 1))) { + size = (size << 1) & ~mask; + } } }