Lines Matching refs:type
455 #define KALLOC_TYPE_DEFINE(var, type, flags) \ argument
456 _KALLOC_TYPE_DEFINE(var, type, flags)
678 #define kalloc_type_require(type, value) ({ \ argument
679 static KALLOC_TYPE_DEFINE(kt_view_var, type, KT_SHARED_ACCT); \
770 #define KT_SUMMARY_GRANULES(type) \ argument
771 (__builtin_xnu_type_summary(type) & KT_SUMMARY_MASK_TYPE_BITS)
782 #define KALLOC_TYPE_SIG_CHECK(mask, type) \ argument
783 ((KT_SUMMARY_GRANULES(type) & ~(mask)) == 0)
793 #define KALLOC_TYPE_IS_DATA_ONLY(type) \ argument
794 KALLOC_TYPE_SIG_CHECK(KT_SUMMARY_MASK_DATA, type)
810 #define KALLOC_TYPE_HAS_OVERLAPS(type) \ argument
811 ((KT_SUMMARY_GRANULES(type) & ~KT_SUMMARY_MASK_ALL_GRANULES) != 0)
832 #define KALLOC_TYPE_IS_COMPATIBLE_PTR(ptr, type) \ argument
835 (__builtin_xnu_types_compatible(__typeof__(*ptr), type) || \
839 #define KALLOC_TYPE_ASSERT_COMPATIBLE_POINTER(ptr, type) \ argument
840 _Static_assert(KALLOC_TYPE_IS_COMPATIBLE_PTR(ptr, type), \
1274 #define kalloc_type_2(type, flags) ({ \ argument
1275 __ZONE_DECLARE_TYPE(kt_view_var, type); \
1276 static KALLOC_TYPE_DEFINE(kt_view_var, type, KT_SHARED_ACCT); \
1277 __unsafe_forge_single(type *, kalloc_type_impl(kt_view_var, flags)); \
1280 #define kfree_type_2(type, elem) ({ \ argument
1281 KALLOC_TYPE_ASSERT_COMPATIBLE_POINTER(elem, type); \
1282 static KALLOC_TYPE_DEFINE(kt_view_var, type, KT_SHARED_ACCT); \
1286 #define kfree_type_3(type, count, elem) ({ \ argument
1287 KALLOC_TYPE_ASSERT_COMPATIBLE_POINTER(elem, type); \
1288 static KALLOC_TYPE_VAR_DEFINE_3(kt_view_var, type, KT_SHARED_ACCT); \
1291 kt_size(0, sizeof(type), __kfree_count)); \
1305 #define kalloc_type_tag_3(type, flags, tag) ({ \ argument
1306 static KALLOC_TYPE_DEFINE(kt_view_var, type, KT_SHARED_ACCT); \
1307 __unsafe_forge_single(type *, zalloc_flags(kt_view_var, \
1311 #define kalloc_type_tag_4(type, count, flags, tag) ({ \ argument
1312 static KALLOC_TYPE_VAR_DEFINE_3(kt_view_var, type, KT_SHARED_ACCT); \
1313 (type *)kalloc_type_var_impl(kt_view_var, \
1314 kt_size(0, sizeof(type), count), \
1317 #define kalloc_type_3(type, count, flags) \ argument
1318 kalloc_type_tag_4(type, count, flags, VM_ALLOC_SITE_TAG())
1330 #define krealloc_type_tag_6(type, old_count, new_count, elem, flags, tag) ({ \ argument
1331 static KALLOC_TYPE_VAR_DEFINE_3(kt_view_var, type, KT_SHARED_ACCT); \
1332 KALLOC_TYPE_ASSERT_COMPATIBLE_POINTER(elem, type); \
1333 (type *)__krealloc_type(kt_view_var, elem, \
1334 kt_size(0, sizeof(type), old_count), \
1335 kt_size(0, sizeof(type), new_count), \
1338 #define krealloc_type_5(type, old_count, new_count, elem, flags) \ argument
1339 krealloc_type_tag_6(type, old_count, new_count, elem, flags, \
1358 #define kalloc_type_3(type, count, flags) ({ \ argument
1360 static KALLOC_TYPE_VAR_DEFINE_3(kt_view_var, type, KT_SHARED_ACCT); \
1361 (type *)kalloc_type_var_impl(kt_view_var, \
1362 kt_size(0, sizeof(type), count), flags, NULL); \
1456 #define KALLOC_TYPE_CHECK_2(check, type) \ argument
1457 (KALLOC_TYPE_SIG_CHECK(check, type))
1466 #define KALLOC_TYPE_VM_SIZE_CHECK_1(type) \ argument
1467 (sizeof(type) > KHEAP_MAX_SIZE)
1510 #define _KALLOC_TYPE_DEFINE(var, type, flags) \ argument
1515 .kt_zv.zv_name = "site." #type, \
1516 .kt_flags = KALLOC_TYPE_ADJUST_FLAGS(flags, type), \
1517 .kt_size = sizeof(type), \
1518 .kt_signature = KALLOC_TYPE_EMIT_SIG(type), \
1520 KALLOC_TYPE_SIZE_CHECK(sizeof(type));
1522 #define KALLOC_TYPE_VAR_DEFINE_3(var, type, flags) \ argument
1528 .kt_name = "site." #type, \
1529 .kt_flags = KALLOC_TYPE_ADJUST_FLAGS(flags, type), \
1530 .kt_size_type = sizeof(type), \
1531 .kt_sig_type = KALLOC_TYPE_EMIT_SIG(type), \
1533 KALLOC_TYPE_SIZE_CHECK(sizeof(type));
1535 #define KALLOC_TYPE_VAR_DEFINE_4(var, hdr, type, flags) \ argument
1541 .kt_name = "site." #hdr "." #type, \
1542 .kt_flags = KALLOC_TYPE_ADJUST_FLAGS(flags, hdr, type), \
1544 .kt_size_type = sizeof(type), \
1545 .kt_sig_hdr = KALLOC_TYPE_EMIT_SIG(hdr, type), \
1546 .kt_sig_type = KALLOC_TYPE_EMIT_SIG(type, hdr), \
1549 KALLOC_TYPE_SIZE_CHECK(sizeof(type)); \
1550 KALLOC_TYPE_TRAILING_DATA_CHECK(hdr, type);
1556 #define KALLOC_TYPE_DEFINE_SITE(var, type, flags) \ argument
1557 static _KALLOC_TYPE_DEFINE(var, type, flags)