[vmkit-commits] Error building VMkit: it tries to access private method of LLVM

Minas Abrahamyan minas.subs at gmail.com
Wed Jul 7 05:09:20 PDT 2010


Hello,

I just tried to build VMkit, as it written on getting_started, all steps
went OK
(except for broken link for treecc for pnet, which I found on GNU-savannah,
by googling)

But now the very strange error:
in vmkit/lib/Mvm/Compiler/EscapeAnalysis.cpp, line 99:

<<<some make output skipped >>
llvm[3]: Compiling EscapeAnalysis.cpp for Debug build
/home/mn/tests/VMkit/llvm/include/llvm/Instructions.h: In member function
‘virtual bool<unnamed>::EscapeAnalysis::runOnFunction(llvm::Function&)’:
/home/mn/tests/VMkit/llvm/include/llvm/Instructions.h:1128: error:
‘llvm::Value* llvm::CallInst::getOperand(unsigned int) const’ is private
EscapeAnalysis.cpp:99: error: within this context
/home/mn/tests/VMkit/llvm/include/llvm/Instructions.h:1128: error:
‘llvm::Value* llvm::CallInst::getOperand(unsigned int) const’ is private
EscapeAnalysis.cpp:99: error: within this context
make[3]: ***
[/home/mn/tests/VMkit/vmkit/lib/Mvm/Compiler/Debug/EscapeAnalysis.o] Error 1
make[3]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib/Mvm/Compiler'
make[2]: *** [all] Error 1
<<...>>

Excerpt from EscapeAnalysis.cpp:
<<<
        if (CallInst *CI = dyn_cast<CallInst>(I)) {
          Changed |= processMalloc(CI, CI->getOperand(1), CI->getOperand(2),
                                   CurLoop);
        } else if (InvokeInst *CI = dyn_cast<InvokeInst>(I)) {
          Changed |= processMalloc(CI, CI->getOperand(3), CI->getOperand(4),
                                   CurLoop);
        }
>>>

These getOperand()-s are private, how it should now be built and work?

Has anybody built it?

-Minas Abrahamyan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/vmkit-commits/attachments/20100707/b0d3678a/attachment.html>


More information about the vmkit-commits mailing list