aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm
diff options
context:
space:
mode:
author"Andrew Dinn ext:(%22) <adinn@redhat.com>2012-07-10 15:26:12 +0100
committer"Andrew Dinn ext:(%22) <adinn@redhat.com>2012-07-10 15:26:12 +0100
commitdaa2a922da8df8dca6ff8230bbd4757e7c251f2c (patch)
tree444843350362659ea185d53caffb241b46a7921b /src/share/vm
parent60bd673086dc76432c7cd5221a22115296d08428 (diff)
Removed x86 code to create skeleton aarch64 tree
renamed all files in cpu and os_cpu tree with _x86 in their name to employ aarch64 instead modifed all shared files to include aarch64 specific files under new name when TARGET_ARCH_aarch64 is defined -- or alternatively when TARGET_ARCH_MODEL_aarch64 is defined in cases where there was a split between including x86_32 and x86/64 code. modified make system to build aarch64 server target with only the C1 compiler (yet, for execution on the amd64 platform) if SRCARCH=aarch64 is defined on the make command line gutted all x86-specific content from new aarch64 headers/sources, including static init, and inserted call to Undefined() in all method bodies added missing definition for class MacroAssembler anda few other necessary classes to assembler_aarch64.cpp and provided dummy stubs to allow Assembler to be driven. Removed the test code call which was in the template interpreter (from method generate_AARM64_loop()). Added a new file aarch64Test.cpp which provides a test hook method to drive the test method entry() found in assembler_aarch64.cpp and then exit. Arranged for this test hook method to be called under the jvm bootstrap init method at the first call into arch-specific code (in icache_aarch64.cpp). Added a minimal aarch64.ad architecture definition file but this is not really needed since we ar eonly building a C1 runtime.
Diffstat (limited to 'src/share/vm')
-rw-r--r--src/share/vm/adlc/main.cpp5
-rw-r--r--src/share/vm/asm/assembler.cpp3
-rw-r--r--src/share/vm/asm/assembler.hpp2
-rw-r--r--src/share/vm/asm/codeBuffer.hpp3
-rw-r--r--src/share/vm/c1/c1_Defs.hpp6
-rw-r--r--src/share/vm/c1/c1_FpuStackSim.hpp3
-rw-r--r--src/share/vm/c1/c1_FrameMap.cpp3
-rw-r--r--src/share/vm/c1/c1_FrameMap.hpp3
-rw-r--r--src/share/vm/c1/c1_LIR.cpp4
-rw-r--r--src/share/vm/c1/c1_LIR.hpp2
-rw-r--r--src/share/vm/c1/c1_LIRAssembler.cpp4
-rw-r--r--src/share/vm/c1/c1_LIRAssembler.hpp3
-rw-r--r--src/share/vm/c1/c1_LinearScan.cpp21
-rw-r--r--src/share/vm/c1/c1_LinearScan.hpp6
-rw-r--r--src/share/vm/c1/c1_MacroAssembler.hpp6
-rw-r--r--src/share/vm/c1/c1_globals.hpp3
-rw-r--r--src/share/vm/classfile/classFileStream.hpp3
-rw-r--r--src/share/vm/classfile/stackMapTable.hpp3
-rw-r--r--src/share/vm/classfile/verifier.cpp3
-rw-r--r--src/share/vm/code/codeBlob.cpp3
-rw-r--r--src/share/vm/code/compiledIC.hpp3
-rw-r--r--src/share/vm/code/icBuffer.cpp3
-rw-r--r--src/share/vm/code/relocInfo.cpp4
-rw-r--r--src/share/vm/code/relocInfo.hpp4
-rw-r--r--src/share/vm/code/vmreg.hpp9
-rw-r--r--src/share/vm/compiler/disassembler.cpp3
-rw-r--r--src/share/vm/compiler/disassembler.hpp3
-rw-r--r--src/share/vm/interpreter/abstractInterpreter.hpp3
-rw-r--r--src/share/vm/interpreter/bytecode.hpp3
-rw-r--r--src/share/vm/interpreter/bytecodeInterpreter.cpp3
-rw-r--r--src/share/vm/interpreter/bytecodeInterpreter.hpp6
-rw-r--r--src/share/vm/interpreter/bytecodeInterpreter.inline.hpp3
-rw-r--r--src/share/vm/interpreter/bytecodeStream.hpp3
-rw-r--r--src/share/vm/interpreter/bytecodes.cpp3
-rw-r--r--src/share/vm/interpreter/bytecodes.hpp3
-rw-r--r--src/share/vm/interpreter/cppInterpreter.hpp3
-rw-r--r--src/share/vm/interpreter/cppInterpreterGenerator.hpp3
-rw-r--r--src/share/vm/interpreter/interpreter.hpp3
-rw-r--r--src/share/vm/interpreter/interpreterGenerator.hpp3
-rw-r--r--src/share/vm/interpreter/interpreterRuntime.cpp3
-rw-r--r--src/share/vm/interpreter/interpreterRuntime.hpp3
-rw-r--r--src/share/vm/interpreter/templateInterpreter.cpp1
-rw-r--r--src/share/vm/interpreter/templateInterpreter.hpp3
-rw-r--r--src/share/vm/interpreter/templateInterpreterGenerator.hpp5
-rw-r--r--src/share/vm/interpreter/templateTable.hpp6
-rw-r--r--src/share/vm/oops/constantPoolOop.hpp3
-rw-r--r--src/share/vm/oops/oop.inline.hpp3
-rw-r--r--src/share/vm/oops/typeArrayOop.hpp3
-rw-r--r--src/share/vm/opto/buildOopMap.cpp3
-rw-r--r--src/share/vm/opto/c2_globals.hpp3
-rw-r--r--src/share/vm/opto/c2compiler.cpp3
-rw-r--r--src/share/vm/opto/compile.cpp3
-rw-r--r--src/share/vm/opto/gcm.cpp3
-rw-r--r--src/share/vm/opto/lcm.cpp3
-rw-r--r--src/share/vm/opto/locknode.hpp3
-rw-r--r--src/share/vm/opto/machnode.hpp2
-rw-r--r--src/share/vm/opto/matcher.cpp3
-rw-r--r--src/share/vm/opto/output.hpp3
-rw-r--r--src/share/vm/opto/regmask.cpp3
-rw-r--r--src/share/vm/opto/regmask.hpp3
-rw-r--r--src/share/vm/opto/runtime.cpp3
-rw-r--r--src/share/vm/prims/jniCheck.cpp3
-rw-r--r--src/share/vm/prims/jni_md.h4
-rw-r--r--src/share/vm/prims/jvmtiClassFileReconstituter.cpp3
-rw-r--r--src/share/vm/prims/methodHandles.hpp3
-rw-r--r--src/share/vm/runtime/atomic.cpp3
-rw-r--r--src/share/vm/runtime/deoptimization.cpp6
-rw-r--r--src/share/vm/runtime/dtraceJSDT.hpp3
-rw-r--r--src/share/vm/runtime/frame.cpp3
-rw-r--r--src/share/vm/runtime/frame.hpp6
-rw-r--r--src/share/vm/runtime/frame.inline.hpp6
-rw-r--r--src/share/vm/runtime/globals.hpp12
-rw-r--r--src/share/vm/runtime/icache.hpp3
-rw-r--r--src/share/vm/runtime/java.cpp3
-rw-r--r--src/share/vm/runtime/javaCalls.hpp3
-rw-r--r--src/share/vm/runtime/javaFrameAnchor.hpp6
-rw-r--r--src/share/vm/runtime/os.hpp3
-rw-r--r--src/share/vm/runtime/registerMap.hpp6
-rw-r--r--src/share/vm/runtime/relocator.hpp3
-rw-r--r--src/share/vm/runtime/safepoint.cpp4
-rw-r--r--src/share/vm/runtime/sharedRuntime.cpp4
-rw-r--r--src/share/vm/runtime/stackValueCollection.cpp3
-rw-r--r--src/share/vm/runtime/statSampler.cpp3
-rw-r--r--src/share/vm/runtime/stubCodeGenerator.cpp3
-rw-r--r--src/share/vm/runtime/stubRoutines.hpp6
-rw-r--r--src/share/vm/runtime/thread.hpp3
-rw-r--r--src/share/vm/runtime/threadLocalStorage.hpp3
-rw-r--r--src/share/vm/runtime/vmStructs.cpp9
-rw-r--r--src/share/vm/runtime/vm_version.cpp3
-rw-r--r--src/share/vm/utilities/copy.hpp3
-rw-r--r--src/share/vm/utilities/globalDefinitions.hpp3
-rw-r--r--src/share/vm/utilities/taskqueue.hpp3
92 files changed, 345 insertions, 9 deletions
diff --git a/src/share/vm/adlc/main.cpp b/src/share/vm/adlc/main.cpp
index 47e207a4b..5cf345c35 100644
--- a/src/share/vm/adlc/main.cpp
+++ b/src/share/vm/adlc/main.cpp
@@ -235,6 +235,11 @@ int main(int argc, char *argv[])
AD.addInclude(AD._CPP_file, "nativeInst_x86.hpp");
AD.addInclude(AD._CPP_file, "vmreg_x86.inline.hpp");
#endif
+#ifdef TARGET_ARCH_aarch64
+ AD.addInclude(AD._CPP_file, "assembler_aarch64.inline.hpp");
+ AD.addInclude(AD._CPP_file, "nativeInst_aarch64.hpp");
+ AD.addInclude(AD._CPP_file, "vmreg_aarch64.inline.hpp");
+#endif
#ifdef TARGET_ARCH_sparc
AD.addInclude(AD._CPP_file, "assembler_sparc.inline.hpp");
AD.addInclude(AD._CPP_file, "nativeInst_sparc.hpp");
diff --git a/src/share/vm/asm/assembler.cpp b/src/share/vm/asm/assembler.cpp
index 2bcdcbc88..8e51e20d9 100644
--- a/src/share/vm/asm/assembler.cpp
+++ b/src/share/vm/asm/assembler.cpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_x86
# include "assembler_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "assembler_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "assembler_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/asm/assembler.hpp b/src/share/vm/asm/assembler.hpp
index 67e328087..a680ac895 100644
--- a/src/share/vm/asm/assembler.hpp
+++ b/src/share/vm/asm/assembler.hpp
@@ -31,7 +31,7 @@
#include "utilities/debug.hpp"
#include "utilities/growableArray.hpp"
#include "utilities/top.hpp"
-#ifdef TARGET_ARCH_AARCH64
+#ifdef TARGET_ARCH_aarch64
# include "register_aarch64.hpp"
# include "vm_version_aarch64.hpp"
#else
diff --git a/src/share/vm/asm/codeBuffer.hpp b/src/share/vm/asm/codeBuffer.hpp
index 53c90c2e6..90ec8de2b 100644
--- a/src/share/vm/asm/codeBuffer.hpp
+++ b/src/share/vm/asm/codeBuffer.hpp
@@ -561,6 +561,9 @@ class CodeBuffer: public StackObj {
#ifdef TARGET_ARCH_x86
# include "codeBuffer_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "codeBuffer_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "codeBuffer_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_Defs.hpp b/src/share/vm/c1/c1_Defs.hpp
index bebb3b0be..b0cd76373 100644
--- a/src/share/vm/c1/c1_Defs.hpp
+++ b/src/share/vm/c1/c1_Defs.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "register_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "register_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "register_sparc.hpp"
#endif
@@ -53,6 +56,9 @@ enum {
#ifdef TARGET_ARCH_x86
# include "c1_Defs_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_Defs_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_Defs_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_FpuStackSim.hpp b/src/share/vm/c1/c1_FpuStackSim.hpp
index a1e4c3832..f07e97a4d 100644
--- a/src/share/vm/c1/c1_FpuStackSim.hpp
+++ b/src/share/vm/c1/c1_FpuStackSim.hpp
@@ -35,6 +35,9 @@ class FpuStackSim;
#ifdef TARGET_ARCH_x86
# include "c1_FpuStackSim_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_FpuStackSim_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_FpuStackSim_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_FrameMap.cpp b/src/share/vm/c1/c1_FrameMap.cpp
index ea50b276f..660534665 100644
--- a/src/share/vm/c1/c1_FrameMap.cpp
+++ b/src/share/vm/c1/c1_FrameMap.cpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmreg_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/c1/c1_FrameMap.hpp b/src/share/vm/c1/c1_FrameMap.hpp
index 288fc5c1b..1b3c68b95 100644
--- a/src/share/vm/c1/c1_FrameMap.hpp
+++ b/src/share/vm/c1/c1_FrameMap.hpp
@@ -85,6 +85,9 @@ class FrameMap : public CompilationResourceObj {
#ifdef TARGET_ARCH_x86
# include "c1_FrameMap_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_FrameMap_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_FrameMap_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_LIR.cpp b/src/share/vm/c1/c1_LIR.cpp
index c85e71f99..a00012b4f 100644
--- a/src/share/vm/c1/c1_LIR.cpp
+++ b/src/share/vm/c1/c1_LIR.cpp
@@ -43,6 +43,7 @@ Register LIR_OprDesc::as_register_hi() const {
}
#if defined(X86)
+#ifndef TARGET_ARCH_aarch64
XMMRegister LIR_OprDesc::as_xmm_float_reg() const {
return FrameMap::nr2xmmreg(xmm_regnr());
@@ -53,6 +54,7 @@ XMMRegister LIR_OprDesc::as_xmm_double_reg() const {
return FrameMap::nr2xmmreg(xmm_regnrLo());
}
+#endif
#endif // X86
#if defined(SPARC) || defined(PPC)
@@ -1499,10 +1501,12 @@ void LIR_OprDesc::print(outputStream* out) const {
out->print(as_register_hi()->name());
out->print(as_register_lo()->name());
#if defined(X86)
+#ifndef TARGET_ARCH_aarch64
} else if (is_single_xmm()) {
out->print(as_xmm_float_reg()->name());
} else if (is_double_xmm()) {
out->print(as_xmm_double_reg()->name());
+#endif
} else if (is_single_fpu()) {
out->print("fpu%d", fpu_regnr());
} else if (is_double_fpu()) {
diff --git a/src/share/vm/c1/c1_LIR.hpp b/src/share/vm/c1/c1_LIR.hpp
index eb9ff9a5f..9ab60eef0 100644
--- a/src/share/vm/c1/c1_LIR.hpp
+++ b/src/share/vm/c1/c1_LIR.hpp
@@ -433,10 +433,12 @@ class LIR_OprDesc: public CompilationResourceObj {
}
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
XMMRegister as_xmm_float_reg() const;
XMMRegister as_xmm_double_reg() const;
// for compatibility with RInfo
int fpu () const { return lo_reg_half(); }
+#endif
#endif // X86
#if defined(SPARC) || defined(ARM) || defined(PPC)
FloatRegister as_float_reg () const;
diff --git a/src/share/vm/c1/c1_LIRAssembler.cpp b/src/share/vm/c1/c1_LIRAssembler.cpp
index b3082cb0c..180b0409c 100644
--- a/src/share/vm/c1/c1_LIRAssembler.cpp
+++ b/src/share/vm/c1/c1_LIRAssembler.cpp
@@ -34,6 +34,10 @@
# include "nativeInst_x86.hpp"
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
# include "vmreg_sparc.inline.hpp"
diff --git a/src/share/vm/c1/c1_LIRAssembler.hpp b/src/share/vm/c1/c1_LIRAssembler.hpp
index 58adf5919..24348c1ad 100644
--- a/src/share/vm/c1/c1_LIRAssembler.hpp
+++ b/src/share/vm/c1/c1_LIRAssembler.hpp
@@ -252,6 +252,9 @@ class LIR_Assembler: public CompilationResourceObj {
#ifdef TARGET_ARCH_x86
# include "c1_LIRAssembler_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_LIRAssembler_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_LIRAssembler_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_LinearScan.cpp b/src/share/vm/c1/c1_LinearScan.cpp
index 56f946365..d6cd728e8 100644
--- a/src/share/vm/c1/c1_LinearScan.cpp
+++ b/src/share/vm/c1/c1_LinearScan.cpp
@@ -35,6 +35,9 @@
#ifdef TARGET_ARCH_x86
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmreg_sparc.inline.hpp"
#endif
@@ -137,11 +140,13 @@ int LinearScan::reg_num(LIR_Opr opr) {
} else if (opr->is_double_cpu()) {
return opr->cpu_regnrLo();
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
} else if (opr->is_single_xmm()) {
return opr->fpu_regnr() + pd_first_xmm_reg;
} else if (opr->is_double_xmm()) {
return opr->fpu_regnrLo() + pd_first_xmm_reg;
#endif
+#endif
} else if (opr->is_single_fpu()) {
return opr->fpu_regnr() + pd_first_fpu_reg;
} else if (opr->is_double_fpu()) {
@@ -1292,8 +1297,10 @@ void LinearScan::build_intervals() {
// perfomed and so the temp ranges would be useless
if (has_fpu_registers()) {
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
if (UseSSE < 2) {
#endif
+#endif
for (i = 0; i < FrameMap::nof_caller_save_fpu_regs; i++) {
LIR_Opr opr = FrameMap::caller_save_fpu_reg_at(i);
assert(opr->is_valid() && opr->is_register(), "FrameMap should not return invalid operands");
@@ -1301,6 +1308,7 @@ void LinearScan::build_intervals() {
caller_save_registers[num_caller_save_registers++] = reg_num(opr);
}
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
}
if (UseSSE > 0) {
for (i = 0; i < FrameMap::nof_caller_save_xmm_regs; i++) {
@@ -1311,6 +1319,7 @@ void LinearScan::build_intervals() {
}
}
#endif
+#endif
}
assert(num_caller_save_registers <= LinearScan::nof_regs, "out of bounds");
@@ -2107,12 +2116,14 @@ LIR_Opr LinearScan::calc_operand_for_interval(const Interval* interval) {
#ifndef __SOFTFP__
case T_FLOAT: {
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
if (UseSSE >= 1) {
assert(assigned_reg >= pd_first_xmm_reg && assigned_reg <= pd_last_xmm_reg, "no xmm register");
assert(interval->assigned_regHi() == any_reg, "must not have hi register");
return LIR_OprFact::single_xmm(assigned_reg - pd_first_xmm_reg);
}
#endif
+#endif
assert(assigned_reg >= pd_first_fpu_reg && assigned_reg <= pd_last_fpu_reg, "no fpu register");
assert(interval->assigned_regHi() == any_reg, "must not have hi register");
@@ -2121,12 +2132,14 @@ LIR_Opr LinearScan::calc_operand_for_interval(const Interval* interval) {
case T_DOUBLE: {
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
if (UseSSE >= 2) {
assert(assigned_reg >= pd_first_xmm_reg && assigned_reg <= pd_last_xmm_reg, "no xmm register");
assert(interval->assigned_regHi() == any_reg, "must not have hi register (double xmm values are stored in one register)");
return LIR_OprFact::double_xmm(assigned_reg - pd_first_xmm_reg);
}
#endif
+#endif
#ifdef SPARC
assert(assigned_reg >= pd_first_fpu_reg && assigned_reg <= pd_last_fpu_reg, "no fpu register");
@@ -2602,6 +2615,7 @@ int LinearScan::append_scope_value_for_operand(LIR_Opr opr, GrowableArray<ScopeV
return 1;
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
} else if (opr->is_single_xmm()) {
VMReg rname = opr->as_xmm_float_reg()->as_VMReg();
LocationValue* sv = new LocationValue(Location::new_reg_loc(Location::normal, rname));
@@ -2609,6 +2623,7 @@ int LinearScan::append_scope_value_for_operand(LIR_Opr opr, GrowableArray<ScopeV
scope_values->append(sv);
return 1;
#endif
+#endif
} else if (opr->is_single_fpu()) {
#ifdef X86
@@ -2692,6 +2707,7 @@ int LinearScan::append_scope_value_for_operand(LIR_Opr opr, GrowableArray<ScopeV
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
} else if (opr->is_double_xmm()) {
assert(opr->fpu_regnrLo() == opr->fpu_regnrHi(), "assumed in calculation");
VMReg rname_first = opr->as_xmm_double_reg()->as_VMReg();
@@ -2707,6 +2723,7 @@ int LinearScan::append_scope_value_for_operand(LIR_Opr opr, GrowableArray<ScopeV
}
# endif
#endif
+#endif
} else if (opr->is_double_fpu()) {
// On SPARC, fpu_regnrLo/fpu_regnrHi represents the two halves of
@@ -3617,10 +3634,12 @@ void RegisterVerifier::process_operations(LIR_List* ops, IntervalList* input_sta
}
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
for (j = 0; j < FrameMap::nof_caller_save_xmm_regs; j++) {
state_put(input_state, reg_num(FrameMap::caller_save_xmm_reg_at(j)), NULL);
}
#endif
+#endif
}
// process xhandler before output and temp operands
@@ -4536,9 +4555,11 @@ void Interval::print(outputStream* out) const {
} else if (assigned_reg() >= pd_first_fpu_reg && assigned_reg() <= pd_last_fpu_reg) {
opr = LIR_OprFact::single_fpu(assigned_reg() - pd_first_fpu_reg);
#ifdef X86
+#ifndef TARGET_ARCH_aarch64
} else if (assigned_reg() >= pd_first_xmm_reg && assigned_reg() <= pd_last_xmm_reg) {
opr = LIR_OprFact::single_xmm(assigned_reg() - pd_first_xmm_reg);
#endif
+#endif
} else {
ShouldNotReachHere();
}
diff --git a/src/share/vm/c1/c1_LinearScan.hpp b/src/share/vm/c1/c1_LinearScan.hpp
index 0c06f1b01..75042cd47 100644
--- a/src/share/vm/c1/c1_LinearScan.hpp
+++ b/src/share/vm/c1/c1_LinearScan.hpp
@@ -128,8 +128,7 @@ class LinearScan : public CompilationResourceObj {
any_reg = -1,
nof_cpu_regs = pd_nof_cpu_regs_linearscan,
nof_fpu_regs = pd_nof_fpu_regs_linearscan,
- nof_xmm_regs = pd_nof_xmm_regs_linearscan,
- nof_regs = nof_cpu_regs + nof_fpu_regs + nof_xmm_regs
+ nof_regs = nof_cpu_regs + nof_fpu_regs
};
private:
@@ -976,6 +975,9 @@ class LinearScanTimers : public StackObj {
#ifdef TARGET_ARCH_x86
# include "c1_LinearScan_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_LinearScan_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_LinearScan_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_MacroAssembler.hpp b/src/share/vm/c1/c1_MacroAssembler.hpp
index 55d980350..28fa682fd 100644
--- a/src/share/vm/c1/c1_MacroAssembler.hpp
+++ b/src/share/vm/c1/c1_MacroAssembler.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "assembler_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "assembler_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "assembler_sparc.inline.hpp"
#endif
@@ -64,6 +67,9 @@ class C1_MacroAssembler: public MacroAssembler {
#ifdef TARGET_ARCH_x86
# include "c1_MacroAssembler_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_MacroAssembler_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_MacroAssembler_sparc.hpp"
#endif
diff --git a/src/share/vm/c1/c1_globals.hpp b/src/share/vm/c1/c1_globals.hpp
index 15f3cc10f..662890a99 100644
--- a/src/share/vm/c1/c1_globals.hpp
+++ b/src/share/vm/c1/c1_globals.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "c1_globals_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_globals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_globals_sparc.hpp"
#endif
diff --git a/src/share/vm/classfile/classFileStream.hpp b/src/share/vm/classfile/classFileStream.hpp
index cf6f0e5f3..6299fca4f 100644
--- a/src/share/vm/classfile/classFileStream.hpp
+++ b/src/share/vm/classfile/classFileStream.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/classfile/stackMapTable.hpp b/src/share/vm/classfile/stackMapTable.hpp
index 08e9bd254..9ce2cb8f3 100644
--- a/src/share/vm/classfile/stackMapTable.hpp
+++ b/src/share/vm/classfile/stackMapTable.hpp
@@ -33,6 +33,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/classfile/verifier.cpp b/src/share/vm/classfile/verifier.cpp
index 9ab47f7b6..949e9987c 100644
--- a/src/share/vm/classfile/verifier.cpp
+++ b/src/share/vm/classfile/verifier.cpp
@@ -45,6 +45,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/code/codeBlob.cpp b/src/share/vm/code/codeBlob.cpp
index 244c32043..49384b5e1 100644
--- a/src/share/vm/code/codeBlob.cpp
+++ b/src/share/vm/code/codeBlob.cpp
@@ -42,6 +42,9 @@
#ifdef TARGET_ARCH_x86
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
#endif
diff --git a/src/share/vm/code/compiledIC.hpp b/src/share/vm/code/compiledIC.hpp
index fe1cfb30b..ee5c6f31d 100644
--- a/src/share/vm/code/compiledIC.hpp
+++ b/src/share/vm/code/compiledIC.hpp
@@ -32,6 +32,9 @@
#ifdef TARGET_ARCH_x86
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
#endif
diff --git a/src/share/vm/code/icBuffer.cpp b/src/share/vm/code/icBuffer.cpp
index ed704575e..736fa7f8d 100644
--- a/src/share/vm/code/icBuffer.cpp
+++ b/src/share/vm/code/icBuffer.cpp
@@ -40,6 +40,9 @@
#ifdef TARGET_ARCH_x86
# include "assembler_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "assembler_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "assembler_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/code/relocInfo.cpp b/src/share/vm/code/relocInfo.cpp
index 4fd82dfaa..55beb1fff 100644
--- a/src/share/vm/code/relocInfo.cpp
+++ b/src/share/vm/code/relocInfo.cpp
@@ -33,6 +33,10 @@
# include "assembler_x86.inline.hpp"
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "assembler_aarch64.inline.hpp"
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "assembler_sparc.inline.hpp"
# include "nativeInst_sparc.hpp"
diff --git a/src/share/vm/code/relocInfo.hpp b/src/share/vm/code/relocInfo.hpp
index 97fcbb1a3..d81911f36 100644
--- a/src/share/vm/code/relocInfo.hpp
+++ b/src/share/vm/code/relocInfo.hpp
@@ -424,8 +424,8 @@ class relocInfo VALUE_OBJ_CLASS_SPEC {
#ifdef TARGET_ARCH_x86
# include "relocInfo_x86.hpp"
#endif
-#ifdef TARGET_ARCH_AARCH64
-# include "relocInfo_x86.hpp"
+#ifdef TARGET_ARCH_aarch64
+# include "relocInfo_aarch64.hpp"
#endif
#ifdef TARGET_ARCH_sparc
# include "relocInfo_sparc.hpp"
diff --git a/src/share/vm/code/vmreg.hpp b/src/share/vm/code/vmreg.hpp
index d57e6f89b..a2b137a2a 100644
--- a/src/share/vm/code/vmreg.hpp
+++ b/src/share/vm/code/vmreg.hpp
@@ -30,6 +30,9 @@
#ifdef TARGET_ARCH_x86
# include "register_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "register_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "register_sparc.hpp"
#endif
@@ -51,6 +54,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/adGlobals_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/adGlobals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/adGlobals_sparc.hpp"
#endif
@@ -170,6 +176,9 @@ public:
#ifdef TARGET_ARCH_x86
# include "vmreg_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmreg_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmreg_sparc.hpp"
#endif
diff --git a/src/share/vm/compiler/disassembler.cpp b/src/share/vm/compiler/disassembler.cpp
index 9603e863e..f15c91581 100644
--- a/src/share/vm/compiler/disassembler.cpp
+++ b/src/share/vm/compiler/disassembler.cpp
@@ -35,6 +35,9 @@
#ifdef TARGET_ARCH_x86
# include "depChecker_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "depChecker_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "depChecker_sparc.hpp"
#endif
diff --git a/src/share/vm/compiler/disassembler.hpp b/src/share/vm/compiler/disassembler.hpp
index a70b8ccd3..9f63ebc3f 100644
--- a/src/share/vm/compiler/disassembler.hpp
+++ b/src/share/vm/compiler/disassembler.hpp
@@ -67,6 +67,9 @@ class Disassembler {
#ifdef TARGET_ARCH_x86
# include "disassembler_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "disassembler_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "disassembler_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/abstractInterpreter.hpp b/src/share/vm/interpreter/abstractInterpreter.hpp
index 756ad88e2..a0e5e9bf2 100644
--- a/src/share/vm/interpreter/abstractInterpreter.hpp
+++ b/src/share/vm/interpreter/abstractInterpreter.hpp
@@ -35,6 +35,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "interp_masm_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "interp_masm_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "interp_masm_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecode.hpp b/src/share/vm/interpreter/bytecode.hpp
index 107161a97..7008f346e 100644
--- a/src/share/vm/interpreter/bytecode.hpp
+++ b/src/share/vm/interpreter/bytecode.hpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodeInterpreter.cpp b/src/share/vm/interpreter/bytecodeInterpreter.cpp
index 68bd1c73e..6c9098375 100644
--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp
+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp
@@ -44,6 +44,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "orderAccess_linux_x86.inline.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "orderAccess_linux_aarch64.inline.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "orderAccess_linux_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodeInterpreter.hpp b/src/share/vm/interpreter/bytecodeInterpreter.hpp
index 8757760c3..6d507595e 100644
--- a/src/share/vm/interpreter/bytecodeInterpreter.hpp
+++ b/src/share/vm/interpreter/bytecodeInterpreter.hpp
@@ -35,6 +35,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
@@ -588,6 +591,9 @@ void print();
#ifdef TARGET_ARCH_x86
# include "bytecodeInterpreter_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytecodeInterpreter_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytecodeInterpreter_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodeInterpreter.inline.hpp b/src/share/vm/interpreter/bytecodeInterpreter.inline.hpp
index 3715a5212..f5db0b4d9 100644
--- a/src/share/vm/interpreter/bytecodeInterpreter.inline.hpp
+++ b/src/share/vm/interpreter/bytecodeInterpreter.inline.hpp
@@ -46,6 +46,9 @@
#ifdef TARGET_ARCH_x86
# include "bytecodeInterpreter_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytecodeInterpreter_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytecodeInterpreter_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodeStream.hpp b/src/share/vm/interpreter/bytecodeStream.hpp
index 532a05632..e0c583492 100644
--- a/src/share/vm/interpreter/bytecodeStream.hpp
+++ b/src/share/vm/interpreter/bytecodeStream.hpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodes.cpp b/src/share/vm/interpreter/bytecodes.cpp
index 5e4b9dcee..c26167334 100644
--- a/src/share/vm/interpreter/bytecodes.cpp
+++ b/src/share/vm/interpreter/bytecodes.cpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/bytecodes.hpp b/src/share/vm/interpreter/bytecodes.hpp
index 2ea733660..dcb5242a6 100644
--- a/src/share/vm/interpreter/bytecodes.hpp
+++ b/src/share/vm/interpreter/bytecodes.hpp
@@ -288,6 +288,9 @@ class Bytecodes: AllStatic {
#ifdef TARGET_ARCH_x86
# include "bytecodes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytecodes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytecodes_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/cppInterpreter.hpp b/src/share/vm/interpreter/cppInterpreter.hpp
index 4997a4432..18c50f7c4 100644
--- a/src/share/vm/interpreter/cppInterpreter.hpp
+++ b/src/share/vm/interpreter/cppInterpreter.hpp
@@ -84,6 +84,9 @@ class CppInterpreter: public AbstractInterpreter {
#ifdef TARGET_ARCH_x86
# include "cppInterpreter_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "cppInterpreter_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "cppInterpreter_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/cppInterpreterGenerator.hpp b/src/share/vm/interpreter/cppInterpreterGenerator.hpp
index c27805e3e..5d6b3c59f 100644
--- a/src/share/vm/interpreter/cppInterpreterGenerator.hpp
+++ b/src/share/vm/interpreter/cppInterpreterGenerator.hpp
@@ -47,6 +47,9 @@ class CppInterpreterGenerator: public AbstractInterpreterGenerator {
#ifdef TARGET_ARCH_x86
# include "cppInterpreterGenerator_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "cppInterpreterGenerator_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "cppInterpreterGenerator_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/interpreter.hpp b/src/share/vm/interpreter/interpreter.hpp
index 0ab0be747..71681ef96 100644
--- a/src/share/vm/interpreter/interpreter.hpp
+++ b/src/share/vm/interpreter/interpreter.hpp
@@ -146,6 +146,9 @@ class Interpreter: public CC_INTERP_ONLY(CppInterpreter) NOT_CC_INTERP(TemplateI
#ifdef TARGET_ARCH_x86
# include "interpreter_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "interpreter_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "interpreter_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/interpreterGenerator.hpp b/src/share/vm/interpreter/interpreterGenerator.hpp
index 7bc43eccb..1dc7cb298 100644
--- a/src/share/vm/interpreter/interpreterGenerator.hpp
+++ b/src/share/vm/interpreter/interpreterGenerator.hpp
@@ -44,6 +44,9 @@ InterpreterGenerator(StubQueue* _code);
#ifdef TARGET_ARCH_x86
# include "interpreterGenerator_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "interpreterGenerator_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "interpreterGenerator_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/interpreterRuntime.cpp b/src/share/vm/interpreter/interpreterRuntime.cpp
index e1c166587..8660ff37a 100644
--- a/src/share/vm/interpreter/interpreterRuntime.cpp
+++ b/src/share/vm/interpreter/interpreterRuntime.cpp
@@ -59,6 +59,9 @@
#ifdef TARGET_ARCH_x86
# include "vm_version_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vm_version_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vm_version_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/interpreterRuntime.hpp b/src/share/vm/interpreter/interpreterRuntime.hpp
index 93c1a9eca..13db73886 100644
--- a/src/share/vm/interpreter/interpreterRuntime.hpp
+++ b/src/share/vm/interpreter/interpreterRuntime.hpp
@@ -153,6 +153,9 @@ class InterpreterRuntime: AllStatic {
#ifdef TARGET_ARCH_x86
# include "interpreterRT_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "interpreterRT_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "interpreterRT_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/templateInterpreter.cpp b/src/share/vm/interpreter/templateInterpreter.cpp
index 3c8ef1252..459d02f98 100644
--- a/src/share/vm/interpreter/templateInterpreter.cpp
+++ b/src/share/vm/interpreter/templateInterpreter.cpp
@@ -341,7 +341,6 @@ void TemplateInterpreterGenerator::generate_all() {
}
{ CodeletMark cm(_masm, "throw exception entrypoints");
- generate_AARM64_loop();
Interpreter::_throw_ArrayIndexOutOfBoundsException_entry = generate_ArrayIndexOutOfBounds_handler("java/lang/ArrayIndexOutOfBoundsException");
Interpreter::_throw_ArrayStoreException_entry = generate_klass_exception_handler("java/lang/ArrayStoreException" );
Interpreter::_throw_ArithmeticException_entry = generate_exception_handler("java/lang/ArithmeticException" , "/ by zero");
diff --git a/src/share/vm/interpreter/templateInterpreter.hpp b/src/share/vm/interpreter/templateInterpreter.hpp
index 4db0a419c..160f7e5c3 100644
--- a/src/share/vm/interpreter/templateInterpreter.hpp
+++ b/src/share/vm/interpreter/templateInterpreter.hpp
@@ -186,6 +186,9 @@ class TemplateInterpreter: public AbstractInterpreter {
#ifdef TARGET_ARCH_x86
# include "templateInterpreter_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "templateInterpreter_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "templateInterpreter_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/templateInterpreterGenerator.hpp b/src/share/vm/interpreter/templateInterpreterGenerator.hpp
index 2b8c38c27..943dea552 100644
--- a/src/share/vm/interpreter/templateInterpreterGenerator.hpp
+++ b/src/share/vm/interpreter/templateInterpreterGenerator.hpp
@@ -31,13 +31,13 @@
#ifndef CC_INTERP
class TemplateInterpreterGenerator: public AbstractInterpreterGenerator {
+
protected:
// entry points for shared code sequence
address _unimplemented_bytecode;
address _illegal_bytecode_sequence;
- address generate_AARM64_loop();
// shared code sequences
// Converter for native abi result to tosca result
@@ -91,6 +91,9 @@ class TemplateInterpreterGenerator: public AbstractInterpreterGenerator {
#ifdef TARGET_ARCH_x86
# include "templateInterpreterGenerator_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "templateInterpreterGenerator_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "templateInterpreterGenerator_sparc.hpp"
#endif
diff --git a/src/share/vm/interpreter/templateTable.hpp b/src/share/vm/interpreter/templateTable.hpp
index 3b006ad03..88ee0b59c 100644
--- a/src/share/vm/interpreter/templateTable.hpp
+++ b/src/share/vm/interpreter/templateTable.hpp
@@ -34,6 +34,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "interp_masm_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "interp_masm_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "interp_masm_sparc.hpp"
#endif
@@ -364,6 +367,9 @@ class TemplateTable: AllStatic {
#ifdef TARGET_ARCH_MODEL_x86_64
# include "templateTable_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "templateTable_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "templateTable_sparc.hpp"
#endif
diff --git a/src/share/vm/oops/constantPoolOop.hpp b/src/share/vm/oops/constantPoolOop.hpp
index c2f985d77..b45a57f98 100644
--- a/src/share/vm/oops/constantPoolOop.hpp
+++ b/src/share/vm/oops/constantPoolOop.hpp
@@ -33,6 +33,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/oops/oop.inline.hpp b/src/share/vm/oops/oop.inline.hpp
index a050f960f..2e50dcbeb 100644
--- a/src/share/vm/oops/oop.inline.hpp
+++ b/src/share/vm/oops/oop.inline.hpp
@@ -46,6 +46,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/oops/typeArrayOop.hpp b/src/share/vm/oops/typeArrayOop.hpp
index 292609e43..1e1b37d31 100644
--- a/src/share/vm/oops/typeArrayOop.hpp
+++ b/src/share/vm/oops/typeArrayOop.hpp
@@ -30,6 +30,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "orderAccess_linux_x86.inline.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "orderAccess_linux_aarch64.inline.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "orderAccess_linux_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/opto/buildOopMap.cpp b/src/share/vm/opto/buildOopMap.cpp
index fc731604e..6d6b42163 100644
--- a/src/share/vm/opto/buildOopMap.cpp
+++ b/src/share/vm/opto/buildOopMap.cpp
@@ -35,6 +35,9 @@
#ifdef TARGET_ARCH_x86
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmreg_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/opto/c2_globals.hpp b/src/share/vm/opto/c2_globals.hpp
index 4d5424da5..85120f007 100644
--- a/src/share/vm/opto/c2_globals.hpp
+++ b/src/share/vm/opto/c2_globals.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "c2_globals_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c2_globals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c2_globals_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/c2compiler.cpp b/src/share/vm/opto/c2compiler.cpp
index 713e3f1d1..7083c6c33 100644
--- a/src/share/vm/opto/c2compiler.cpp
+++ b/src/share/vm/opto/c2compiler.cpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/compile.cpp b/src/share/vm/opto/compile.cpp
index 0a374d792..af0217604 100644
--- a/src/share/vm/opto/compile.cpp
+++ b/src/share/vm/opto/compile.cpp
@@ -68,6 +68,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/gcm.cpp b/src/share/vm/opto/gcm.cpp
index 8b8f31157..2eb58650b 100644
--- a/src/share/vm/opto/gcm.cpp
+++ b/src/share/vm/opto/gcm.cpp
@@ -41,6 +41,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/lcm.cpp b/src/share/vm/opto/lcm.cpp
index 1ad9f0b1f..a5c220b7f 100644
--- a/src/share/vm/opto/lcm.cpp
+++ b/src/share/vm/opto/lcm.cpp
@@ -36,6 +36,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/locknode.hpp b/src/share/vm/opto/locknode.hpp
index 91b99bc00..74c0a38e7 100644
--- a/src/share/vm/opto/locknode.hpp
+++ b/src/share/vm/opto/locknode.hpp
@@ -34,6 +34,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/machnode.hpp b/src/share/vm/opto/machnode.hpp
index 566e031d1..b535cc922 100644
--- a/src/share/vm/opto/machnode.hpp
+++ b/src/share/vm/opto/machnode.hpp
@@ -95,12 +95,14 @@ public:
}
#if defined(IA32) || defined(AMD64)
+#ifndef TARGET_ARCH_aarch64
XMMRegister as_XMMRegister(PhaseRegAlloc *ra_, const Node *node) const {
return ::as_XMMRegister(reg(ra_, node));
}
XMMRegister as_XMMRegister(PhaseRegAlloc *ra_, const Node *node, int idx) const {
return ::as_XMMRegister(reg(ra_, node, idx));
}
+#endif // TARGET_ARCH_aarch64
#endif
virtual intptr_t constant() const;
diff --git a/src/share/vm/opto/matcher.cpp b/src/share/vm/opto/matcher.cpp
index 397385670..8f45c5677 100644
--- a/src/share/vm/opto/matcher.cpp
+++ b/src/share/vm/opto/matcher.cpp
@@ -43,6 +43,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/output.hpp b/src/share/vm/opto/output.hpp
index 50b6e7603..402c7cf96 100644
--- a/src/share/vm/opto/output.hpp
+++ b/src/share/vm/opto/output.hpp
@@ -33,6 +33,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/regmask.cpp b/src/share/vm/opto/regmask.cpp
index ce220f01b..5d4668a53 100644
--- a/src/share/vm/opto/regmask.cpp
+++ b/src/share/vm/opto/regmask.cpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/regmask.hpp b/src/share/vm/opto/regmask.hpp
index e50ff84ca..25c1d9b16 100644
--- a/src/share/vm/opto/regmask.hpp
+++ b/src/share/vm/opto/regmask.hpp
@@ -34,6 +34,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/adGlobals_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/adGlobals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/adGlobals_sparc.hpp"
#endif
diff --git a/src/share/vm/opto/runtime.cpp b/src/share/vm/opto/runtime.cpp
index b03a3943a..dc62b0fca 100644
--- a/src/share/vm/opto/runtime.cpp
+++ b/src/share/vm/opto/runtime.cpp
@@ -74,6 +74,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/prims/jniCheck.cpp b/src/share/vm/prims/jniCheck.cpp
index 3bf4ecd1a..e830fb999 100644
--- a/src/share/vm/prims/jniCheck.cpp
+++ b/src/share/vm/prims/jniCheck.cpp
@@ -39,6 +39,9 @@
#ifdef TARGET_ARCH_x86
# include "jniTypes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "jniTypes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "jniTypes_sparc.hpp"
#endif
diff --git a/src/share/vm/prims/jni_md.h b/src/share/vm/prims/jni_md.h
index 13d70b974..6209a6644 100644
--- a/src/share/vm/prims/jni_md.h
+++ b/src/share/vm/prims/jni_md.h
@@ -27,8 +27,8 @@
#ifdef TARGET_ARCH_x86
# include "jni_x86.h"
#endif
-#ifdef TARGET_ARCH_AARCH64
-# include "jni_x86.h"
+#ifdef TARGET_ARCH_aarch64
+# include "jni_aarch64.h"
#endif
#ifdef TARGET_ARCH_sparc
# include "jni_sparc.h"
diff --git a/src/share/vm/prims/jvmtiClassFileReconstituter.cpp b/src/share/vm/prims/jvmtiClassFileReconstituter.cpp
index d7dfea5a9..4d349e3d6 100644
--- a/src/share/vm/prims/jvmtiClassFileReconstituter.cpp
+++ b/src/share/vm/prims/jvmtiClassFileReconstituter.cpp
@@ -31,6 +31,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/prims/methodHandles.hpp b/src/share/vm/prims/methodHandles.hpp
index 514ba6aa9..0ce89d91e 100644
--- a/src/share/vm/prims/methodHandles.hpp
+++ b/src/share/vm/prims/methodHandles.hpp
@@ -726,6 +726,9 @@ public:
#ifdef TARGET_ARCH_x86
# include "methodHandles_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "methodHandles_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "methodHandles_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/atomic.cpp b/src/share/vm/runtime/atomic.cpp
index 80780d780..5e74aa465 100644
--- a/src/share/vm/runtime/atomic.cpp
+++ b/src/share/vm/runtime/atomic.cpp
@@ -39,6 +39,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "atomic_linux_x86.inline.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "atomic_linux_aarch64.inline.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "atomic_linux_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/runtime/deoptimization.cpp b/src/share/vm/runtime/deoptimization.cpp
index 0e2a9839b..6c36ac745 100644
--- a/src/share/vm/runtime/deoptimization.cpp
+++ b/src/share/vm/runtime/deoptimization.cpp
@@ -53,6 +53,9 @@
#ifdef TARGET_ARCH_x86
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmreg_sparc.inline.hpp"
#endif
@@ -72,6 +75,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/ad_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/ad_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/ad_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/dtraceJSDT.hpp b/src/share/vm/runtime/dtraceJSDT.hpp
index bff431084..38de0a7da 100644
--- a/src/share/vm/runtime/dtraceJSDT.hpp
+++ b/src/share/vm/runtime/dtraceJSDT.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/frame.cpp b/src/share/vm/runtime/frame.cpp
index 7ae9aa8d5..5bb1b8562 100644
--- a/src/share/vm/runtime/frame.cpp
+++ b/src/share/vm/runtime/frame.cpp
@@ -47,6 +47,9 @@
#ifdef TARGET_ARCH_x86
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/frame.hpp b/src/share/vm/runtime/frame.hpp
index c55380e57..939ee0658 100644
--- a/src/share/vm/runtime/frame.hpp
+++ b/src/share/vm/runtime/frame.hpp
@@ -38,6 +38,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/adGlobals_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/adGlobals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/adGlobals_sparc.hpp"
#endif
@@ -479,6 +482,9 @@ class frame VALUE_OBJ_CLASS_SPEC {
#ifdef TARGET_ARCH_x86
# include "frame_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "frame_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "frame_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/frame.inline.hpp b/src/share/vm/runtime/frame.inline.hpp
index b80b042dc..af1038dca 100644
--- a/src/share/vm/runtime/frame.inline.hpp
+++ b/src/share/vm/runtime/frame.inline.hpp
@@ -34,6 +34,9 @@
#ifdef TARGET_ARCH_x86
# include "jniTypes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "jniTypes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "jniTypes_sparc.hpp"
#endif
@@ -88,6 +91,9 @@ inline bool frame::is_first_frame() const {
#ifdef TARGET_ARCH_x86
# include "frame_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "frame_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "frame_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/runtime/globals.hpp b/src/share/vm/runtime/globals.hpp
index 1838252c3..498f28a2c 100644
--- a/src/share/vm/runtime/globals.hpp
+++ b/src/share/vm/runtime/globals.hpp
@@ -40,6 +40,9 @@
#ifdef TARGET_ARCH_x86
# include "globals_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "globals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "globals_sparc.hpp"
#endif
@@ -67,6 +70,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "globals_linux_x86.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "globals_linux_aarch64.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "globals_linux_sparc.hpp"
#endif
@@ -98,6 +104,9 @@
#ifdef TARGET_ARCH_x86
# include "c1_globals_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c1_globals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c1_globals_sparc.hpp"
#endif
@@ -124,6 +133,9 @@
#ifdef TARGET_ARCH_x86
# include "c2_globals_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "c2_globals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "c2_globals_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/icache.hpp b/src/share/vm/runtime/icache.hpp
index d460a0ffb..ba81a06ff 100644
--- a/src/share/vm/runtime/icache.hpp
+++ b/src/share/vm/runtime/icache.hpp
@@ -71,6 +71,9 @@ class AbstractICache : AllStatic {
#ifdef TARGET_ARCH_x86
# include "icache_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "icache_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "icache_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/java.cpp b/src/share/vm/runtime/java.cpp
index f256e515e..69f59b736 100644
--- a/src/share/vm/runtime/java.cpp
+++ b/src/share/vm/runtime/java.cpp
@@ -66,6 +66,9 @@
#ifdef TARGET_ARCH_x86
# include "vm_version_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vm_version_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vm_version_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/javaCalls.hpp b/src/share/vm/runtime/javaCalls.hpp
index d4f85956f..f6847e97f 100644
--- a/src/share/vm/runtime/javaCalls.hpp
+++ b/src/share/vm/runtime/javaCalls.hpp
@@ -33,6 +33,9 @@
#ifdef TARGET_ARCH_x86
# include "jniTypes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "jniTypes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "jniTypes_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/javaFrameAnchor.hpp b/src/share/vm/runtime/javaFrameAnchor.hpp
index 8374aa2a9..3507ea158 100644
--- a/src/share/vm/runtime/javaFrameAnchor.hpp
+++ b/src/share/vm/runtime/javaFrameAnchor.hpp
@@ -29,6 +29,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "orderAccess_linux_x86.inline.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "orderAccess_linux_aarch64.inline.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "orderAccess_linux_sparc.inline.hpp"
#endif
@@ -109,6 +112,9 @@ friend class JavaCallWrapper;
#ifdef TARGET_ARCH_x86
# include "javaFrameAnchor_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "javaFrameAnchor_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "javaFrameAnchor_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/os.hpp b/src/share/vm/runtime/os.hpp
index 68f8a3ab6..51874126a 100644
--- a/src/share/vm/runtime/os.hpp
+++ b/src/share/vm/runtime/os.hpp
@@ -702,6 +702,9 @@ class os: AllStatic {
#ifdef TARGET_OS_ARCH_linux_x86
# include "os_linux_x86.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "os_linux_aarch64.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "os_linux_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/registerMap.hpp b/src/share/vm/runtime/registerMap.hpp
index 5dd677ac4..67ef212d6 100644
--- a/src/share/vm/runtime/registerMap.hpp
+++ b/src/share/vm/runtime/registerMap.hpp
@@ -30,6 +30,9 @@
#ifdef TARGET_ARCH_x86
# include "register_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "register_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "register_sparc.hpp"
#endif
@@ -138,6 +141,9 @@ class RegisterMap : public StackObj {
#ifdef TARGET_ARCH_x86
# include "registerMap_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "registerMap_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "registerMap_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/relocator.hpp b/src/share/vm/runtime/relocator.hpp
index c34866f74..72045730f 100644
--- a/src/share/vm/runtime/relocator.hpp
+++ b/src/share/vm/runtime/relocator.hpp
@@ -30,6 +30,9 @@
#ifdef TARGET_ARCH_x86
# include "bytes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "bytes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "bytes_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/safepoint.cpp b/src/share/vm/runtime/safepoint.cpp
index 514e7c976..efe0bf4a0 100644
--- a/src/share/vm/runtime/safepoint.cpp
+++ b/src/share/vm/runtime/safepoint.cpp
@@ -53,6 +53,10 @@
# include "nativeInst_x86.hpp"
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
# include "vmreg_sparc.inline.hpp"
diff --git a/src/share/vm/runtime/sharedRuntime.cpp b/src/share/vm/runtime/sharedRuntime.cpp
index 503ad0719..587bb9310 100644
--- a/src/share/vm/runtime/sharedRuntime.cpp
+++ b/src/share/vm/runtime/sharedRuntime.cpp
@@ -60,6 +60,10 @@
# include "nativeInst_x86.hpp"
# include "vmreg_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+# include "vmreg_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
# include "vmreg_sparc.inline.hpp"
diff --git a/src/share/vm/runtime/stackValueCollection.cpp b/src/share/vm/runtime/stackValueCollection.cpp
index 110f7120d..8c382a40e 100644
--- a/src/share/vm/runtime/stackValueCollection.cpp
+++ b/src/share/vm/runtime/stackValueCollection.cpp
@@ -27,6 +27,9 @@
#ifdef TARGET_ARCH_x86
# include "jniTypes_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "jniTypes_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "jniTypes_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/statSampler.cpp b/src/share/vm/runtime/statSampler.cpp
index 0b24def24..41f469622 100644
--- a/src/share/vm/runtime/statSampler.cpp
+++ b/src/share/vm/runtime/statSampler.cpp
@@ -36,6 +36,9 @@
#ifdef TARGET_ARCH_x86
# include "vm_version_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vm_version_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vm_version_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/stubCodeGenerator.cpp b/src/share/vm/runtime/stubCodeGenerator.cpp
index b6068a5d9..5fc9797c9 100644
--- a/src/share/vm/runtime/stubCodeGenerator.cpp
+++ b/src/share/vm/runtime/stubCodeGenerator.cpp
@@ -30,6 +30,9 @@
#ifdef TARGET_ARCH_x86
# include "assembler_x86.inline.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "assembler_aarch64.inline.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "assembler_sparc.inline.hpp"
#endif
diff --git a/src/share/vm/runtime/stubRoutines.hpp b/src/share/vm/runtime/stubRoutines.hpp
index 8481dce6d..bef1f6b00 100644
--- a/src/share/vm/runtime/stubRoutines.hpp
+++ b/src/share/vm/runtime/stubRoutines.hpp
@@ -34,6 +34,9 @@
#ifdef TARGET_ARCH_x86
# include "nativeInst_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "nativeInst_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "nativeInst_sparc.hpp"
#endif
@@ -105,6 +108,9 @@ class StubRoutines: AllStatic {
#ifdef TARGET_ARCH_MODEL_x86_64
# include "stubRoutines_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "stubRoutines_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "stubRoutines_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/thread.hpp b/src/share/vm/runtime/thread.hpp
index 7846cc070..04b5bef65 100644
--- a/src/share/vm/runtime/thread.hpp
+++ b/src/share/vm/runtime/thread.hpp
@@ -1630,6 +1630,9 @@ public:
#ifdef TARGET_OS_ARCH_linux_x86
# include "thread_linux_x86.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "thread_linux_aarch64.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "thread_linux_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/threadLocalStorage.hpp b/src/share/vm/runtime/threadLocalStorage.hpp
index c2f7a9e4c..a731f6dd3 100644
--- a/src/share/vm/runtime/threadLocalStorage.hpp
+++ b/src/share/vm/runtime/threadLocalStorage.hpp
@@ -47,6 +47,9 @@ class ThreadLocalStorage : AllStatic {
#ifdef TARGET_OS_ARCH_linux_x86
# include "threadLS_linux_x86.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "threadLS_linux_aarch64.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "threadLS_linux_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/vmStructs.cpp b/src/share/vm/runtime/vmStructs.cpp
index 921945a95..d3920426e 100644
--- a/src/share/vm/runtime/vmStructs.cpp
+++ b/src/share/vm/runtime/vmStructs.cpp
@@ -112,6 +112,9 @@
#ifdef TARGET_ARCH_x86
# include "vmStructs_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vmStructs_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vmStructs_sparc.hpp"
#endif
@@ -139,6 +142,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "vmStructs_linux_x86.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "vmStructs_linux_aarch64.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "vmStructs_linux_sparc.hpp"
#endif
@@ -208,6 +214,9 @@
#ifdef TARGET_ARCH_MODEL_x86_64
# include "adfiles/adGlobals_x86_64.hpp"
#endif
+#ifdef TARGET_ARCH_MODEL_aarch64
+# include "adfiles/adGlobals_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_MODEL_sparc
# include "adfiles/adGlobals_sparc.hpp"
#endif
diff --git a/src/share/vm/runtime/vm_version.cpp b/src/share/vm/runtime/vm_version.cpp
index 2d51b6781..728031fd3 100644
--- a/src/share/vm/runtime/vm_version.cpp
+++ b/src/share/vm/runtime/vm_version.cpp
@@ -29,6 +29,9 @@
#ifdef TARGET_ARCH_x86
# include "vm_version_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "vm_version_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "vm_version_sparc.hpp"
#endif
diff --git a/src/share/vm/utilities/copy.hpp b/src/share/vm/utilities/copy.hpp
index 3dcbfeee2..dabe28f06 100644
--- a/src/share/vm/utilities/copy.hpp
+++ b/src/share/vm/utilities/copy.hpp
@@ -325,6 +325,9 @@ class Copy : AllStatic {
#ifdef TARGET_ARCH_x86
# include "copy_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "copy_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "copy_sparc.hpp"
#endif
diff --git a/src/share/vm/utilities/globalDefinitions.hpp b/src/share/vm/utilities/globalDefinitions.hpp
index 19dcec160..9a8526d97 100644
--- a/src/share/vm/utilities/globalDefinitions.hpp
+++ b/src/share/vm/utilities/globalDefinitions.hpp
@@ -340,6 +340,9 @@ extern int LogMinObjAlignmentInBytes;
#ifdef TARGET_ARCH_x86
# include "globalDefinitions_x86.hpp"
#endif
+#ifdef TARGET_ARCH_aarch64
+# include "globalDefinitions_aarch64.hpp"
+#endif
#ifdef TARGET_ARCH_sparc
# include "globalDefinitions_sparc.hpp"
#endif
diff --git a/src/share/vm/utilities/taskqueue.hpp b/src/share/vm/utilities/taskqueue.hpp
index 545c6dbb5..09539f765 100644
--- a/src/share/vm/utilities/taskqueue.hpp
+++ b/src/share/vm/utilities/taskqueue.hpp
@@ -32,6 +32,9 @@
#ifdef TARGET_OS_ARCH_linux_x86
# include "orderAccess_linux_x86.inline.hpp"
#endif
+#ifdef TARGET_OS_ARCH_linux_aarch64
+# include "orderAccess_linux_aarch64.inline.hpp"
+#endif
#ifdef TARGET_OS_ARCH_linux_sparc
# include "orderAccess_linux_sparc.inline.hpp"
#endif