67 {
69 DC_SCOPED(dbg) user_alloc = dbg_new(
"user_alloc", stdout, stdalloc_get_ref());
70 DC_SCOPED(slab_large) large_slab = slab_large_new(&user_alloc);
72 slab_large_alloc = slab_large_alloc_dbg_new("slab_large alloc", stdout, &large_slab);
73 DC_SCOPED(slab_small) small_slab = slab_small_new(&slab_large_alloc);
75 slab_small_alloc = slab_small_alloc_dbg_new("slab_small alloc", stdout, &small_slab);
76
77 void* ptr1 = slab_small_alloc_dbg_allocate_uninit(&slab_small_alloc, 32);
78 void* ptr2 =
79 slab_small_alloc_dbg_allocate_uninit(&slab_small_alloc, 64);
80 void* ptr3 = slab_small_alloc_dbg_allocate_uninit(&slab_small_alloc,
81 2048);
82
84
85 slab_small_alloc_dbg_deallocate(&slab_small_alloc, ptr1, 32);
86 slab_small_alloc_dbg_deallocate(&slab_small_alloc, ptr2, 64);
87 slab_small_alloc_dbg_deallocate(&slab_small_alloc, ptr3, 2048);
88}