8230019: [REDO] compiler/types/correctness/* tests fail with "assert(recv == __null || recv->is_klass()) failed: wrong type"
Summary: Explicitly set the receiver klass in the ci MDO to NULL if it is NULL in the MDO while translating.
Reviewed-by: kvn, thartmann
--- a/src/hotspot/share/ci/ciMethodData.cpp Wed Oct 30 14:08:07 2019 +0000
+++ b/src/hotspot/share/ci/ciMethodData.cpp Tue Oct 29 14:29:40 2019 +0100
@@ -266,6 +266,8 @@
// With concurrent class unloading, the MDO could have stale metadata; override it
clear_row(row);
}
+ } else {
+ set_receiver(row, NULL);
}
}
}
--- a/test/hotspot/jtreg/ProblemList.txt Wed Oct 30 14:08:07 2019 +0000
+++ b/test/hotspot/jtreg/ProblemList.txt Tue Oct 29 14:29:40 2019 +0100
@@ -50,8 +50,8 @@
compiler/jvmci/compilerToVM/InvalidateInstalledCodeTest.java 8163894 generic-all
compiler/tiered/LevelTransitionTest.java 8067651 generic-all
-compiler/types/correctness/CorrectnessTest.java 8230019,8225620 generic-all,solaris-sparcv9
-compiler/types/correctness/OffTest.java 8230019,8225620 generic-all,solaris-sparcv9
+compiler/types/correctness/CorrectnessTest.java 8225620 solaris-sparcv9
+compiler/types/correctness/OffTest.java 8225620 solaris-sparcv9
compiler/c2/Test6852078.java 8194310 generic-all
compiler/c2/Test8004741.java 8214904 generic-all