| 65 | |
| 66 | namespace gandiva { |
| 67 | Status ExternalCFunctions::AddMappings(Engine* engine) const { |
| 68 | const auto& c_funcs = function_registry_->GetCFunctions(); |
| 69 | const auto types = engine->types(); |
| 70 | for (auto& [func, func_ptr] : c_funcs) { |
| 71 | for (const auto& sig : func.signatures()) { |
| 72 | ARROW_ASSIGN_OR_RAISE(auto llvm_signature, MapToLLVMSignature(sig, func, types)); |
| 73 | auto& [args, ret_llvm_type] = llvm_signature; |
| 74 | engine->AddGlobalMappingForFunc(func.pc_name(), ret_llvm_type, args, func_ptr); |
| 75 | } |
| 76 | } |
| 77 | return Status::OK(); |
| 78 | } |
| 79 | } // namespace gandiva |
nothing calls this directly
no test coverage detected