[aarch64-port-dev ] RFD: AOT for AArch64 (original) (raw)

Yang Zhang yang.zhang at linaro.org
Tue Apr 3 02:44:37 UTC 2018


Hi Andrew

Thanks for your great work on aot. I'm also testing your patches on jdk and graal. There are many discussions on your patches. I'm not sure if I miss some updates in the comments. Could you share your latest patches(hs and graal) and jtreg command so that I can test them in my environment again?

Regards Yang

On 29 March 2018 at 23:46, Andrew Haley <aph at redhat.com> wrote:

There's a problem with assertions being fired which is apparently due to a recent Graal bug. Try running without assertions:

diff -r ee513596f3ee test/hotspot/jtreg/compiler/aot/AotCompiler.java --- a/test/hotspot/jtreg/compiler/aot/AotCompiler.java Tue Jan 30 16:41:40 2018 +0100 +++ b/test/hotspot/jtreg/compiler/aot/AotCompiler.java Thu Mar 29 16:37:21 2018 +0100 @@ -114,8 +114,8 @@ args.add(linker); } // Execute with asserts - args.add("-J-ea"); - args.add("-J-esa"); + // args.add("-J-ea"); + // args.add("-J-esa"); return launchJaotc(args, extraopts); } With that change, I get two failures. If you're seeing a lot more failures than that, please look t your test configuration. Passed: compiler/aot/calls/fromAot/AotInvokeDynamic2AotTest.java Passed: compiler/aot/calls/fromAot/AotInvokeDynamic2CompiledTest.java Passed: compiler/aot/calls/fromAot/AotInvokeDynamic2NativeTest.java Passed: compiler/aot/calls/fromAot/AotInvokeDynamic2InterpretedTest.java Passed: compiler/aot/calls/fromAot/AotInvokeInterface2InterpretedTest.java Passed: compiler/aot/calls/fromAot/AotInvokeInterface2AotTest.java Passed: compiler/aot/calls/fromAot/AotInvokeInterface2CompiledTest.java Passed: compiler/aot/calls/fromAot/AotInvokeInterface2NativeTest.java Passed: compiler/aot/calls/fromAot/AotInvokeSpecial2AotTest.java Passed: compiler/aot/calls/fromAot/AotInvokeSpecial2NativeTest.java Passed: compiler/aot/calls/fromAot/AotInvokeSpecial2CompiledTest.java Passed: compiler/aot/calls/fromAot/AotInvokeSpecial2InterpretedTest.java Passed: compiler/aot/calls/fromAot/AotInvokeStatic2AotTest.java Passed: compiler/aot/calls/fromAot/AotInvokeStatic2InterpretedTest.java Passed: compiler/aot/calls/fromAot/AotInvokeStatic2NativeTest.java Passed: compiler/aot/calls/fromAot/AotInvokeStatic2CompiledTest.java Passed: compiler/aot/calls/fromAot/AotInvokeVirtual2AotTest.java Passed: compiler/aot/calls/fromAot/AotInvokeVirtual2CompiledTest.java Passed: compiler/aot/calls/fromAot/AotInvokeVirtual2InterpretedTest.java Passed: compiler/aot/calls/fromAot/AotInvokeVirtual2NativeTest.java Passed: compiler/aot/calls/fromCompiled/CompiledInvokeDynamic2AotTest.java Passed: compiler/aot/calls/fromCompiled/CompiledInvokeInterface2AotTest.java Passed: compiler/aot/calls/fromCompiled/CompiledInvokeSpecial2AotTest.java Passed: compiler/aot/calls/fromCompiled/CompiledInvokeStatic2AotTest.java Passed: compiler/aot/calls/fromInterpreted/InterpretedInvokeInterface2AotTest.java Passed: compiler/aot/calls/fromInterpreted/InterpretedInvokeSpecial2AotTest.java Passed: compiler/aot/calls/fromCompiled/CompiledInvokeVirtual2AotTest.java Passed: compiler/aot/calls/fromInterpreted/InterpretedInvokeDynamic2AotTest.java Passed: compiler/aot/calls/fromNative/NativeInvokeStatic2AotTest.java Passed: compiler/aot/calls/fromInterpreted/InterpretedInvokeStatic2AotTest.java Passed: compiler/aot/calls/fromInterpreted/InterpretedInvokeVirtual2AotTest.java Passed: compiler/aot/calls/fromNative/NativeInvokeSpecial2AotTest.java Passed: compiler/aot/cli/jaotc/ClasspathOptionUnknownClassTest.java Passed: compiler/aot/cli/jaotc/CompileClassTest.java Passed: compiler/aot/calls/fromNative/NativeInvokeVirtual2AotTest.java Passed: compiler/aot/cli/jaotc/CompileClassWithDebugTest.java Passed: compiler/aot/cli/jaotc/CompileDirectoryTest.java Passed: compiler/aot/cli/jaotc/CompileModuleTest.java Passed: compiler/aot/cli/jaotc/CompileJarTest.java Passed: compiler/aot/cli/jaotc/ListOptionNotExistingTest.java Passed: compiler/aot/cli/jaotc/ListOptionTest.java Passed: compiler/aot/cli/jaotc/ListOptionWrongFileTest.java Passed: compiler/aot/cli/DisabledAOTWithLibraryTest.java Passed: compiler/aot/cli/IncorrectAOTLibraryTest.java Passed: compiler/aot/cli/NonExistingAOTLibraryTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/directory/DirectorySourceProviderTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/jar/JarSourceProviderTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/module/ModuleSourceProviderTest.java Passed: compiler/aot/cli/SingleAOTLibraryTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/ClassSearchTest.java Passed: compiler/aot/cli/MultipleAOTLibraryTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/ClassSourceTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/collect/SearchPathTest.java Passed: compiler/aot/jdk.tools.jaotc.test/src/jdk/tools/jaotc/test/NativeOrderOutputStreamTest.java Passed: compiler/aot/verification/vmflags/NotTrackedFlagTest.java Passed: compiler/aot/cli/SingleAOTOptionTest.java Passed: compiler/aot/verification/vmflags/TrackedFlagTest.java Passed: compiler/aot/verification/ClassAndLibraryNotMatchTest.java Passed: compiler/aot/SharedUsageTest.java TEST RESULT: Failed. Execution failed: `main' threw exception: java.lang.RuntimeException: Method is unexpectedly compiled after deoptimization: expected false, was true -------------------------------------------------- Passed: compiler/aot/RecompilationTest.java Test results: passed: 60; failed: 1 Report written to /local/jdk-hs/build/linux-aarch64-normal-server-release/test-results/jtregtesthotspotjtregcompileraot/html/report.html Results written to /local/jdk-hs/build/linux-aarch64-normal-server-release/test-support/jtregtesthotspotjtregcompileraot Error: Some tests failed or other problems occurred. Finished running test 'jtreg:test/hotspot/jtreg/compiler/aot' Test report is stored in build/linux-aarch64-normal-server-release/test-results/jtregtesthotspotjtregcompileraot ============================== Test summary ============================== TEST TOTAL PASS FAIL ERROR

