; Copyright 2005-2010 Intel Corporation.  All Rights Reserved.
;
; This file is part of Threading Building Blocks.
;
; Threading Building Blocks is free software; you can redistribute it
; and/or modify it under the terms of the GNU General Public License
; version 2 as published by the Free Software Foundation.
;
; Threading Building Blocks is distributed in the hope that it will be
; useful, but WITHOUT ANY WARRANTY; without even the implied warranty
; of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
; GNU General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with Threading Building Blocks; if not, write to the Free Software
; Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
;
; As a special exception, you may use this file as part of a free software
; library without restriction.  Specifically, if other files instantiate
; templates or use macros or inline functions from this file, or you compile
; this file and link it with other files to produce an executable, this
; file does not by itself cause the resulting executable to be covered by
; the GNU General Public License.  This exception does not however
; invalidate any other reasons why the executable file might be covered by
; the GNU General Public License.

; This file is organized with a section for each .cpp file.
; Each of these sections is in alphabetical order.

#include "tbb/tbb_config.h"

EXPORTS

; Assembly-language support that is called directly by clients
__TBB_machine_cmpswp1
__TBB_machine_fetchadd1
__TBB_machine_fetchstore1
__TBB_machine_cmpswp2
__TBB_machine_fetchadd2
__TBB_machine_fetchstore2
__TBB_machine_pause

; cache_aligned_allocator.cpp
?NFS_Allocate@internal@tbb@@YAPEAX_K0PEAX@Z
?NFS_GetLineSize@internal@tbb@@YA_KXZ
?NFS_Free@internal@tbb@@YAXPEAX@Z
?allocate_via_handler_v3@internal@tbb@@YAPEAX_K@Z
?deallocate_via_handler_v3@internal@tbb@@YAXPEAX@Z
?is_malloc_used_v3@internal@tbb@@YA_NXZ


; task.cpp v3
?resize@affinity_partitioner_base_v3@internal@tbb@@AEAAXI@Z
?allocate@allocate_additional_child_of_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z
?allocate@allocate_child_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z
?allocate@allocate_continuation_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z
?allocate@allocate_root_proxy@internal@tbb@@SAAEAVtask@3@_K@Z
?destroy@task_base@internal@interface5@tbb@@SAXAEAVtask@4@@Z
?free@allocate_additional_child_of_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z
?free@allocate_child_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z
?free@allocate_continuation_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z
?free@allocate_root_proxy@internal@tbb@@SAXAEAVtask@3@@Z
?internal_set_ref_count@task@tbb@@AEAAXH@Z
?internal_decrement_ref_count@task@tbb@@AEAA_JXZ
?is_owned_by_current_thread@task@tbb@@QEBA_NXZ
?note_affinity@task@tbb@@UEAAXG@Z
?self@task@tbb@@SAAEAV12@XZ
?spawn_and_wait_for_all@task@tbb@@QEAAXAEAVtask_list@2@@Z
?default_num_threads@task_scheduler_init@tbb@@SAHXZ
?initialize@task_scheduler_init@tbb@@QEAAXH_K@Z
?initialize@task_scheduler_init@tbb@@QEAAXH@Z
?terminate@task_scheduler_init@tbb@@QEAAXXZ
?observe@task_scheduler_observer_v3@internal@tbb@@QEAAX_N@Z

#if !TBB_NO_LEGACY
; task_v2.cpp
?destroy@task@tbb@@QEAAXAEAV12@@Z
#endif

