[LLVMdev] using external functions from llvm
o.j.sivart at gmail.com
o.j.sivart at gmail.com
Thu Aug 19 15:46:47 PDT 2010
You are adding the symbol as "lle_X_create_number_object" yet your error message implies you have tried to lookup and use "create_number_object". Can you provide the code for the lookup?
On 20/08/2010, at 8:07 AM, Alec Benzer wrote:
> Is there documentation somewhere on how to call external functions from llvm? The only guide I found was this: http://www.gearleaf.com/blog/post/44, and it doesn't seem to be working for me.
>
> I have a function:
>
> llvm::GenericValue lle_X_create_number_object(llvm::FunctionType* ft, const std::vector<llvm::GenericValue>& args)
> {
> llvm_object_structure* result = new llvm_object_structure;
> result->typeIdx = TypeSystem::number;
> result->data = reinterpret_cast<unsigned char*>(new double(args[0].DoubleVal));
> llvm::GenericValue gv;
> gv.PointerVal = reinterpret_cast<void*>(result);
> return gv;
> }
>
> defined in an extern "C" block. I add it as a symbol with:
>
> llvm::sys::DynamicLibrary::AddSymbol("lle_X_create_number_object",(void*)lle_X_create_number_object);
>
> yet when attempting to call it I still get: "LLVM ERROR: Program used external function 'create_number_object' which could not be resolved!"
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100820/c046de8a/attachment.html>
More information about the llvm-dev
mailing list