Johannes Doerfert 10aa83ff74 [OpenMP] Allow to explicitly deinitialize device resources
There are two problems this patch tries to address:
1) We currently free resources in a random order wrt. plugin and
   libomptarget destruction. This patch should ensure the CUDA plugin
   is less fragile if something during the deinitialization goes wrong.
2) We need to support (hard) pause runtime calls eventually. This patch
   allows us to free all associated resources, though we cannot
   reinitialize the device yet.

Follow up patch will associate one event pool per device/context.

Differential Revision: https://reviews.llvm.org/D120089
2022-03-07 23:43:04 -06:00

38 lines
1.0 KiB
Plaintext

VERS1.0 {
global:
__tgt_rtl_is_valid_binary;
__tgt_rtl_is_data_exchangable;
__tgt_rtl_number_of_devices;
__tgt_rtl_init_requires;
__tgt_rtl_init_device;
__tgt_rtl_deinit_device;
__tgt_rtl_load_binary;
__tgt_rtl_data_alloc;
__tgt_rtl_data_submit;
__tgt_rtl_data_submit_async;
__tgt_rtl_data_retrieve;
__tgt_rtl_data_retrieve_async;
__tgt_rtl_data_exchange;
__tgt_rtl_data_exchange_async;
__tgt_rtl_data_delete;
__tgt_rtl_run_target_team_region;
__tgt_rtl_run_target_team_region_async;
__tgt_rtl_run_target_region;
__tgt_rtl_run_target_region_async;
__tgt_rtl_synchronize;
__tgt_rtl_register_lib;
__tgt_rtl_unregister_lib;
__tgt_rtl_supports_empty_images;
__tgt_rtl_set_info_flag;
__tgt_rtl_print_device_info;
__tgt_rtl_create_event;
__tgt_rtl_record_event;
__tgt_rtl_wait_event;
__tgt_rtl_sync_event;
__tgt_rtl_destroy_event;
__tgt_rtl_init_device_info;
__tgt_rtl_init_async_info;
local:
*;
};