Small renames and use uintptr_t instead of void*

pull/13171/head
Matt Kulukundis 4 years ago
parent d9a0c58108
commit e74d6c23de
  1. 18
      upb/upb.c
  2. 2
      upb/upb.int.h

@ -67,16 +67,16 @@ static void *upb_global_allocfunc(upb_alloc *alloc, void *ptr, size_t oldsize,
}
}
static uint32_t* upb_cleanup_pointer(void* cleanup_metadata) {
return (uint32_t*)((uintptr_t)cleanup_metadata & ~0x1);
static uint32_t *upb_cleanup_pointer(uintptr_t cleanup_metadata) {
return (uint32_t*)(cleanup_metadata & ~0x1);
}
static bool upb_cleanup_has_initial_arena(void* cleanup_metadata) {
return (uintptr_t)cleanup_metadata & 0x1;
static bool upb_cleanup_has_initial_block(uintptr_t cleanup_metadata) {
return cleanup_metadata & 0x1;
}
static void* upb_cleanup_metadata(uint32_t* cleanup, bool has_initial_arena) {
return (void*)((uintptr_t)cleanup | has_initial_arena);
static uintptr_t upb_cleanup_metadata(uint32_t* cleanup, bool has_initial_block) {
return (uintptr_t)cleanup | has_initial_block;
}
upb_alloc upb_alloc_global = {&upb_global_allocfunc};
@ -125,7 +125,7 @@ static void upb_arena_addblock(upb_arena *a, upb_arena *root, void *ptr,
a->head.ptr = UPB_PTR_AT(block, memblock_reserve, char);
a->head.end = UPB_PTR_AT(block, size, char);
a->cleanup_metadata = upb_cleanup_metadata(
&block->cleanups, upb_cleanup_has_initial_arena(a->cleanup_metadata));
&block->cleanups, upb_cleanup_has_initial_block(a->cleanup_metadata));
UPB_POISON_MEMORY_REGION(a->head.ptr, a->head.end - a->head.ptr);
}
@ -260,8 +260,8 @@ bool upb_arena_fuse(upb_arena *a1, upb_arena *a2) {
upb_arena *r2 = arena_findroot(a2);
if (r1 == r2) return true; /* Already fused. */
if (upb_cleanup_has_initial_arena(r1->cleanup_metadata)) return false;
if (upb_cleanup_has_initial_arena(r2->cleanup_metadata)) return false;
if (upb_cleanup_has_initial_block(r1->cleanup_metadata)) return false;
if (upb_cleanup_has_initial_block(r2->cleanup_metadata)) return false;
/* We want to join the smaller tree to the larger tree.
* So swap first if they are backwards. */

@ -12,7 +12,7 @@ struct upb_arena {
/* Stores cleanup metadata for this arena.
* - a pointer to the current cleanup counter.
* - a boolean indicating if there is an unowned initial block. */
void *cleanup_metadata;
uintptr_t cleanup_metadata;
/* Allocator to allocate arena blocks. We are responsible for freeing these
* when we are destroyed. */

Loading…
Cancel
Save