再生時間 01:25
Jurassic World: Dominion Dominates Fandom Wikis - The Loop
この動画はいかがでしたか?
再生する
このページを編集する際は,編集に関する方針に従ってください.[]
概要[]
引数[]
- const void *p
実装[]
ggc-page.c[]
1309 /* Return the size of the gc-able object P. */
1310
1311 size_t
1312 ggc_get_size (const void *p)
1313 {
1314 page_entry *pe = lookup_page_table_entry (p);
1315 return OBJECT_SIZE (pe->order);
1316 }
ggc-zone.c =[]
1449 /* Return the size of the gc-able object P. */
1450
1451 size_t
1452 ggc_get_size (const void *p)
1453 {
1454 struct page_entry *page;
1455 const char *ptr = (const char *) p;
1456
1457 page = zone_get_object_page (p);
1458
1459 if (page->pch_p)
1460 {
1461 size_t alloc_word, alloc_bit, offset, max_size;
1462 offset = (ptr - pch_zone.page) / BYTES_PER_ALLOC_BIT + 1;
1463 alloc_word = offset / (8 * sizeof (alloc_type));
1464 alloc_bit = offset % (8 * sizeof (alloc_type));
1465 max_size = pch_zone.bytes - (ptr - pch_zone.page);
1466 return zone_object_size_1 (pch_zone.alloc_bits, alloc_word, alloc_bit,
1467 max_size);
1468 }
1469
1470 if (page->large_p)
1471 return ((struct large_page_entry *)page)->bytes;
1472 else
1473 return zone_find_object_size ((struct small_page_entry *) page, p);
1474 }