; Exception handling in task scheduler
#if __TBB_TASK_GROUP_CONTEXT
?allocate@allocate_root_with_context_proxy@internal@tbb@@QEBAAEAVtask@3@_K@Z
?free@allocate_root_with_context_proxy@internal@tbb@@QEBAXAEAVtask@3@@Z
?is_group_execution_cancelled@task_group_context@tbb@@QEBA_NXZ
?cancel_group_execution@task_group_context@tbb@@QEAA_NXZ
?reset@task_group_context@tbb@@QEAAXXZ
?init@task_group_context@tbb@@IEAAXXZ
?register_pending_exception@task_group_context@tbb@@QEAAXXZ
??1task_group_context@tbb@@QEAA@XZ
?name@captured_exception@tbb@@UEBAPEBDXZ
?what@captured_exception@tbb@@UEBAPEBDXZ
??1captured_exception@tbb@@UEAA@XZ
?move@captured_exception@tbb@@UEAAPEAV12@XZ
?destroy@captured_exception@tbb@@UEAAXXZ
?set@captured_exception@tbb@@QEAAXPEBD0@Z
?clear@captured_exception@tbb@@QEAAXXZ
#endif /* __TBB_TASK_GROUP_CONTEXT */

; Symbols for exceptions thrown from TBB
?throw_bad_last_alloc_exception_v4@internal@tbb@@YAXXZ
?throw_exception_v4@internal@tbb@@YAXW4exception_id@12@@Z
?what@bad_last_alloc@tbb@@UEBAPEBDXZ
?what@missing_wait@tbb@@UEBAPEBDXZ
?what@invalid_multiple_scheduling@tbb@@UEBAPEBDXZ
?what@improper_lock@tbb@@UEBAPEBDXZ

; tbb_misc.cpp
?assertion_failure@tbb@@YAXPEBDH00@Z
?get_initial_auto_partitioner_divisor@internal@tbb@@YA_KXZ
?handle_perror@internal@tbb@@YAXHPEBD@Z
?set_assertion_handler@tbb@@YAP6AXPEBDH00@ZP6AX0H00@Z@Z
?runtime_warning@internal@tbb@@YAXPEBDZZ
TBB_runtime_interface_version

; itt_notify.cpp
?itt_load_pointer_with_acquire_v3@internal@tbb@@YAPEAXPEBX@Z
?itt_store_pointer_with_release_v3@internal@tbb@@YAXPEAX0@Z
?itt_load_pointer_v3@internal@tbb@@YAPEAXPEBX@Z
?itt_set_sync_name_v3@internal@tbb@@YAXPEAXPEB_W@Z

; pipeline.cpp
??_7pipeline@tbb@@6B@
??0pipeline@tbb@@QEAA@XZ
??1filter@tbb@@UEAA@XZ
??1pipeline@tbb@@UEAA@XZ
?add_filter@pipeline@tbb@@QEAAXAEAVfilter@2@@Z
?clear@pipeline@tbb@@QEAAXXZ
?inject_token@pipeline@tbb@@AEAAXAEAVtask@2@@Z
?run@pipeline@tbb@@QEAAX_K@Z
#if __TBB_TASK_GROUP_CONTEXT
?run@pipeline@tbb@@QEAAX_KAEAVtask_group_context@2@@Z
#endif
?process_item@thread_bound_filter@tbb@@QEAA?AW4result_type@12@XZ
?try_process_item@thread_bound_filter@tbb@@QEAA?AW4result_type@12@XZ

; queuing_rw_mutex.cpp
?internal_construct@queuing_rw_mutex@tbb@@QEAAXXZ
?acquire@scoped_lock@queuing_rw_mutex@tbb@@QEAAXAEAV23@_N@Z
?downgrade_to_reader@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NXZ
?release@scoped_lock@queuing_rw_mutex@tbb@@QEAAXXZ
?upgrade_to_writer@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NXZ
?try_acquire@scoped_lock@queuing_rw_mutex@tbb@@QEAA_NAEAV23@_N@Z

; reader_writer_lock.cpp
?try_lock_read@reader_writer_lock@interface5@tbb@@QEAA_NXZ
?try_lock@reader_writer_lock@interface5@tbb@@QEAA_NXZ
?unlock@reader_writer_lock@interface5@tbb@@QEAAXXZ
?lock_read@reader_writer_lock@interface5@tbb@@QEAAXXZ
?lock@reader_writer_lock@interface5@tbb@@QEAAXXZ
?internal_construct@reader_writer_lock@interface5@tbb@@AEAAXXZ
?internal_destroy@reader_writer_lock@interface5@tbb@@AEAAXXZ
?internal_construct@scoped_lock@reader_writer_lock@interface5@tbb@@AEAAXAEAV234@@Z
?internal_destroy@scoped_lock@reader_writer_lock@interface5@tbb@@AEAAXXZ
?internal_construct@scoped_lock_read@reader_writer_lock@interface5@tbb@@AEAAXAEAV234@@Z
?internal_destroy@scoped_lock_read@reader_writer_lock@interface5@tbb@@AEAAXXZ

#if !TBB_NO_LEGACY
; spin_rw_mutex.cpp v2
?internal_itt_releasing@spin_rw_mutex@tbb@@CAXPEAV12@@Z
?internal_acquire_writer@spin_rw_mutex@tbb@@CA_NPEAV12@@Z
?internal_acquire_reader@spin_rw_mutex@tbb@@CAXPEAV12@@Z
?internal_downgrade@spin_rw_mutex@tbb@@CAXPEAV12@@Z
?internal_upgrade@spin_rw_mutex@tbb@@CA_NPEAV12@@Z
?internal_release_reader@spin_rw_mutex@tbb@@CAXPEAV12@@Z
?internal_release_writer@spin_rw_mutex@tbb@@CAXPEAV12@@Z
?internal_try_acquire_writer@spin_rw_mutex@tbb@@CA_NPEAV12@@Z
?internal_try_acquire_reader@spin_rw_mutex@tbb@@CA_NPEAV12@@Z
#endif

; spin_rw_mutex v3
?internal_construct@spin_rw_mutex_v3@tbb@@AEAAXXZ
?internal_upgrade@spin_rw_mutex_v3@tbb@@AEAA_NXZ
?internal_downgrade@spin_rw_mutex_v3@tbb@@AEAAXXZ
?internal_acquire_reader@spin_rw_mutex_v3@tbb@@AEAAXXZ
?internal_acquire_writer@spin_rw_mutex_v3@tbb@@AEAA_NXZ
?internal_release_reader@spin_rw_mutex_v3@tbb@@AEAAXXZ
?internal_release_writer@spin_rw_mutex_v3@tbb@@AEAAXXZ
?internal_try_acquire_reader@spin_rw_mutex_v3@tbb@@AEAA_NXZ
?internal_try_acquire_writer@spin_rw_mutex_v3@tbb@@AEAA_NXZ

; spin_mutex.cpp
?internal_construct@spin_mutex@tbb@@QEAAXXZ
?internal_acquire@scoped_lock@spin_mutex@tbb@@AEAAXAEAV23@@Z
?internal_release@scoped_lock@spin_mutex@tbb@@AEAAXXZ
?internal_try_acquire@scoped_lock@spin_mutex@tbb@@AEAA_NAEAV23@@Z

; mutex.cpp
?internal_acquire@scoped_lock@mutex@tbb@@AEAAXAEAV23@@Z
?internal_release@scoped_lock@mutex@tbb@@AEAAXXZ
?internal_try_acquire@scoped_lock@mutex@tbb@@AEAA_NAEAV23@@Z
?internal_construct@mutex@tbb@@AEAAXXZ
?internal_destroy@mutex@tbb@@AEAAXXZ

; recursive_mutex.cpp
?internal_construct@recursive_mutex@tbb@@AEAAXXZ
?internal_destroy@recursive_mutex@tbb@@AEAAXXZ
?internal_acquire@scoped_lock@recursive_mutex@tbb@@AEAAXAEAV23@@Z
?internal_try_acquire@scoped_lock@recursive_mutex@tbb@@AEAA_NAEAV23@@Z
?internal_release@scoped_lock@recursive_mutex@tbb@@AEAAXXZ

