--- old/src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp 2017-11-30 21:11:56.970082328 +0300 +++ new/src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp 2017-11-30 21:11:56.766077038 +0300 @@ -1664,7 +1664,7 @@ // critical natives they are offset down. GrowableArray arg_order(2 * total_in_args); VMRegPair tmp_vmreg; - tmp_vmreg.set1(r19->as_VMReg()); + tmp_vmreg.set2(r19->as_VMReg()); if (!is_critical_native) { for (int i = total_in_args - 1, c_arg = total_c_args - 1; i >= 0; i--, c_arg--) { --- old/src/hotspot/cpu/aarch64/vm_version_aarch64.cpp 2017-11-30 21:11:57.586098292 +0300 +++ new/src/hotspot/cpu/aarch64/vm_version_aarch64.cpp 2017-11-30 21:11:57.382093005 +0300 @@ -384,4 +384,6 @@ g.generate_getPsrInfo()); get_processor_features(); + + UNSUPPORTED_OPTION(CriticalJNINatives); } --- old/test/hotspot/jtreg/compiler/runtime/criticalnatives/argumentcorruption/CheckLongArgs.java 2017-11-30 21:11:58.082111144 +0300 +++ new/test/hotspot/jtreg/compiler/runtime/criticalnatives/argumentcorruption/CheckLongArgs.java 2017-11-30 21:11:57.878105859 +0300 @@ -24,7 +24,8 @@ /* @test * @bug 8167409 - * @run main/othervm/native -Xcomp compiler.runtime.criticalnatives.argumentcorruption.CheckLongArgs + * @requires os.arch != "aarch64" + * @run main/othervm/native -Xcomp -XX:+CriticalJNINatives compiler.runtime.criticalnatives.argumentcorruption.CheckLongArgs */ package compiler.runtime.criticalnatives.argumentcorruption; public class CheckLongArgs { --- old/test/hotspot/jtreg/compiler/runtime/criticalnatives/lookup/LookUp.java 2017-11-30 21:11:58.554123366 +0300 +++ new/test/hotspot/jtreg/compiler/runtime/criticalnatives/lookup/LookUp.java 2017-11-30 21:11:58.354118187 +0300 @@ -24,7 +24,8 @@ /* @test * @bug 8167408 - * @run main/othervm/native -Xcomp compiler.runtime.criticalnatives.lookup.LookUp + * @requires os.arch != "aarch64" + * @run main/othervm/native -Xcomp -XX:+CriticalJNINatives compiler.runtime.criticalnatives.lookup.LookUp */ package compiler.runtime.criticalnatives.lookup; public class LookUp {