changeset 23993:7b65bd0ebeb7

removed duplicate registration of StubRoutines::_multiplyToLen in vmstructs
author Doug Simon <doug.simon@oracle.com>
date Tue, 31 Jan 2017 22:59:16 +0100
parents 1b8892b4ce9c
children ebce30b702eb
files mx.jvmci/mx_jvmci.py src/share/vm/jvmci/vmStructs_jvmci.hpp src/share/vm/runtime/vmStructs.cpp
diffstat 3 files changed, 14 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mx.jvmci/mx_jvmci.py	Tue Jan 31 16:44:20 2017 +0100
+++ b/mx.jvmci/mx_jvmci.py	Tue Jan 31 22:59:16 2017 +0100
@@ -1143,7 +1143,9 @@
 
     # Build the fastdebug VM
     with Task('BuildHotSpotJVMCI: fastdebug', tasks) as t:
-        if t: buildvms(['--vms', 'server', '--builds', 'fastdebug'])
+        if t:
+            buildvms(['--vms', 'server', '--builds', 'fastdebug'])
+            run_vm(['-XX:+ExecuteInternalVMTests', '-version'], vm='server', vmbuild='fastdebug')
 
     with Task('CleanAndBuildIdealGraphVisualizer', tasks, disableJacoco=True) as t:
         if t and platform.processor() != 'sparc':
--- a/src/share/vm/jvmci/vmStructs_jvmci.hpp	Tue Jan 31 16:44:20 2017 +0100
+++ b/src/share/vm/jvmci/vmStructs_jvmci.hpp	Tue Jan 31 22:59:16 2017 +0100
@@ -83,7 +83,6 @@
   static_field(StubRoutines,                   _sha256_implCompressMB,                 address)                                      \
   static_field(StubRoutines,                   _sha512_implCompress,                   address)                                      \
   static_field(StubRoutines,                   _sha512_implCompressMB,                 address)                                      \
-  static_field(StubRoutines,                   _multiplyToLen,                         address)                                      \
   static_field(StubRoutines,                   _montgomeryMultiply,                    address)                                      \
   static_field(StubRoutines,                   _montgomerySquare,                      address)                                      \
                                                                                                                                      \
--- a/src/share/vm/runtime/vmStructs.cpp	Tue Jan 31 16:44:20 2017 +0100
+++ b/src/share/vm/runtime/vmStructs.cpp	Tue Jan 31 22:59:16 2017 +0100
@@ -3531,6 +3531,17 @@
       }
     }
   }
+
+  // Check for duplicate entries in structs array
+  for (int i = 0; localHotSpotVMStructs[i].typeName != NULL; i++) {
+    for (int j = i + 1; localHotSpotVMStructs[j].typeName != NULL; j++) {
+      if (strcmp(localHotSpotVMStructs[i].typeName, localHotSpotVMStructs[j].typeName) == 0 &&
+          strcmp(localHotSpotVMStructs[i].fieldName, localHotSpotVMStructs[j].fieldName) == 0) {
+        tty->print_cr("Duplicate entries for '%s::%s'", localHotSpotVMStructs[i].typeName, localHotSpotVMStructs[i].fieldName);
+        assert(false, "Duplicate types in localHotSpotVMStructs array");
+      }
+    }
+  }
 }
 #endif