[LLVMdev] ExecutionEngine::create returns 0

Hendrik Boom hendrik at topoi.pooq.com
Mon Jun 9 08:25:28 PDT 2008


On Sat, 07 Jun 2008 15:24:41 +0000, Hendrik Boom wrote:

> What does it mean when ExecutionEngine::create returns 0?
> 
> Here's a simplified example:
> 
> #include "llvm/Module.h"
> #include "llvm/ExecutionEngine/ExecutionEngine.h"
> 
> main()
> {
>   llvm::Module * module = new llvm::Module("the module");
>   llvm::ExecutionEngine *ee = llvm::ExecutionEngine::create(module);
>   fprintf(stdout, "pointer is %x.\n", ee);
> }
> 
> I discovered this with a more complicated example in which I got a
> segmentation fault the moment I tried to use the created execution
> engine for anything.

I got the toy.cpp program from Chapter 4 of the tutorial to compile, after
one change to line 359  from
   return ConstantFP::get(Type::DoubleTy, APFloat(Val));
to
   return ConstantFP::get(APFloat(Val));

Now to compare it in detail with the much smaller program I've got and
maybe I'll figure out what's wrong with my call to
ExecutionEngine::create.

-- hendrik




More information about the llvm-dev mailing list