diff --git src/tbbmalloc/proxy_overload_osx.h src/tbbmalloc/proxy_overload_osx.h index 53afe13..98f622d 100644 --- src/tbbmalloc/proxy_overload_osx.h +++ src/tbbmalloc/proxy_overload_osx.h @@ -134,11 +134,14 @@ introspect.force_lock = &zone_force_lock; introspect.force_unlock = &zone_force_unlock; introspect.statistics = zone_statistics; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 && !defined(__POWERPC__) introspect.zone_locked = &zone_locked; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070 introspect.enable_discharge_checking = &impl_zone_enable_discharge_checking; introspect.disable_discharge_checking = &impl_zone_disable_discharge_checking; introspect.discharge = &impl_zone_discharge; - +#endif +#endif zone.size = &impl_malloc_usable_size; zone.malloc = &impl_malloc; zone.calloc = &impl_calloc; @@ -150,9 +153,12 @@ zone.introspect = &introspect; zone.version = 8; zone.memalign = impl_memalign; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060 && !defined(__POWERPC__) zone.free_definite_size = &impl_free_definite_size; +#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070 zone.pressure_relief = &impl_pressure_relief; - +#endif +#endif // make sure that default purgeable zone is initialized malloc_default_purgeable_zone(); void* ptr = malloc(1);