; queuing_mutex.cpp
?internal_construct@queuing_mutex@tbb@@QEAAXXZ
?acquire@scoped_lock@queuing_mutex@tbb@@QEAAXAEAV23@@Z
?release@scoped_lock@queuing_mutex@tbb@@QEAAXXZ
?try_acquire@scoped_lock@queuing_mutex@tbb@@QEAA_NAEAV23@@Z

;critical_section.cpp
?internal_construct@critical_section_v4@internal@tbb@@QEAAXXZ

#if !TBB_NO_LEGACY
; concurrent_hash_map.cpp
?internal_grow_predicate@hash_map_segment_base@internal@tbb@@QEBA_NXZ

; concurrent_queue.cpp v2
??0concurrent_queue_base@internal@tbb@@IEAA@_K@Z
??0concurrent_queue_iterator_base@internal@tbb@@IEAA@AEBVconcurrent_queue_base@12@@Z
??1concurrent_queue_base@internal@tbb@@MEAA@XZ
??1concurrent_queue_iterator_base@internal@tbb@@IEAA@XZ
?advance@concurrent_queue_iterator_base@internal@tbb@@IEAAXXZ
?assign@concurrent_queue_iterator_base@internal@tbb@@IEAAXAEBV123@@Z
?internal_pop@concurrent_queue_base@internal@tbb@@IEAAXPEAX@Z
?internal_pop_if_present@concurrent_queue_base@internal@tbb@@IEAA_NPEAX@Z
?internal_push@concurrent_queue_base@internal@tbb@@IEAAXPEBX@Z
?internal_push_if_not_full@concurrent_queue_base@internal@tbb@@IEAA_NPEBX@Z
?internal_set_capacity@concurrent_queue_base@internal@tbb@@IEAAX_J_K@Z
?internal_size@concurrent_queue_base@internal@tbb@@IEBA_JXZ
#endif

; concurrent_queue v3
??0concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@AEBVconcurrent_queue_base_v3@12@@Z
??0concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@AEBVconcurrent_queue_base_v3@12@_K@Z
??1concurrent_queue_iterator_base_v3@internal@tbb@@IEAA@XZ
?assign@concurrent_queue_iterator_base_v3@internal@tbb@@IEAAXAEBV123@@Z
?advance@concurrent_queue_iterator_base_v3@internal@tbb@@IEAAXXZ
??0concurrent_queue_base_v3@internal@tbb@@IEAA@_K@Z
??1concurrent_queue_base_v3@internal@tbb@@MEAA@XZ
?internal_push@concurrent_queue_base_v3@internal@tbb@@IEAAXPEBX@Z
?internal_push_if_not_full@concurrent_queue_base_v3@internal@tbb@@IEAA_NPEBX@Z
?internal_pop@concurrent_queue_base_v3@internal@tbb@@IEAAXPEAX@Z
?internal_pop_if_present@concurrent_queue_base_v3@internal@tbb@@IEAA_NPEAX@Z
?internal_size@concurrent_queue_base_v3@internal@tbb@@IEBA_JXZ
?internal_empty@concurrent_queue_base_v3@internal@tbb@@IEBA_NXZ
?internal_finish_clear@concurrent_queue_base_v3@internal@tbb@@IEAAXXZ
?internal_set_capacity@concurrent_queue_base_v3@internal@tbb@@IEAAX_J_K@Z
?internal_throw_exception@concurrent_queue_base_v3@internal@tbb@@IEBAXXZ
?assign@concurrent_queue_base_v3@internal@tbb@@IEAAXAEBV123@@Z

