From: Andreas Beckmann Date: Wed, 10 Feb 2021 22:25:57 +0000 (+0100) Subject: [PATCH 76/90] add POCL_EXPORT to additional symbols needed by the cuda device X-Git-Tag: archive/raspbian/1.8-3+rpi1^2~61 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=f676368359551e8f67373ecc2da1f6cc8e36e8ae;p=pocl.git [PATCH 76/90] add POCL_EXPORT to additional symbols needed by the cuda device Gbp-Pq: Name 0076-add-POCL_EXPORT-to-additional-symbols-needed-by-the-.patch --- diff --git a/include/pocl_cache.h b/include/pocl_cache.h index 7caf6d7..15cf97d 100644 --- a/include/pocl_cache.h +++ b/include/pocl_cache.h @@ -107,6 +107,7 @@ void pocl_cache_program_bc_path(char* program_bc_path, cl_program program, unsigned device_i); +POCL_EXPORT void pocl_cache_work_group_function_path (char *parallel_bc_path, cl_program program, unsigned device_i, cl_kernel kernel, diff --git a/include/pocl_file_util.h b/include/pocl_file_util.h index 3bbb2c2..68fe72c 100644 --- a/include/pocl_file_util.h +++ b/include/pocl_file_util.h @@ -42,6 +42,7 @@ int pocl_remove(const char* path); int pocl_rename(const char *oldpath, const char *newpath); +POCL_EXPORT int pocl_exists(const char* path); /* Touch file to change last modified time. For portability, this @@ -49,6 +50,7 @@ int pocl_exists(const char* path); int pocl_touch_file(const char* path); /* Writes or appends data to a file. */ +POCL_EXPORT int pocl_write_file(const char* path, const char* content, uint64_t count, int append, int dont_rewrite); diff --git a/lib/CL/pocl_intfn.h b/lib/CL/pocl_intfn.h index 4000040..f2ae7d0 100644 --- a/lib/CL/pocl_intfn.h +++ b/lib/CL/pocl_intfn.h @@ -99,6 +99,7 @@ POdeclsymICD(clIcdGetPlatformIDsKHR) POdeclsym(clReleaseCommandQueue) POdeclsym(clReleaseContext) POdeclsym(clReleaseDevice) +POCL_EXPORT POdeclsym(clReleaseEvent) POdeclsym(clReleaseKernel) POdeclsym(clReleaseMemObject) @@ -107,6 +108,7 @@ POdeclsym(clReleaseSampler) POdeclsym(clRetainCommandQueue) POdeclsym(clRetainContext) POdeclsym(clRetainDevice) +POCL_EXPORT POdeclsym(clRetainEvent) POdeclsym(clRetainKernel) POdeclsym(clRetainMemObject) diff --git a/lib/CL/pocl_llvm.h b/lib/CL/pocl_llvm.h index e33c76d..60f48d2 100644 --- a/lib/CL/pocl_llvm.h +++ b/lib/CL/pocl_llvm.h @@ -68,6 +68,7 @@ extern "C" { * WG function that might be specialized according to the properties of * the given Command. */ + POCL_EXPORT int pocl_llvm_generate_workgroup_function (unsigned DeviceI, cl_device_id Device, cl_kernel Kernel, diff --git a/lib/CL/pocl_runtime_config.h b/lib/CL/pocl_runtime_config.h index 7f47c13..4f300f1 100644 --- a/lib/CL/pocl_runtime_config.h +++ b/lib/CL/pocl_runtime_config.h @@ -36,6 +36,7 @@ POCL_EXPORT int pocl_get_int_option(const char *key, int default_value); POCL_EXPORT int pocl_get_bool_option(const char *key, int default_value); +POCL_EXPORT const char* pocl_get_string_option(const char *key, const char *default_value); #ifdef __cplusplus diff --git a/lib/CL/pocl_timing.h b/lib/CL/pocl_timing.h index afcffd9..7d27b9b 100644 --- a/lib/CL/pocl_timing.h +++ b/lib/CL/pocl_timing.h @@ -26,12 +26,15 @@ #include "config.h" +#include "pocl_export.h" + #ifdef __cplusplus extern "C" { #endif extern const unsigned pocl_timer_resolution; +POCL_EXPORT uint64_t pocl_gettimemono_ns(); int pocl_gettimereal(int *year, int *mon, int *day, int *hour, int *min, int *sec, int* nanosec); diff --git a/lib/CL/pocl_util.h b/lib/CL/pocl_util.h index 2290124..d8cb866 100644 --- a/lib/CL/pocl_util.h +++ b/lib/CL/pocl_util.h @@ -144,6 +144,7 @@ void pocl_unmap_command_finished (cl_device_id dev, pocl_mem_identifier *mem_id, cl_mem mem, mem_mapping_t *map); +POCL_EXPORT void pocl_unmap_command_finished2 (cl_event event, _cl_command_t *cmd); /** @@ -213,6 +214,7 @@ void pocl_update_event_failed (cl_event event); const char* pocl_status_to_str (int status); +POCL_EXPORT const char * pocl_command_to_str (cl_command_type cmd); diff --git a/lib/llvmopencl/LLVMUtils.h b/lib/llvmopencl/LLVMUtils.h index fe77e2e..bbcaf2b 100644 --- a/lib/llvmopencl/LLVMUtils.h +++ b/lib/llvmopencl/LLVMUtils.h @@ -49,6 +49,7 @@ void regenerate_kernel_metadata(llvm::Module &M, FunctionMapping &kernels); // Remove a function from a module, along with all callsites. +POCL_EXPORT void eraseFunctionAndCallers(llvm::Function *Function); inline bool