[LLVMdev] VMKIT: Assertion at build
Foivos S. Zakkak
foivos at zakkak.net
Sun Jun 10 13:09:10 PDT 2012
Hi Nicolas,
I finally found the root of the problem. Build was unable to locate
llvm-build because it was looking for it in
path/to/vmkit_src/utils/llvm-build while it was located in
path/to/llvm_src/utils/llvm-build
Actually llvm-build's path is defined by the
path/to/llvm_src/Makefile.rules and looks like this
LLVMBuildTool := $(PROJ_SRC_ROOT)/utils/llvm-build/llvm-build
however in the case of vmkit it should be
LLVMBuildTool := $(LLVM_SRC_ROOT)/utils/llvm-build/llvm-build
i Also noticed that in the vmkit's generated (by configure)
Makefile.config there are defined PROJ_SRC_ROOT and VMKIT_SRC_ROOT as
well as PROJ_OBJ_ROOT and VMKIT_OBJ_ROOT. What should be the difference
between PROJ_* and VMKIT_* paths? In my case they where equal (so what's
the need for 2 different variables?)
I hope the first section will help you to create a patch
(i edited my Makefile.rules just before configuring vmkit to make it work)
Thank you
Foivos
On 08/06/12 00:32, Foivos S. Zakkak wrote:
> Hi Nicolas,
>
> it looks like there are missing things
>
> $ more lib/j3/LLVMRuntime/LLVMRuntime.inc
> // Generated by llvm2cpp - DO NOT MODIFY!
>
>
> Module* makeLLVMModuleContents(Module *mod) {
>
> mod->setModuleIdentifier("<stdin>");
>
> // Type Definitions
>
> // Function Declarations
>
> // Global Variable Declarations
>
>
> // Constant Definitions
>
> // Global Variable Definitions
>
> // Function Definitions
>
> return mod;
>
> }
>
> Foivos
>
> On 07/06/12 23:59, Nicolas Geoffray wrote:
>> Hi Fovios,
>>
>> Do you have a ./lib/j3/LLVMRuntime/LLVMRuntime.inc file being generated?
>> What does it contain?
>>
>> Nicolas
>>
>> On Thu, Jun 7, 2012 at 5:47 PM, Foivos S. Zakkak <foivos at zakkak.net
>> <mailto:foivos at zakkak.net>> wrote:
>>
>> Still the same.
>>
>> Is there any chance that the placement of my directories are causing
>> this?
>>
>> Also the exact command that fails is
>>
>> /home1/public/zakkak/java/__vmkit/Release+Asserts/bin/vmjc
>> -std-compile-opts
>>
>> -load=/home1/public/zakkak/__java/vmkit/Release+Asserts/__lib/MMTKRuntime.so
>>
>> -load=/home1/public/zakkak/__java/vmkit/Release+Asserts/__lib/MMTKMagic.so
>> -LowerMagic
>> /home1/public/zakkak/java/__vmkit/mmtk/java/mmtk-vmkit.jar
>> -disable-exceptions -disable-cooperativegc
>>
>> -with-clinit=org/mmtk/vm/VM,__org/mmtk/utility/*,org/mmtk/__policy/*,org/j3/config/*
>> -Dmmtk.hostjvm=org.j3.mmtk.__Factory -o mmtk-vmkit.bc
>>
>> -Dmmtk.properties=/home1/__public/zakkak/java/vmkit/../..__/llvm/vmkit/mmtk/java/vmkit.__properties
>> -disable-stubs -assume-compiled
>>
>> Thank you for your time
>> Foivos
>>
>>
>> On 07/06/12 18:12, Nicolas Geoffray wrote:
>>
>> On Thu, Jun 7, 2012 at 4:27 PM, Foivos S. Zakkak
>> <foivos at zakkak.net <mailto:foivos at zakkak.net>
>> <mailto:foivos at zakkak.net <mailto:foivos at zakkak.net>>> wrote:
>>
>> Hi Nicolas,
>>
>> I thought MMTk is written in java and it is compiled by
>> javac.
>>
>>
>> It is compiled by javac to produce Java bytecode. Then vmkit
>> runs the
>> initialization code of MMTk (through the JIT) and generates the
>> binary
>> code through llvm.
>>
>>
>> retried a clean build with JIT enabled
>>
>> llvm configuration
>> ../../llvm/configure --enable-doxygen --enable-optimized
>> --enable-jit
>>
>>
>> vmkit configuration
>> ../../llvm/vmkit/configure
>> --with-llvmsrc=/home1/public/__zakkak/llvm/
>> --with-llvmobj=/home1/public/__zakkak/java/llvm/
>>
>>
>> --with-gnu-classpath-glibj=/__home1/public/zakkak/java/__classpath-0.97.2/lib/glibj.__zip--with-gnu-classpath-libs=/__home1/public/zakkak/java/__classpath-0.97.2/lib/
>>
>> and the problem persists
>>
>>
>> Could you do make ENABLE_OPTIMIZED=1 clean and then make
>> ENABLE_OPTIMIZED=1 ? Some files may have not been generated
>> because of
>> the missing JIT and that screwed up the Makefile.
>>
>> Nicolas
>>
>>
>>
>> Foivos
>>
>>
>> On 07/06/12 16:54, Nicolas Geoffray wrote:
>>
>> Hi Fovios,
>>
>> On Thu, Jun 7, 2012 at 3:51 PM, Foivos <fivosz at gmail.com
>> <mailto:fivosz at gmail.com>
>> <mailto:fivosz at gmail.com <mailto:fivosz at gmail.com>>> wrote:
>>
>> Hi,
>>
>> My machine is running Ubuntu server 64-bit
>> And the revision from the trunk is 158095 for llvm,
>> clang and
>> vmkit
>>
>> llvm configuration
>> ../../llvm/configure --enable-doxygen
>> --enable-optimized
>> --disable-jit
>>
>>
>> Why do you disable the JIT? VMKit needs it to compile
>> MMTk.
>>
>> Cheers,
>> Nicolas
>>
>> vmkit configuration
>> ../../llvm/vmkit/configure
>> --with-llvmsrc=/home1/public/__zakkak/llvm/
>> --with-llvmobj=/home1/public/__zakkak/java/llvm/
>>
>>
>> --with-gnu-classpath-glibj=/__home1/public/zakkak/java/__classpath-0.97.2/lib/glibj.__zip--with-gnu-classpath-libs=/__home1/public/zakkak/java/__classpath-0.97.2/lib/
>>
>> Thank you
>> Foivos
>>
>>
>> On 06/06/12 22:35, Nicolas Geoffray wrote:
>>
>> Hi Fivos,
>>
>> I cannot reproduce on my machine (ubuntu 64bit,
>> clang/llvm/vmkit on svn trunk). What's your
>> configuration?
>>
>> Cheers,
>> Nicolas
>>
>> On Tue, Jun 5, 2012 at 3:08 PM, Fivos
>> <fivosz at gmail.com <mailto:fivosz at gmail.com>
>> <mailto:fivosz at gmail.com <mailto:fivosz at gmail.com>>> wrote:
>>
>> Hello,
>>
>> after completing the build i get
>>
>> ...
>> BUILD SUCCESSFUL
>> Total time: 5 seconds
>> llvm[2]: Building Release+Asserts
>> mmtk-vmkit.jar all
>> vmjc:
>> /home1/public/zakkak/llvm/lib/__VMCore/Type.cpp:747:
>> static
>> llvm::PointerType
>> *llvm::PointerType::get(llvm::__Type *,
>> unsigned int):
>> Assertion `EltTy && "Can't get a pointer to
>> <null>
>> type!"' failed.
>> 0 vmjc 0x0000000000d24e1f
>> 1 vmjc 0x0000000000d25334
>> 2 libpthread.so.0 0x00002b398f36b8f0
>> 3 libc.so.6 0x00002b3990178a75
>> gsignal + 53
>> 4 libc.so.6 0x00002b399017c5c0 abort
>> + 384
>> 5 libc.so.6 0x00002b3990171941
>> __assert_fail + 241
>> 6 vmjc 0x0000000000cd7fde
>> llvm::PointerType::get(llvm::__Type*,
>> unsigned int) + 478
>> 7 vmjc 0x0000000000564317
>> j3::J3Intrinsics::init(llvm::__Module*) +
>> 199
>> 8 vmjc 0x000000000054f86d
>>
>> j3::JavaAOTCompiler::__JavaAOTCompiler(std::string
>> const&)
>> + 1597
>> 9 vmjc 0x0000000000502b8d
>> main + 141
>> 10 libc.so.6 0x00002b3990163c4d
>> __libc_start_main + 253
>> 11 vmjc 0x0000000000502a39
>> Aborted
>> make[2]: *** [all] Error 134
>> make[2]: Leaving directory
>>
>> `/home1/public/zakkak/java/__vmkit_build/mmtk/java'
>> make[1]: *** [all] Error 1
>> make[1]: Leaving directory
>>
>> `/home1/public/zakkak/java/__vmkit_build/mmtk'
>> make: *** [all] Error 1
>>
>> any ideas, how to fix this?
>>
>> Thank you
>> Foivos
>>
>> _________________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu>
>> <mailto:LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu>>
>> http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/__mailman/listinfo/llvmdev
>> <http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev>
>>
>>
>>
>>
>>
>>
>>
>>
>
More information about the llvm-dev
mailing list