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

Minas Abrahamyan minas.subs at gmail.com
Thu Jul 8 02:56:39 PDT 2010


Hi Nicolas,

Whether N3 is not in high support, or it is abandoned now and shouldn't be
built?

Trying to build VMkit now stumbles on undefined TRACER macros in N3 subtree,
make output see below;

In J3-branch of vmkit, I saw it includes lib/Mvm/BoehmGC/MvmGC.h, (through
include/mvm/Object.h) which contains this TRACER define; (line 21)
But nothing defines TRACER in N3 branch and I have no idea where is right
place to add this or possible other similar missing defines.

Thanks,
Minas


<<<
make[2]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib/J3'

make[2]: Entering directory `/home/mn/tests/VMkit/vmkit/lib/N3'
make[3]: Entering directory `/home/mn/tests/VMkit/vmkit/lib/N3/LLVMRuntime'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib/N3/LLVMRuntime'
make[3]: Entering directory `/home/mn/tests/VMkit/vmkit/lib/N3/VMCore'
llvm[3]: Compiling Assembly.cpp for Debug build
In file included from Assembly.cpp:16:
Assembly.h:140: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:20:
N3.h:109: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:22:
VMClass.h:56: error: variable or field ‘TRACER’ declared void
VMClass.h:140: error: variable or field ‘TRACER’ declared void
VMClass.h:165: error: variable or field ‘TRACER’ declared void
VMClass.h:173: error: variable or field ‘TRACER’ declared void
VMClass.h:194: error: variable or field ‘TRACER’ declared void
VMClass.h:205: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:22:
VMClass.h:257: error: variable or field ‘TRACER’ declared void
VMClass.h:265: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:22:
VMClass.h:302: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:24:
VMThread.h:50: error: variable or field ‘TRACER’ declared void
In file included from Assembly.cpp:18:
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = llvm::Function*, Container = n3::VMMethod,
Compare = std::less<llvm::Function*>, Upcall = n3::N3]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::VMMethod’ has no member named ‘tracer’
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = const mvm::UTF8*, Container = n3::CLIString,
Compare = std::less<const mvm::UTF8*>, Upcall = n3::N3]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: no matching function for call to
‘n3::CLIString::tracer()’
/home/mn/tests/VMkit/vmkit/include/mvm/Object.h:41: note: candidates are:
virtual void mvm::Object::tracer(uintptr_t)
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = const mvm::UTF8*, Container = n3::Assembly,
Compare = std::less<const mvm::UTF8*>, Upcall = n3::N3]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::Assembly’ has no member named ‘tracer’
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = unsigned int, Container = n3::VMMethod,
Compare = std::less<unsigned int>, Upcall = n3::Assembly]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::VMMethod’ has no member named ‘tracer’
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = unsigned int, Container = n3::VMField, Compare
= std::less<unsigned int>, Upcall = n3::Assembly]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::VMField’ has no member named ‘tracer’
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = unsigned int, Container = n3::VMCommonClass,
Compare = std::less<unsigned int>, Upcall = n3::Assembly]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::VMCommonClass’ has no member named
‘tracer’
LockedMap.h: In member function ‘void n3::LockedMap<Key, Container, Compare,
Upcall>::tracer() [with Key = n3::ClassNameCmp, Container =
n3::VMCommonClass, Compare = std::less<n3::ClassNameCmp>, Upcall =
n3::Assembly]’:
Assembly.cpp:1929:   instantiated from here
LockedMap.h:101: error: ‘class n3::VMCommonClass’ has no member named
‘tracer’
make[3]: *** [/home/mn/tests/VMkit/vmkit/lib/N3/VMCore/Debug/Assembly.o]
Error 1
make[3]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib/N3/VMCore'
make[2]: *** [all] Error 1
make[2]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib/N3'
make[1]: *** [N3/.makeall] Error 2
make[1]: Leaving directory `/home/mn/tests/VMkit/vmkit/lib'
make: *** [all] Error 1
>>>

On Thu, Jul 8, 2010 at 3:17 AM, nicolas geoffray <nicolas.geoffray at gmail.com
> wrote:

> Hi Minas,
>
> N3 is not highly maintained anymore, so you shouldn't care about treecc.
>
> I have updated the EscapeAnalysis file, it should now build fine with the
> new LLVM API.
>
> Cheers,
> Nicolas
>
> On Wed, Jul 7, 2010 at 5:09 AM, Minas Abrahamyan <minas.subs at gmail.com>wrote:
>
>> Hello,
>>
>> ... 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/20100708/1eb98204/attachment.html>


More information about the vmkit-commits mailing list