#if !TBB_NO_LEGACY
; concurrent_vector.cpp v2
?internal_assign@concurrent_vector_base@internal@tbb@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z
?internal_capacity@concurrent_vector_base@internal@tbb@@IEBA_KXZ
?internal_clear@concurrent_vector_base@internal@tbb@@IEAAXP6AXPEAX_K@Z_N@Z
?internal_copy@concurrent_vector_base@internal@tbb@@IEAAXAEBV123@_KP6AXPEAXPEBX1@Z@Z
?internal_grow_by@concurrent_vector_base@internal@tbb@@IEAA_K_K0P6AXPEAX0@Z@Z
?internal_grow_to_at_least@concurrent_vector_base@internal@tbb@@IEAAX_K0P6AXPEAX0@Z@Z
?internal_push_back@concurrent_vector_base@internal@tbb@@IEAAPEAX_KAEA_K@Z
?internal_reserve@concurrent_vector_base@internal@tbb@@IEAAX_K00@Z
#endif

; concurrent_vector v3
??1concurrent_vector_base_v3@internal@tbb@@IEAA@XZ
?internal_assign@concurrent_vector_base_v3@internal@tbb@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z
?internal_capacity@concurrent_vector_base_v3@internal@tbb@@IEBA_KXZ
?internal_clear@concurrent_vector_base_v3@internal@tbb@@IEAA_KP6AXPEAX_K@Z@Z
?internal_copy@concurrent_vector_base_v3@internal@tbb@@IEAAXAEBV123@_KP6AXPEAXPEBX1@Z@Z
?internal_grow_by@concurrent_vector_base_v3@internal@tbb@@IEAA_K_K0P6AXPEAXPEBX0@Z2@Z
?internal_grow_to_at_least@concurrent_vector_base_v3@internal@tbb@@IEAAX_K0P6AXPEAXPEBX0@Z2@Z
?internal_push_back@concurrent_vector_base_v3@internal@tbb@@IEAAPEAX_KAEA_K@Z
?internal_reserve@concurrent_vector_base_v3@internal@tbb@@IEAAX_K00@Z
?internal_compact@concurrent_vector_base_v3@internal@tbb@@IEAAPEAX_KPEAXP6AX10@ZP6AX1PEBX0@Z@Z
?internal_swap@concurrent_vector_base_v3@internal@tbb@@IEAAXAEAV123@@Z
?internal_throw_exception@concurrent_vector_base_v3@internal@tbb@@IEBAX_K@Z
?internal_resize@concurrent_vector_base_v3@internal@tbb@@IEAAX_K00PEBXP6AXPEAX0@ZP6AX210@Z@Z
?internal_grow_to_at_least_with_result@concurrent_vector_base_v3@internal@tbb@@IEAA_K_K0P6AXPEAXPEBX0@Z2@Z

; tbb_thread
?allocate_closure_v3@internal@tbb@@YAPEAX_K@Z
?detach@tbb_thread_v3@internal@tbb@@QEAAXXZ
?free_closure_v3@internal@tbb@@YAXPEAX@Z
?hardware_concurrency@tbb_thread_v3@internal@tbb@@SAIXZ
?internal_start@tbb_thread_v3@internal@tbb@@AEAAXP6AIPEAX@Z0@Z
?join@tbb_thread_v3@internal@tbb@@QEAAXXZ
?move_v3@internal@tbb@@YAXAEAVtbb_thread_v3@12@0@Z
?thread_get_id_v3@internal@tbb@@YA?AVid@tbb_thread_v3@12@XZ
?thread_sleep_v3@internal@tbb@@YAXAEBVinterval_t@tick_count@2@@Z
?thread_yield_v3@internal@tbb@@YAXXZ

; condition_variable
?internal_initialize_condition_variable@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z
?internal_condition_variable_wait@internal@interface5@tbb@@YA_NAEATcondvar_impl_t@123@PEAVmutex@3@PEBVinterval_t@tick_count@3@@Z
?internal_condition_variable_notify_one@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z
?internal_condition_variable_notify_all@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z
?internal_destroy_condition_variable@internal@interface5@tbb@@YAXAEATcondvar_impl_t@123@@Z
