[LLVMdev] VMKit Development

Nicolas Geoffray nicolas.geoffray at gmail.com
Sat Aug 27 00:57:57 PDT 2011


This error usually shows up when vmkit cannot find the classpath libs and
jar. Make sure --with-gnu-classpath-libs points to the directory of .so
files are, and that --with-gnu-classpath-glibj points to glibj.zip.

Nicolas

On Sat, Aug 27, 2011 at 5:13 AM, Akshat Gupta <g.akshat at gmail.com> wrote:

> Hi,
> I just did a reconfigure and rebuild with the latest svn for vmkit code.
>
> The code still seg faults but the stack trace seems to have changed.
>
>
> llvm[2]: Building Debug+Asserts mmtk-vmkit.jar all
> vmjc: JavaRuntimeJIT.cpp:172: uint32 j3VirtualTableLookup(j3::Class*,
> uint32, uint32*, j3::JavaObject*): Assertion
> `dmeth->classDef->isInitializing() && "Class not ready in a virtual
> lookup."' failed.
> 0  vmjc            0x0904fc0a
> 1  vmjc            0x0904f997
> 2                  0xb77ac400 __kernel_sigreturn + 0
> 3  libc.so.6       0xb74eede2 abort + 386
> 4  libc.so.6       0xb74e67d8 __assert_fail + 248
> 5  vmjc            0x08678786 j3VirtualTableLookup + 550
> 6  vmjc            0xb5f6eac3 j3VirtualTableLookup + 2911855971
> 7  vmjc            0xb5f6eb2d j3VirtualTableLookup + 2911856077
> 8  vmjc            0x08672cae
> j3::JavaMethod::invokeIntStaticBuf(j3::Jnjvm*, j3::Class*, void*) + 126
> 9  vmjc            0x0867573b j3::JavaMethod::invokeIntStaticAP(j3::Jnjvm*,
> j3::Class*, char*) + 491
> 10 vmjc            0x08675789 j3::JavaMethod::invokeIntStatic(j3::Jnjvm*,
> j3::Class*, ...) + 41
> 11 vmjc            0x08698a39 j3::Classpath::CreateJavaThread(j3::Jnjvm*,
> j3::JavaThread*, char const*, j3::JavaObject*) + 537
> 12 vmjc            0x08698b28
> j3::Classpath::InitializeThreading(j3::Jnjvm*) + 232
> 13 vmjc            0x0865dc0e j3::Jnjvm::loadBootstrap() + 414
> 14 vmjc            0x0869c131 mainCompilerStart(j3::JavaThread*) + 833
> 15 vmjc            0x086fc438
> mvm::Thread::internalThreadStart(mvm::Thread*) + 120
> 16 libpthread.so.0 0xb7774cf2
> 17 libc.so.6       0xb759184e clone + 94
> make[2]: *** [all] Aborted
>
> Is there any way to put the building process through a debugger. I tried to
> use gdb, but got no stack trace.
>
> Thanks,
> Akshat
>
>
> On Fri, Aug 26, 2011 at 12:07 PM, Nicolas Geoffray <
> nicolas.geoffray at gmail.com> wrote:
>
>> I just noticed there was some .h move around in llvm and fixed the
>> includes in vmkit. Maybe you were just removing the failing includes?
>>
>> In any case, I have updated vmkit for llvm trunk. Let me know if updating
>> helps.
>>
>> Nicolas
>>
>>
>> On Fri, Aug 26, 2011 at 12:00 PM, Akshat Gupta <g.akshat at gmail.com>wrote:
>>
>>> Yep, I am compiling with llvm-gcc. Also I removed the LD flag on the
>>> configure, it still gives the same segafault.
>>> Thanks,
>>> Akshat
>>>
>>>
>>> On Fri, Aug 26, 2011 at 4:21 AM, Nicolas Geoffray <
>>> nicolas.geoffray at gmail.com> wrote:
>>>
>>>> On Fri, Aug 26, 2011 at 1:08 AM, Akshat Gupta <g.akshat at gmail.com>wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> Here are my build details.
>>>>> OS:
>>>>> Linux scop 2.6.38-gentoo-r6 #1 SMP Sat Jul 9 13:07:18 EST 2011 i686
>>>>> Intel(R) Core(TM) i5-2415M CPU @ 2.30GHz GenuineIntel GNU/Linux
>>>>> Machine: VirtualBox (32 bit)
>>>>>
>>>>> Configure (VMKit):
>>>>> ./configure --with-llvmsrc=/root/code/llvm --with-llvmobj=~/code/llvm
>>>>> --with-gnu-classpath-libs=/usr/gnu-classpath-0.98/lib/classpath
>>>>> LD=/usr/bin/llvm-ld
>>>>> --with-gnu-classpath-glibj=/usr/gnu-classpath-0.98/share/classpath/glibj.zip
>>>>>
>>>>
>>>> Why do you need to specify LD? Also are you compiling vmkit with clang
>>>> or llvm-gcc? (Note that you *need* an llvm-based C++ compiler to build
>>>> vmkit).
>>>>
>>>> Nicolas
>>>>
>>>>
>>>>>
>>>>> For LLVM just did a ./configure and make; make install
>>>>>
>>>>> Hope this helps.
>>>>> Thanks,
>>>>> Akshat
>>>>>
>>>>>
>>>>> On Thu, Aug 25, 2011 at 3:40 AM, Nicolas Geoffray <
>>>>> nicolas.geoffray at gmail.com> wrote:
>>>>>
>>>>>> Hi Akshat,
>>>>>>
>>>>>> Could you give us your configuration? CPU/OS? How did you configure
>>>>>> and build llvm and vmkit?
>>>>>>
>>>>>> Nicolas
>>>>>>
>>>>>> On Thu, Aug 25, 2011 at 4:12 AM, Akshat Gupta <g.akshat at gmail.com>wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> I tried building again with the latest llvm.
>>>>>>> I am getting another seg fault:
>>>>>>>
>>>>>>> make[2]: Entering directory `/root/code/vmkit/mmtk/java'
>>>>>>> Buildfile: /root/code/vmkit/mmtk/java/build.xml
>>>>>>>
>>>>>>> main:
>>>>>>>     [javac] /root/code/vmkit/mmtk/java/build.xml:4: warning:
>>>>>>> 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set
>>>>>>> to false for repeatable builds
>>>>>>>     [javac] Compiling 1 source file to
>>>>>>> /root/code/vmkit/mmtk/java/classes
>>>>>>>       [jar] Building jar: /root/code/vmkit/mmtk/java/mmtk-vmkit.jar
>>>>>>>
>>>>>>> BUILD SUCCESSFUL
>>>>>>> Total time: 3 seconds
>>>>>>> llvm[2]: Building Debug+Asserts mmtk-vmkit.jar all
>>>>>>> 0  vmjc           0x0904fd0a
>>>>>>> 1  vmjc           0x0904fa97
>>>>>>> 2                 0xb78e7400 __kernel_sigreturn + 0
>>>>>>> 3  libstdc++.so.6 0xb7835532 std::basic_string<char,
>>>>>>> std::char_traits<char>, std::allocator<char> >::basic_string(char const*,
>>>>>>> unsigned int, std::allocator<char> const&) + 50
>>>>>>> 4  vmjc           0x08653213 llvm::StringRef::str() const + 91
>>>>>>> 5  vmjc           0x09064883 llvm::Twine::str() const + 131
>>>>>>> 6  vmjc           0x087092ca llvm::Triple::Triple(llvm::Twine const&)
>>>>>>> + 36
>>>>>>> 7  vmjc           0x0889eb47
>>>>>>> llvm::X86_MC::ParseX86Triple(llvm::StringRef) + 59
>>>>>>> 8  vmjc           0x0889efe4
>>>>>>> llvm::X86_MC::createX86MCSubtargetInfo(llvm::StringRef, llvm::StringRef,
>>>>>>> llvm::StringRef) + 45
>>>>>>> 9  vmjc           0x0869d5b8
>>>>>>> j3::JavaAOTCompiler::JavaAOTCompiler(std::string const&) + 1144
>>>>>>> 10 vmjc           0x08652435 main + 216
>>>>>>> 11 libc.so.6      0xb7614cc6 __libc_start_main + 230
>>>>>>> 12 vmjc           0x08651cc1
>>>>>>> make[2]: *** [all] Segmentation fault
>>>>>>>
>>>>>>> Anything that I am overlooking.
>>>>>>> Thanks,
>>>>>>> Akshat
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Akshat
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Aug 24, 2011 at 1:36 AM, Duncan Sands <baldrick at free.fr>wrote:
>>>>>>>
>>>>>>>> Hi Akshat,
>>>>>>>>
>>>>>>>> > Going ahead, the llvm-ld seems to segfault (build on Linux with
>>>>>>>> llvm-ld v3.0svn
>>>>>>>> > build):
>>>>>>>>
>>>>>>>> try updating to latest LLVM from svn - this was fixed a day or two
>>>>>>>> ago.
>>>>>>>>
>>>>>>>> Ciao, Duncan.
>>>>>>>>
>>>>>>>> >
>>>>>>>> > make[2]: Entering directory `/root/code/vmkit/mmtk/mmtk-j3'
>>>>>>>> > llvm[2]: Building Debug+Asserts Bytecode Module MMTKRuntime.bc
>>>>>>>> > 0  llvm-ld   0x0884c66e
>>>>>>>> > 1  llvm-ld   0x0884c3fb
>>>>>>>> > 2            0xb7891400 __kernel_sigreturn + 0
>>>>>>>> > 3  llvm-ld   0x083be9e9 llvm::isa_impl<llvm::Constant,
>>>>>>>> > llvm::Value>::doit(llvm::Value const&) + 29
>>>>>>>> > 4  llvm-ld   0x083ccba4 llvm::isa_impl_cl<llvm::Constant,
>>>>>>>> > llvm::Value*>::doit(llvm::Value const*) + 29
>>>>>>>> > 5  llvm-ld   0x083cb81c llvm::isa_impl_wrap<llvm::Constant,
>>>>>>>> llvm::Value*,
>>>>>>>> > llvm::Value*>::doit(llvm::Value* const&) + 31
>>>>>>>> > 6  llvm-ld   0x083c94bf llvm::isa_impl_wrap<llvm::Constant,
>>>>>>>> llvm::Use,
>>>>>>>> > llvm::Value*>::doit(llvm::Use const&) + 43
>>>>>>>> > 7  llvm-ld   0x083c5fe3 bool llvm::isa<llvm::Constant,
>>>>>>>> llvm::Use>(llvm::Use
>>>>>>>> > const&) + 29
>>>>>>>> > 8  llvm-ld   0x083c1cc6 llvm::cast_retty<llvm::Constant,
>>>>>>>> llvm::Use>::ret_type
>>>>>>>> > llvm::cast<llvm::Constant, llvm::Use>(llvm::Use const&) + 29
>>>>>>>> > 9  llvm-ld   0x083c04de llvm::GlobalAlias::getOperand(unsigned
>>>>>>>> int) const + 70
>>>>>>>> > 10 llvm-ld   0x083de0d1 llvm::GlobalAlias::getAliasee() + 37
>>>>>>>> > 11 llvm-ld   0x083dc3c6
>>>>>>>> > 12 llvm-ld   0x083dcdb5
>>>>>>>> > 13 llvm-ld   0x083dce74 llvm::Linker::LinkModules(llvm::Module*,
>>>>>>>> llvm::Module*,
>>>>>>>> > std::string*) + 64
>>>>>>>> > 14 llvm-ld   0x083d949a llvm::Linker::LinkInModule(llvm::Module*,
>>>>>>>> std::string*) + 46
>>>>>>>> > 15 llvm-ld   0x083d926c llvm::Linker::LinkInFile(llvm::sys::Path
>>>>>>>> const&, bool&)
>>>>>>>> > + 1524
>>>>>>>> > 16 llvm-ld   0x083d943d
>>>>>>>> llvm::Linker::LinkInFiles(std::vector<llvm::sys::Path,
>>>>>>>> > std::allocator<llvm::sys::Path> > const&) + 67
>>>>>>>> > 17 llvm-ld   0x083ad740 main + 1329
>>>>>>>> > 18 libc.so.6 0xb75d3cc6 __libc_start_main + 230
>>>>>>>> > 19 llvm-ld   0x083a67c1
>>>>>>>> > Stack dump:
>>>>>>>> > 0.    Program arguments: /root/code/llvm/Debug+Asserts/bin/llvm-ld
>>>>>>>> -r -o
>>>>>>>> > /root/code/vmkit/Debug+Asserts/lib/MMTKRuntime.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/ActivePlan.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Assert.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Collection.bc
>>>>>>>> >
>>>>>>>> /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/FinalizableProcessor.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Lock.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/MMTk_Events.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Memory.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/ObjectModel.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/ReferenceProcessor.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/RuntimeHelpers.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Scanning.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Selected.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Statistics.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/Strings.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/SynchronizedCounter.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/TraceInterface.bc
>>>>>>>> > /root/code/vmkit/mmtk/mmtk-j3/Debug+Asserts/VM.bc
>>>>>>>> > make[2]: *** [/root/code/vmkit/Debug+Asserts/lib/MMTKRuntime.bc]
>>>>>>>> Segmentation fault
>>>>>>>> > make[2]: Leaving directory `/root/code/vmkit/mmtk/mmtk-j3'
>>>>>>>> > make[1]: *** [all] Error 1
>>>>>>>> > make[1]: Leaving directory `/root/code/vmkit/mmtk'
>>>>>>>> > make: *** [all] Error 1
>>>>>>>> >
>>>>>>>> > Any pointers on how I can debug this?
>>>>>>>> >
>>>>>>>> > Thanks,
>>>>>>>> > Akshat
>>>>>>>> >
>>>>>>>> > On Thu, Aug 18, 2011 at 1:45 AM, Nicolas Geoffray <
>>>>>>>> nicolas.geoffray at gmail.com
>>>>>>>> > <mailto:nicolas.geoffray at gmail.com>> wrote:
>>>>>>>> >
>>>>>>>> >     Hi Akshat,
>>>>>>>> >
>>>>>>>> >     Did you compile LLVM before compiling VMKit? libLLVMLinker.so
>>>>>>>> is a shared
>>>>>>>> >     library from LLVM.
>>>>>>>> >
>>>>>>>> >     Cheers,
>>>>>>>> >     Nicolas
>>>>>>>> >
>>>>>>>> >     On Thu, Aug 18, 2011 at 3:42 AM, Akshat Gupta <
>>>>>>>> g.akshat at gmail.com
>>>>>>>> >     <mailto:g.akshat at gmail.com>> wrote:
>>>>>>>> >
>>>>>>>> >         Hi,
>>>>>>>> >         I was just curious if VMKit development is still going on.
>>>>>>>> >
>>>>>>>> >         Also while building VMKit I am getting error at link
>>>>>>>> stage:
>>>>>>>> >
>>>>>>>> >         make[1]: Entering directory `/code/vmkit/tools/vmjc'
>>>>>>>> >         llvm[1]: Linking Debug+Asserts executable vmjc
>>>>>>>> >
>>>>>>>> /usr/lib/gcc/i686-pc-linux-gnu/4.4.5/../../../../i686-pc-linux-gnu/bin/ld:
>>>>>>>> >         cannot find -lLLVMLinker
>>>>>>>> >         collect2: ld returned 1 exit status
>>>>>>>> >
>>>>>>>> >         I have installed but I am not able to use the llvm linker
>>>>>>>> to link this
>>>>>>>> >         application.
>>>>>>>> >         I tried using LD=llvm-ld  during make, but it does not
>>>>>>>> help.
>>>>>>>> >
>>>>>>>> >         Any idea on how this can be solved?
>>>>>>>> >
>>>>>>>> >         Thanks,
>>>>>>>> >         Akshat
>>>>>>>> >         _______________________________________________
>>>>>>>> >         LLVM Developers mailing list
>>>>>>>> >         LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu>
>>>>>>>> http://llvm.cs.uiuc.edu
>>>>>>>> >         http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > --
>>>>>>>> > Akshat Gupta
>>>>>>>> >
>>>>>>>> >
>>>>>>>> > _______________________________________________
>>>>>>>> > LLVM Developers mailing list
>>>>>>>> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>>>>>> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> LLVM Developers mailing list
>>>>>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Akshat Gupta
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> LLVM Developers mailing list
>>>>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Akshat Gupta
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Akshat Gupta
>>>
>>
>>
>
>
> --
> Akshat Gupta
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110827/ba1ae8e1/attachment.html>


More information about the llvm-dev mailing list