Building the boot image with the opt compiler and Harmony fails

Description

Building the boot image with the opt compiler and the Harmony class library fails as a native method from Harmony is attempted to be invoked.

[echo] Compiler failure during compilation of < BootstrapCL, Ljava/nio/JikesRVMSupport; >.newDirectByteBuffer (Lorg/vmmagic/unboxed/Address;J)Ljava/nio/ByteBuffer;
[echo] java.lang.UnsatisfiedLinkError: org.apache.harmony.luni.platform.OSMemory.getPointerSizeImpl()I
[echo] at org.apache.harmony.luni.platform.OSMemory.getPointerSizeImpl(Native Method)
[echo] at org.apache.harmony.luni.platform.OSMemory.<clinit>(OSMemory.java:59)
[echo] at org.apache.harmony.luni.platform.OSComponentFactory.getMemorySystem(OSComponentFactory.java:39)
[echo] at org.apache.harmony.luni.platform.Platform.<clinit>(Platform.java:32)
[echo] at org.apache.harmony.luni.platform.PlatformAddress.<clinit>(PlatformAddress.java:30)
[echo] at java.lang.Class.forName0(Native Method)
[echo] at java.lang.Class.forName(Class.java:169)
[echo] at org.jikesrvm.compilers.opt.StaticFieldReader.getJDKField(StaticFieldReader.java:386)
[echo] at org.jikesrvm.compilers.opt.StaticFieldReader.getObjectStaticFieldValue(StaticFieldReader.java:313)
[echo] at org.jikesrvm.compilers.opt.StaticFieldReader.getStaticFieldValue(StaticFieldReader.java:185)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateFrom(BC2IR.java:1607)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateHIR(BC2IR.java:379)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateHIR(BC2IR.java:177)
[echo] at org.jikesrvm.compilers.opt.inlining.Inliner.execute(Inliner.java:449)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.maybeInlineMethod(BC2IR.java:4629)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateFrom(BC2IR.java:1975)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateHIR(BC2IR.java:364)
[echo] at org.jikesrvm.compilers.opt.bc2ir.BC2IR.generateHIR(BC2IR.java:177)
[echo] at org.jikesrvm.compilers.opt.bc2ir.ConvertBCtoHIR.perform(ConvertBCtoHIR.java:36)
[echo] at org.jikesrvm.compilers.opt.driver.CompilerPhase.performPhase(CompilerPhase.java:205)
[echo] at org.jikesrvm.compilers.opt.driver.OptimizationPlanAtomicElement.perform(OptimizationPlanAtomicElement.java:89)
[echo] at org.jikesrvm.compilers.opt.driver.OptimizationPlanCompositeElement.perform(OptimizationPlanCompositeElement.java:143)
[echo] at org.jikesrvm.compilers.opt.driver.CompilationPlan.execute(CompilationPlan.java:131)
[echo] at org.jikesrvm.compilers.opt.driver.OptimizingCompiler.compile(OptimizingCompiler.java:224)
[echo] at org.jikesrvm.compilers.opt.driver.OptimizingBootImageCompiler.compileMethod(OptimizingBootImageCompiler.java:119)
[echo] at org.jikesrvm.compilers.common.BootImageCompiler.compile(BootImageCompiler.java:62)
[echo] at org.jikesrvm.compilers.common.BootImageCompiler.compile(BootImageCompiler.java:66)
[echo] at org.jikesrvm.classloader.NormalMethod.genCode(NormalMethod.java:173)
[echo] at org.jikesrvm.classloader.RVMMethod.compile(RVMMethod.java:701)
[echo] at org.jikesrvm.classloader.RVMMethod.getCurrentEntryCodeArray(RVMMethod.java:685)
[echo] at org.jikesrvm.classloader.RVMClass.instantiate(RVMClass.java:2013)
[echo] at org.jikesrvm.tools.bootImageWriter.BootImageWorker.run(BootImageWorker.java:44)
[echo] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
[echo] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
[echo] at java.lang.Thread.run(Thread.java:619)

Environment

None

Status

Assignee

Ian Rogers

Reporter

Ian Rogers

Labels

None

Components

Fix versions

Priority

Medium
Configure