[aarch64-port-dev ] RFD: AOT for AArch64

Dmitry Chuyko dmitry.chuyko at bell-sw.com
Thu Mar 29 17:49:02 UTC 2018


On 03/29/2018 06:36 PM, Andrew Haley wrote:
> ....................
> That's what you get if you don't pick up the external Graal build.
Almost that. Some changesets were missing.
>
>> also there are many
>>
>> org.graalvm.compiler.graph.GraalGraphError:
>> org.graalvm.compiler.debug.GraalError: Emitting code to load an object
>> address is not currently supported on aarch64
> I can't replicate that.
>
> ................
It's gone now. I see almost all methods in java.base are aot'ed, 
excluding the same ones as for x86. Non-tiered .so is created but for 
--compile-for-tiered there's a recurring linkage error:

Exception in thread "main" java.lang.InternalError: ava.base-coop2: In 
function `java.io.CharArrayWriter.toCharArray()[C':(.text+0x6e030c): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function 
`java.io.CharArrayWriter.append(C)Ljava/io/CharArrayWriter;':(.text+0x6e09fc): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function `java.io.CharArrayWriter.write(I)V':(.text+0x6e132c): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function 
`java.io.CharArrayWriter.append(Ljava/lang/CharSequence;)Ljava/io/CharArrayWriter;':(.text+0x6e1d90): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function `java.io.CharArrayWriter.write([CII)V':(.text+0x6e2d4c): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function 
`java.io.CharArrayWriter.write(Ljava/lang/String;II)V':(.text+0x6e3da8): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`plt._aot_stub_routines_arrayof_jshort_disjoint_arraycopy'java.base-coop2: 
In function 
`java.lang.invoke.VarHandleByteArrayAsInts$ByteBufferHandle.indexRO(Ljava/nio/ByteBuffer;I)I':(.text+0x38ac): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`Stub<monitorenter(Object,Word)void>'java.base-coop2: In function 
`java.lang.invoke.VarHandleByteArrayAsInts$ByteBufferHandle.indexRO(Ljava/nio/ByteBuffer;I)I':(.text+0x38c4): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`Stub<monitorenter(Object,Word)void>'java.base-coop2: In function 
`java.lang.invoke.VarHandleByteArrayAsInts$ByteBufferHandle.set(Ljava/lang/invoke/VarHandleByteArrayAsInts$ByteBufferHandle;Ljava/lang/Object;II)V':(.text+0x5d90): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`Stub<monitorenter(Object,Word)void>'java.base-coop2: In function 
`java.lang.invoke.VarHandleByteArrayAsInts$ByteBufferHandle.set(Ljava/lang/invoke/VarHandleByteArrayAsInts$ByteBufferHandle;Ljava/lang/Object;II)V':(.text+0x5dc4): 
relocation truncated to fit: R_AARCH64_CALL26 against 
`Stub<monitorenter(Object,Word)void>'java.base-coop2: In function 
`java.lang.invoke.VarHandleByteArrayAsInts$ByteBufferHandle.setOpaque(Ljava/lang/invoke/VarHandleByteArrayAsInts$ByteBufferHandle;Ljava/lang/Object;II)V':(.text+0x74e8): 
additional relocation overflows omitted from the output
     at jdk.aot/jdk.tools.jaotc.Linker.link(Linker.java:131)
     at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:220)
     at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:101)
     at jdk.aot/jdk.tools.jaotc.Main.main(Main.java:80)

-Dmitry


More information about the aarch64-port-dev mailing list