refactoring: remove depend of dlsym at utils.hpp
This commit is contained in:
parent
0301b500cd
commit
b1ef302991
2 changed files with 9 additions and 9 deletions
|
@ -36,6 +36,11 @@ inline int dl_unload(dl_handler_t handle) { return dlclose(handle); }
|
|||
|
||||
inline const char *dl_error() { return dlerror(); }
|
||||
|
||||
template <typename Fn>
|
||||
Fn dl_sym_typed(dl_handler_t handle, const std::string &function_name) {
|
||||
return reinterpret_cast<Fn>(dl_sym(handle, function_name));
|
||||
}
|
||||
|
||||
// =================================================================================================
|
||||
//
|
||||
// wrapper class of Qualcomm QNN(Qualcomm Neural Network, aka Qualcomm AI Engine Direct) SDK
|
||||
|
@ -722,8 +727,8 @@ private:
|
|||
return 1;
|
||||
}
|
||||
|
||||
auto *get_providers = reinterpret_cast<qnn::pfn_qnnsysteminterface_getproviders *>(
|
||||
dl_sym(system_lib_handle, "QnnSystemInterface_getProviders"));
|
||||
auto *get_providers = dl_sym_typed<qnn::pfn_qnnsysteminterface_getproviders *>(
|
||||
system_lib_handle, "QnnSystemInterface_getProviders");
|
||||
if (!get_providers) {
|
||||
QNN_LOG_WARN("can not load QNN symbol QnnSystemInterface_getProviders: %s\n", dl_error());
|
||||
return 2;
|
||||
|
@ -784,8 +789,8 @@ private:
|
|||
return 1;
|
||||
}
|
||||
|
||||
auto get_providers = qnn::load_qnn_functionpointers<qnn::pfn_qnninterface_getproviders *>(
|
||||
lib_handle, "QnnInterface_getProviders");
|
||||
auto get_providers =
|
||||
qnn::dl_sym_typed<qnn::pfn_qnninterface_getproviders *>(lib_handle, "QnnInterface_getProviders");
|
||||
if (!get_providers) {
|
||||
QNN_LOG_WARN("can not load symbol QnnInterface_getProviders : %s", dl_error());
|
||||
return 2;
|
||||
|
|
|
@ -24,11 +24,6 @@ uint32_t get_ggml_tensor_data_size(const ggml_tensor *tensor);
|
|||
|
||||
const char *opname_from_ggmlop(enum ggml_op ggmlop);
|
||||
|
||||
template <typename Fn>
|
||||
Fn load_qnn_functionpointers(void *handle, const char *function_name) {
|
||||
return reinterpret_cast<Fn>(dlsym(handle, function_name));
|
||||
}
|
||||
|
||||
inline int validate_tensor_version(const Qnn_Tensor_t &tensor) {
|
||||
if (tensor.version != QNN_TENSOR_VERSION_1) {
|
||||
QNN_LOG_WARN("validate_tensor_version() tensor %s, got unsupported version %d\n", tensor.v1.name,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue