changeset 26905:5f331a6a4b26

8145714: [JVMCI] SPARC broken after JDK-8134994 Reviewed-by: kvn
author twisti
date Thu, 17 Dec 2015 23:17:34 +0000
parents 78d3a49f182b
children ffa4ddf10551
files src/cpu/sparc/vm/vm_version_sparc.hpp src/share/vm/jvmci/vmStructs_jvmci.cpp
diffstat 2 files changed, 38 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/cpu/sparc/vm/vm_version_sparc.hpp	Wed Dec 09 13:37:59 2015 +0100
+++ b/src/cpu/sparc/vm/vm_version_sparc.hpp	Thu Dec 17 23:17:34 2015 +0000
@@ -30,6 +30,7 @@
 
 class VM_Version: public Abstract_VM_Version {
   friend class VMStructs;
+  friend class JVMCIVMStructs;
 protected:
   enum Feature_Flag {
     v8_instructions      = 0,
--- a/src/share/vm/jvmci/vmStructs_jvmci.cpp	Wed Dec 09 13:37:59 2015 +0100
+++ b/src/share/vm/jvmci/vmStructs_jvmci.cpp	Thu Dec 17 23:17:34 2015 +0000
@@ -635,6 +635,43 @@
 #endif // TARGET_ARCH_x86
 
 
+#ifdef TARGET_ARCH_sparc
+
+#define VM_STRUCTS_CPU(nonstatic_field, static_field, unchecked_nonstatic_field, volatile_nonstatic_field, nonproduct_nonstatic_field, c2_nonstatic_field, unchecked_c1_static_field, unchecked_c2_static_field) \
+  volatile_nonstatic_field(JavaFrameAnchor, _flags, int) \
+  static_field(VM_Version, _features, int)
+
+#define VM_TYPES_CPU(declare_type, declare_toplevel_type, declare_oop_type, declare_integer_type, declare_unsigned_integer_type, declare_c1_toplevel_type, declare_c2_type, declare_c2_toplevel_type) \
+  declare_toplevel_type(VM_Version)
+
+#define VM_INT_CONSTANTS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant) \
+  declare_constant(VM_Version::vis1_instructions_m)                       \
+  declare_constant(VM_Version::vis2_instructions_m)                       \
+  declare_constant(VM_Version::vis3_instructions_m)                       \
+  declare_constant(VM_Version::cbcond_instructions_m)                     \
+  declare_constant(VM_Version::v8_instructions_m)                         \
+  declare_constant(VM_Version::hardware_mul32_m)                          \
+  declare_constant(VM_Version::hardware_div32_m)                          \
+  declare_constant(VM_Version::hardware_fsmuld_m)                         \
+  declare_constant(VM_Version::hardware_popc_m)                           \
+  declare_constant(VM_Version::v9_instructions_m)                         \
+  declare_constant(VM_Version::sun4v_m)                                   \
+  declare_constant(VM_Version::blk_init_instructions_m)                   \
+  declare_constant(VM_Version::fmaf_instructions_m)                       \
+  declare_constant(VM_Version::fmau_instructions_m)                       \
+  declare_constant(VM_Version::sparc64_family_m)                          \
+  declare_constant(VM_Version::M_family_m)                                \
+  declare_constant(VM_Version::T_family_m)                                \
+  declare_constant(VM_Version::T1_model_m)                                \
+  declare_constant(VM_Version::sparc5_instructions_m)                     \
+  declare_constant(VM_Version::aes_instructions_m)                        \
+  declare_constant(VM_Version::sha1_instruction_m)                        \
+  declare_constant(VM_Version::sha256_instruction_m)                      \
+  declare_constant(VM_Version::sha512_instruction_m)
+
+#endif // TARGET_ARCH_sparc
+
+
 /*
  * Dummy defines for architectures that don't use these.
  */