[LLVMdev] Say hi to VMKit: JVM/LLVM, CLI/LLVM

Bill Wendling isanbard at gmail.com
Sun Mar 23 02:19:02 PDT 2008


On Mar 22, 2008, at 3:39 AM, Török Edwin wrote:
>> I haven't tested the build process on many machines, mostly on gentoo
>> linux/x86 and linux/ppc. There are probably some dev libs that VMKit
>> requires and the configure script does not check. A good thing  
>> would be
>> to make the build process cleaner.
>
> The code is not 64-bit clean, attached is a patch to get it compile on
> x86-64 Linux.
> I also fixed some g++-4.2 warnings (const issues, symbol visibility).
>
> The libJnJVM directory builds, but it won't run, I get endless  
> messages
> like this:
> ; ****************************************************** ;
> ;         SIGSEGV occured during a collection            ;
> ;   I'm trying to let the allocator in a coherent stat   ;
> ; but the collector is DEAD and will never collect again ;
> ; ****************************************************** ;
>
> Probably there are more 64-bit issues to solve. Unfortunately I don't
> have time to look into this deeper now.
>
> Best regards,
> --Edwin
> Index: include/mvm/Method.h
> ===================================================================
> --- include/mvm/Method.h	(revision 48684)
> +++ include/mvm/Method.h	(working copy)
> @@ -47,11 +47,11 @@
>
>   inline Method *method(Method *m, size_t nbb) {
>     return
> -      (Method *)gcset((gc **)((unsigned int)this + nbb + 4 -  
> sizeof(Method *)), m);
> +      (Method *)gcset((gc **)((size_t)this + nbb + 4 -  
> sizeof(Method *)), m);

Instead of "size_t" and "ssize_t", it be better to use "uintptr_t" and  
"intptr_t" in all cases, since they were made for these situations.

-bw





More information about the llvm-dev mailing list