From 705a1eaff621bef7adc2a3ff8fb1f4155534b10a Mon Sep 17 00:00:00 2001 From: Sergey Fedorov Date: Thu, 25 Jun 2026 11:49:51 +0800 Subject: [PATCH] Restore mac32 defs --- src/tbb/def/mac32-tbb.def | 170 ++++++++++++++++++++++++++ src/tbbbind/def/mac32-tbbbind.def | 19 +++ src/tbbmalloc/def/mac32-tbbmalloc.def | 44 +++++++ 3 files changed, 236 insertions(+) create mode 100644 src/tbb/def/mac32-tbb.def create mode 100644 src/tbbbind/def/mac32-tbbbind.def create mode 100644 src/tbbmalloc/def/mac32-tbbmalloc.def diff --git src/tbb/def/mac32-tbb.def src/tbb/def/mac32-tbb.def new file mode 100644 index 00000000..9cd929b6 --- /dev/null +++ src/tbb/def/mac32-tbb.def @@ -0,0 +1,164 @@ +# Copyright (c) 2005-2025 Intel Corporation +# Copyright (c) 2025 UXL Foundation Contributors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + + +# TODO: check the legacy comment below, currently use extra leading underscore everywhere. +# Sometimes macOS* requires leading underscore (e. g. in export list file), but sometimes not +# (e. g. when searching symbol in a dynamic library via dlsym()). Symbols in this file SHOULD +# be listed WITHOUT one leading underscore. __TBB_SYMBOL macro should add underscore when +# necessary, depending on the intended usage. + +# Assertions (assert.cpp) +__ZN3tbb6detail2r117assertion_failureEPKciS3_S3_ +__ZN3tbb6detail2r121set_assertion_handlerEPFvPKciS3_S3_E +__ZN3tbb6detail2r121get_assertion_handlerEv + +# ITT (profiling.cpp) +__ZN3tbb6detail2r112itt_task_endENS0_2d115itt_domain_enumE +__ZN3tbb6detail2r114itt_region_endENS0_2d115itt_domain_enumEPvy +__ZN3tbb6detail2r114itt_task_beginENS0_2d115itt_domain_enumEPvyS4_yNS0_2d021string_resource_indexE +__ZN3tbb6detail2r115call_itt_notifyEiPv +__ZN3tbb6detail2r115create_itt_syncEPvPKcS4_ +__ZN3tbb6detail2r116itt_region_beginENS0_2d115itt_domain_enumEPvyS4_yNS0_2d021string_resource_indexE +__ZN3tbb6detail2r116itt_relation_addENS0_2d115itt_domain_enumEPvyNS0_2d012itt_relationES4_y +__ZN3tbb6detail2r117itt_set_sync_nameEPvPKc +__ZN3tbb6detail2r119itt_make_task_groupENS0_2d115itt_domain_enumEPvyS4_yNS0_2d021string_resource_indexE +__ZN3tbb6detail2r120itt_metadata_str_addENS0_2d115itt_domain_enumEPvyNS0_2d021string_resource_indexEPKc +__ZN3tbb6detail2r120itt_metadata_ptr_addENS0_2d115itt_domain_enumEPvyNS0_2d021string_resource_indexES4_ + +# Allocators (allocator.cpp) +__ZN3tbb6detail2r115allocate_memoryEm +__ZN3tbb6detail2r117deallocate_memoryEPv +__ZN3tbb6detail2r122cache_aligned_allocateEm +__ZN3tbb6detail2r124cache_aligned_deallocateEPv +__ZN3tbb6detail2r115cache_line_sizeEv +__ZN3tbb6detail2r117is_tbbmalloc_usedEv + +# Small object pool (small_object_pool.cpp) +__ZN3tbb6detail2r18allocateERPNS0_2d117small_object_poolEm +__ZN3tbb6detail2r18allocateERPNS0_2d117small_object_poolEmRKNS2_14execution_dataE +__ZN3tbb6detail2r110deallocateERNS0_2d117small_object_poolEPvm +__ZN3tbb6detail2r110deallocateERNS0_2d117small_object_poolEPvmRKNS2_14execution_dataE + +# Error handling (exception.cpp) +__ZN3tbb6detail2r115throw_exceptionENS0_2d012exception_idE +__ZTIN3tbb6detail2r114bad_last_allocE +__ZTVN3tbb6detail2r114bad_last_allocE +__ZTIN3tbb6detail2r112missing_waitE +__ZTVN3tbb6detail2r112missing_waitE +__ZTIN3tbb6detail2r110user_abortE +__ZTVN3tbb6detail2r110user_abortE +__ZTIN3tbb6detail2r111unsafe_waitE +__ZTVN3tbb6detail2r111unsafe_waitE + +# RTM Mutex (rtm_mutex.cpp) +__ZN3tbb6detail2r17acquireERNS0_2d19rtm_mutexERNS3_11scoped_lockEb +__ZN3tbb6detail2r17releaseERNS0_2d19rtm_mutex11scoped_lockE +__ZN3tbb6detail2r111try_acquireERNS0_2d19rtm_mutexERNS3_11scoped_lockE + +# RTM RW Mutex (rtm_rw_mutex.cpp) +__ZN3tbb6detail2r114acquire_readerERNS0_2d112rtm_rw_mutexERNS3_11scoped_lockEb +__ZN3tbb6detail2r114acquire_writerERNS0_2d112rtm_rw_mutexERNS3_11scoped_lockEb +__ZN3tbb6detail2r118try_acquire_readerERNS0_2d112rtm_rw_mutexERNS3_11scoped_lockE +__ZN3tbb6detail2r118try_acquire_writerERNS0_2d112rtm_rw_mutexERNS3_11scoped_lockE +__ZN3tbb6detail2r17releaseERNS0_2d112rtm_rw_mutex11scoped_lockE +__ZN3tbb6detail2r17upgradeERNS0_2d112rtm_rw_mutex11scoped_lockE +__ZN3tbb6detail2r19downgradeERNS0_2d112rtm_rw_mutex11scoped_lockE + +# Tasks and partitioners (task.cpp) +__ZN3tbb6detail2r17suspendEPFvPvPNS1_18suspend_point_typeEES2_ +__ZN3tbb6detail2r16resumeEPNS1_18suspend_point_typeE +__ZN3tbb6detail2r121current_suspend_pointEv +__ZN3tbb6detail2r114notify_waitersEm +__ZN3tbb6detail2r127get_thread_reference_vertexEPNS0_2d126wait_tree_vertex_interfaceE +__ZN3tbb6detail2r116current_task_ptrEv + +# Task dispatcher (task_dispatcher.cpp) +__ZN3tbb6detail2r114execution_slotEPKNS0_2d114execution_dataE +__ZN3tbb6detail2r14waitERNS0_2d112wait_contextERNS2_18task_group_contextE +__ZN3tbb6detail2r15spawnERNS0_2d14taskERNS2_18task_group_contextE +__ZN3tbb6detail2r15spawnERNS0_2d14taskERNS2_18task_group_contextEt +__ZN3tbb6detail2r116execute_and_waitERNS0_2d14taskERNS2_18task_group_contextERNS2_12wait_contextES6_ +__ZN3tbb6detail2r16submitERNS0_2d14taskERNS2_18task_group_contextEPNS1_5arenaEm +__ZN3tbb6detail2r115current_contextEv + +# Task group context (task_group_context.cpp) +__ZN3tbb6detail2r110initializeERNS0_2d118task_group_contextE +__ZN3tbb6detail2r122cancel_group_executionERNS0_2d118task_group_contextE +__ZN3tbb6detail2r128is_group_execution_cancelledERNS0_2d118task_group_contextE +__ZN3tbb6detail2r15resetERNS0_2d118task_group_contextE +__ZN3tbb6detail2r17destroyERNS0_2d118task_group_contextE +__ZN3tbb6detail2r119capture_fp_settingsERNS0_2d118task_group_contextE + +# Task arena (arena.cpp) +__ZN3tbb6detail2r115max_concurrencyEPKNS0_2d115task_arena_baseE +__ZN3tbb6detail2r110initializeERNS0_2d115task_arena_baseE +__ZN3tbb6detail2r16attachERNS0_2d115task_arena_baseE +__ZN3tbb6detail2r17executeERNS0_2d115task_arena_baseERNS2_13delegate_baseE +__ZN3tbb6detail2r19terminateERNS0_2d115task_arena_baseE +__ZN3tbb6detail2r120isolate_within_arenaERNS0_2d113delegate_baseEl +__ZN3tbb6detail2r17enqueueERNS0_2d14taskEPNS2_15task_arena_baseE +__ZN3tbb6detail2r17enqueueERNS0_2d14taskERNS2_18task_group_contextEPNS2_15task_arena_baseE +__ZN3tbb6detail2r14waitERNS0_2d115task_arena_baseE +__ZN3tbb6detail2r114execution_slotERKNS0_2d115task_arena_baseE +__ZN3tbb6detail2r119exit_parallel_phaseEPNS0_2d115task_arena_baseEm +__ZN3tbb6detail2r120enter_parallel_phaseEPNS0_2d115task_arena_baseEm + +# System topology parsing and threads pinning (governor.cpp) +__ZN3tbb6detail2r115numa_node_countEv +__ZN3tbb6detail2r117fill_numa_indicesEPi +__ZN3tbb6detail2r115core_type_countEl +__ZN3tbb6detail2r122fill_core_type_indicesEPil +__ZN3tbb6detail2r131constraints_default_concurrencyERKNS0_2d111constraintsEl +__ZN3tbb6detail2r128constraints_threads_per_coreERKNS0_2d111constraintsEl +__ZN3tbb6detail2r124numa_default_concurrencyEi + +# Interleaved memory allocation (numa_allocation.cpp) +__ZN3tbb6detail2r120allocate_interleavedEmPKimm +__ZN3tbb6detail2r122deallocate_interleavedEPvm + +# Observer (observer_proxy.cpp) +__ZN3tbb6detail2r17observeERNS0_2d123task_scheduler_observerEb + +# Queuing RW Mutex (queuing_rw_mutex.cpp) +__ZN3tbb6detail2r111try_acquireERNS0_2d116queuing_rw_mutexERNS3_11scoped_lockEb +__ZN3tbb6detail2r117upgrade_to_writerERNS0_2d116queuing_rw_mutex11scoped_lockE +__ZN3tbb6detail2r119downgrade_to_readerERNS0_2d116queuing_rw_mutex11scoped_lockE +__ZN3tbb6detail2r17acquireERNS0_2d116queuing_rw_mutexERNS3_11scoped_lockEb +__ZN3tbb6detail2r17releaseERNS0_2d116queuing_rw_mutex11scoped_lockE +__ZN3tbb6detail2r19constructERNS0_2d116queuing_rw_mutexE +__ZN3tbb6detail2r19is_writerERKNS0_2d116queuing_rw_mutex11scoped_lockE + +# Global control (global_control.cpp) +__ZN3tbb6detail2r16createERNS0_2d114global_controlE +__ZN3tbb6detail2r17destroyERNS0_2d114global_controlE +__ZN3tbb6detail2r127global_control_active_valueEi +__ZN3tbb6detail2r18finalizeERNS0_2d121task_scheduler_handleEl +__ZN3tbb6detail2r13getERNS0_2d121task_scheduler_handleE + +# Parallel pipeline (parallel_pipeline.cpp) +__ZN3tbb6detail2r117parallel_pipelineERNS0_2d118task_group_contextEmRKNS2_11filter_nodeE +__ZN3tbb6detail2r116set_end_of_inputERNS0_2d111base_filterE + +# Concurrent bounded queue (concurrent_bounded_queue.cpp) +__ZN3tbb6detail2r126allocate_bounded_queue_repEm +__ZN3tbb6detail2r126wait_bounded_queue_monitorEPNS1_18concurrent_monitorEmiRNS0_2d113delegate_baseE +__ZN3tbb6detail2r128abort_bounded_queue_monitorsEPNS1_18concurrent_monitorE +__ZN3tbb6detail2r128deallocate_bounded_queue_repEPhm +__ZN3tbb6detail2r128notify_bounded_queue_monitorEPNS1_18concurrent_monitorEmm + +# Concurrent monitor (address_waiter.cpp) +__ZN3tbb6detail2r115wait_on_addressEPvRNS0_2d113delegate_baseEm +__ZN3tbb6detail2r117notify_by_addressEPvm +__ZN3tbb6detail2r121notify_by_address_oneEPv +__ZN3tbb6detail2r121notify_by_address_allEPv + +# Versioning (version.cpp) +_TBB_runtime_interface_version +_TBB_runtime_version diff --git src/tbbbind/def/mac32-tbbbind.def src/tbbbind/def/mac32-tbbbind.def new file mode 100644 index 00000000..eb179a68 --- /dev/null +++ src/tbbbind/def/mac32-tbbbind.def @@ -0,0 +1,19 @@ +# Copyright (c) 2023-2025 Intel Corporation +# Copyright (c) 2025 UXL Foundation Contributors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +___TBB_internal_initialize_system_topology +___TBB_internal_get_default_concurrency +___TBB_internal_destroy_system_topology +___TBB_internal_set_tbbbind_assertion_handler diff --git src/tbbmalloc/def/mac32-tbbmalloc.def src/tbbmalloc/def/mac32-tbbmalloc.def new file mode 100644 index 00000000..71253e0a --- /dev/null +++ src/tbbmalloc/def/mac32-tbbmalloc.def @@ -0,0 +1,44 @@ +# Copyright (c) 2005-2021 Intel Corporation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +_scalable_calloc +_scalable_free +_scalable_malloc +_scalable_realloc +_scalable_posix_memalign +_scalable_aligned_malloc +_scalable_aligned_realloc +_scalable_aligned_free +_scalable_msize +_scalable_allocation_mode +_scalable_allocation_command +___TBB_malloc_safer_aligned_msize +___TBB_malloc_safer_aligned_realloc +___TBB_malloc_safer_free +___TBB_malloc_safer_msize +___TBB_malloc_safer_realloc +___TBB_malloc_free_definite_size +/* memory pool stuff */ +__ZN3rml11pool_createElPKNS_13MemPoolPolicyE +__ZN3rml14pool_create_v1ElPKNS_13MemPoolPolicyEPPNS_10MemoryPoolE +__ZN3rml10pool_resetEPNS_10MemoryPoolE +__ZN3rml12pool_destroyEPNS_10MemoryPoolE +__ZN3rml11pool_mallocEPNS_10MemoryPoolEm +__ZN3rml9pool_freeEPNS_10MemoryPoolEPv +__ZN3rml12pool_reallocEPNS_10MemoryPoolEPvm +__ZN3rml20pool_aligned_reallocEPNS_10MemoryPoolEPvmm +__ZN3rml19pool_aligned_mallocEPNS_10MemoryPoolEmm +__ZN3rml13pool_identifyEPv +__ZN3rml10pool_msizeEPNS_10MemoryPoolEPv +