diff options
author | Ivan Dubrov <dubrov.ivan@gmail.com> | 2016-12-03 08:28:43 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-03 08:28:43 -0800 |
commit | f3c4f71195c8d15d22930a4f81bd85f8a85078d9 (patch) | |
tree | 419bd09e3267f3c53ad738689de0a55323b508e7 | |
parent | ac5158687d53a96a7691baa8c0d382ff9e968fd5 (diff) | |
parent | f6d40077568ea7443e5202bb39062d468b1680d2 (diff) | |
download | dcevm-f3c4f71195c8d15d22930a4f81bd85f8a85078d9.tar.gz dcevm-f3c4f71195c8d15d22930a4f81bd85f8a85078d9.zip |
Merge pull request #114 from skybber/masterlight-jdk8u112+7
Fix problem with java8 breakpoints
-rw-r--r-- | hotspot/.hg/patches/jvmti-getLoadedClasses-java8.patch | 19 | ||||
-rw-r--r-- | hotspot/.hg/patches/series | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/hotspot/.hg/patches/jvmti-getLoadedClasses-java8.patch b/hotspot/.hg/patches/jvmti-getLoadedClasses-java8.patch new file mode 100644 index 00000000..cde459da --- /dev/null +++ b/hotspot/.hg/patches/jvmti-getLoadedClasses-java8.patch @@ -0,0 +1,19 @@ +diff --git a/src/share/vm/prims/jvmtiGetLoadedClasses.cpp b/src/share/vm/prims/jvmtiGetLoadedClasses.cpp +index 70aede5..381868b 100644 +--- a/src/share/vm/prims/jvmtiGetLoadedClasses.cpp ++++ b/src/share/vm/prims/jvmtiGetLoadedClasses.cpp +@@ -42,7 +42,13 @@ + + void do_klass(Klass* k) { + // Collect all jclasses +- _classStack.push((jclass) _env->jni_reference(k->java_mirror())); ++ // DCEVM : LoadedClassesClosure in dcevm7 iterates over classes from SystemDictionary therefore the class "k" is always ++ // the new version (SystemDictionary stores only new versions). But the LoadedClassesClosure's functionality was ++ // changed in java8 where jvmtiLoadedClasses collects all classes from all classloaders, therefore we ++ // must use new versions only. ++ if (k->new_version()==NULL) { ++ _classStack.push((jclass) _env->jni_reference(k->java_mirror())); ++ } + } + + int extract(jclass* result_list) { diff --git a/hotspot/.hg/patches/series b/hotspot/.hg/patches/series index 0dd5cc48..0d9ce3bb 100644 --- a/hotspot/.hg/patches/series +++ b/hotspot/.hg/patches/series @@ -49,6 +49,7 @@ light-jdk8u20-b22.patch #+light-jdk8u20-b22 #+light-jdk8u31-b13 light-jdk8u40-b25.patch #+light-jdk8u40-b25 #+light-jdk8u45-b14 #+light-jdk8u51-b16 light-jdk8u66-b17.patch #+light-jdk8u66-b17 #+light-jdk8u74-b02 light-jdk8u92-b14.patch #+light-jdk8u92-b14 #+light-jdk8u102-b31 #+light-jdk8u111-b14 #+light-jdk8u112-b16 +jvmti-getLoadedClasses-java8.patch #+light-jdk8u112-b16 light-jdk8u20-deopt-cp.patch #+light-jdk8u20-b22 #+light-jdk8u31-b13 #+light-jdk8u40-b25 #+light-jdk8u45-b14 #+light-jdk8u51-b16 light-jdk8u66-b17-deopt-cp.patch #+light-jdk8u66-b17 #+light-jdk8u74-b02 #+light-jdk8u92-b14 #+light-jdk8u102-b31 #+light-jdk8u111-b14 #+light-jdk8u112-b16 dont-clear-f1.patch #+light-jdk8u74-b02 #+light-jdk8u92-b14 #+light-jdk8u102-b31 #+light-jdk8u111-b14 #+light-jdk8u112-b16 |