jtreg:test/hotspot/jtreg/compiler/aot 61 60 1 0 << ============================== TEST FAILURE * jtreg:test/hotspot/jtreg/compiler/jvmci Running test 'jtreg:test/hotspot/jtreg/compiler/jvmci' Passed: compiler/jvmci/compilerToVM/AsResolvedJavaMethodTest.java Passed: compiler/jvmci/compilerToVM/CollectCountersTest.java Passed: compiler/jvmci/compilerToVM/DoNotInlineOrCompileTest.java -------------------------------------------------- ACTION: main -- Failed. Execution failed: `main' threw exception: java.lang.RuntimeException: CompileCodeTestCase{executable=public default int compiler.jvmci.compilerToVM.CompileCodeTestCase$Interface.defaultMethod(java.lang.Object), bci=-1} : 2nd invocation returned different value: expected -------------------------------------------------- Passed: compiler/jvmci/compilerToVM/AllocateCompileIdTest.java Passed: compiler/jvmci/compilerToVM/ExecuteInstalledCodeTest.java Passed: compiler/jvmci/compilerToVM/FindUniqueConcreteMethodTest.java Passed: compiler/jvmci/compilerToVM/DebugOutputTest.java Passed: compiler/jvmci/compilerToVM/GetBytecodeTest.java Passed: compiler/jvmci/compilerToVM/GetClassInitializerTest.java Passed: compiler/jvmci/compilerToVM/GetConstantPoolTest.java Passed: compiler/jvmci/compilerToVM/GetExceptionTableTest.java Passed: compiler/jvmci/compilerToVM/GetImplementorTest.java Passed: compiler/jvmci/compilerToVM/GetLineNumberTableTest.java Passed: compiler/jvmci/compilerToVM/GetFlagValueTest.java Passed: compiler/jvmci/compilerToVM/GetMaxCallTargetOffsetTest.java Passed: compiler/jvmci/compilerToVM/GetLocalVariableTableTest.java Passed: compiler/jvmci/compilerToVM/GetNextStackFrameTest.java Passed: compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java Passed: compiler/jvmci/compilerToVM/GetStackTraceElementTest.java Passed: compiler/jvmci/compilerToVM/GetVtableIndexForInterfaceTest.java Passed: compiler/jvmci/compilerToVM/GetSymbolTest.java Passed: compiler/jvmci/compilerToVM/HasFinalizableSubclassTest.java Passed: compiler/jvmci/compilerToVM/HasNeverInlineDirectiveTest.java Passed: compiler/jvmci/compilerToVM/IsCompilableTest.java Passed: compiler/jvmci/compilerToVM/HasCompiledCodeForOSRTest.java Passed: compiler/jvmci/compilerToVM/IsMatureTest.java Passed: compiler/jvmci/compilerToVM/JVMRegisterJVMCINatives.java Passed: compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java Passed: compiler/jvmci/compilerToVM/LookupKlassInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupKlassRefIndexInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupMethodInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupNameAndTypeRefIndexInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupNameInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupSignatureInPoolTest.java Passed: compiler/jvmci/compilerToVM/LookupTypeTest.java Passed: compiler/jvmci/compilerToVM/ReadConfigurationTest.java Passed: compiler/jvmci/compilerToVM/MethodIsIgnoredBySecurityStackWalkTest.java Passed: compiler/jvmci/compilerToVM/ResolveConstantInPoolTest.java Passed: compiler/jvmci/compilerToVM/ResolveFieldInPoolTest.java Passed: compiler/jvmci/compilerToVM/ResolveMethodTest.java Passed: compiler/jvmci/compilerToVM/ResolvePossiblyCachedConstantInPoolTest.java Passed: compiler/jvmci/compilerToVM/ReprofileTest.java Passed: compiler/jvmci/compilerToVM/ResolveTypeInPoolTest.java Passed: compiler/jvmci/compilerToVM/ShouldDebugNonSafepointsTest.java Passed: compiler/jvmci/compilerToVM/ShouldInlineMethodTest.java Passed: compiler/jvmci/errors/TestInvalidCompilationResult.java Passed: compiler/jvmci/errors/TestInvalidDebugInfo.java Passed: compiler/jvmci/errors/TestInvalidOopMap.java Passed: compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java Passed: compiler/jvmci/events/JvmciShutdownEventTest.java Passed: compiler/jvmci/events/JvmciNotifyInstallEventTest.java Passed: compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/HotSpotConstantReflectionProviderTest.java Passed: compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MethodHandleAccessProviderTest.java Passed: compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MemoryAccessProviderTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveConcreteMethodTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ConstantTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveMethodTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/RedefineClassTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestConstantReflectionProvider.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaMethod.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaType.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaField.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestMetaAccessProvider.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaField.java Passed: compiler/jvmci/meta/StableFieldTest.java Passed: compiler/jvmci/compilerToVM/MaterializeVirtualObjectTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaMethod.java Passed: compiler/jvmci/TestJVMCIPrintProperties.java Passed: compiler/jvmci/JVMGetJVMCIRuntimeTest.java Passed: compiler/jvmci/TestValidateModules.java Passed: compiler/jvmci/SecurityRestrictionsTest.java Passed: compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java Test results: passed: 72; failed: 1 Report written to /local/jdk-hs/build/linux-aarch64-normal-server-release/test-results/jtregtesthotspotjtregcompilerjvmci/html/report.html Results written to /local/jdk-hs/build/linux-aarch64-normal-server-release/test-support/jtregtesthotspotjtregcompilerjvmci Error: Some tests failed or other problems occurred. Finished running test 'jtreg:test/hotspot/jtreg/compiler/jvmci' Test report is stored in build/linux-aarch64-normal-server-release/test-results/jtregtesthotspotjtregcompilerjvmci ============================== Test summary ============================== TEST TOTAL PASS FAIL ERROR jtreg:test/hotspot/jtreg/compiler/jvmci 73 72 1 0 << ============================== TEST FAILURE



More information about the hotspot-dev mailing list