}
} else {
GC_gcjobjfreelist[lg] = obj_link(op);
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
}
*(void **)op = ptr_to_struct_containing_descr;
GC_ASSERT(((void **)op)[1] == 0);
}
} else {
GC_gcjobjfreelist[lg] = obj_link(op);
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
}
} else {
LOCK();
}
*opp = obj_link(op);
obj_link(op) = 0;
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
} else {
op = (ptr_t)GC_alloc_large_and_clear(ADD_SLOP(lb), k, 0);
if (op != NULL)
*opp = obj_link(op);
obj_link(op) = 0;
}
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
UNLOCK();
return op;
}
if (EXPECT(op != NULL, TRUE)) {
*opp = obj_link(op);
obj_link(op) = 0;
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
/* Mark bit was already set on free list. It will be */
/* cleared only temporarily during a collection, as a */
/* result of the normal free list mark bit clearing. */
- GC_non_gc_bytes += GRANULES_TO_BYTES(lg);
+ GC_non_gc_bytes += GRANULES_TO_BYTES((word)lg);
UNLOCK();
} else {
UNLOCK();
static void block_add_size(struct hblk *h, word pbytes)
{
hdr *hhdr = HDR(h);
- *(word *)pbytes += (WORDS_TO_BYTES(hhdr->hb_sz) + (HBLKSIZE - 1))
- & ~(HBLKSIZE - 1);
+ *(word *)pbytes += (WORDS_TO_BYTES((word)hhdr->hb_sz) + (HBLKSIZE - 1))
+ & ~(word)(HBLKSIZE - 1);
}
GC_API size_t GC_CALL GC_get_memory_use(void)
} else {
GC_eobjfreelist[lg] = obj_link(op);
obj_link(op) = 0;
- GC_bytes_allocd += GRANULES_TO_BYTES(lg);
+ GC_bytes_allocd += GRANULES_TO_BYTES((word)lg);
UNLOCK();
}
((word *)op)[GRANULES_TO_WORDS(lg) - 1] = d;