-
Bug
-
Resolution: Fixed
-
P4
-
11, 16, 17
-
b13
The following assert triggers when running test/hotspot/jtreg/compiler/unsafe/OpaqueAccesses.java
--- a/src/hotspot/share/opto/library_call.cpp
+++ b/src/hotspot/share/opto/library_call.cpp
@@ -108,7 +108,9 @@ JVMState* LibraryIntrinsic::generate(JVMState* jvms) {
#endif
ciMethod* callee = kit.callee();
const int bci = kit.bci();
-
+#ifdef ASSERT
+ Node* ctrl = kit.control();
+#endif
// Try to inline the intrinsic.
if ((CheckIntrinsics ? callee->intrinsic_candidate() : true) &&
kit.try_to_inline(_last_predicate)) {
@@ -132,6 +134,7 @@ JVMState* LibraryIntrinsic::generate(JVMState* jvms) {
}
// The intrinsic bailed out
+ assert(ctrl == kit.control(), "Control flow was added although we bailed out");
if (jvms->has_method()) {
// Not a root compile.
const char* msg;
--- a/src/hotspot/share/opto/library_call.cpp
+++ b/src/hotspot/share/opto/library_call.cpp
@@ -108,7 +108,9 @@ JVMState* LibraryIntrinsic::generate(JVMState* jvms) {
#endif
ciMethod* callee = kit.callee();
const int bci = kit.bci();
-
+#ifdef ASSERT
+ Node* ctrl = kit.control();
+#endif
// Try to inline the intrinsic.
if ((CheckIntrinsics ? callee->intrinsic_candidate() : true) &&
kit.try_to_inline(_last_predicate)) {
@@ -132,6 +134,7 @@ JVMState* LibraryIntrinsic::generate(JVMState* jvms) {
}
// The intrinsic bailed out
+ assert(ctrl == kit.control(), "Control flow was added although we bailed out");
if (jvms->has_method()) {
// Not a root compile.
const char* msg;
- relates to
-
JDK-8262998 Vector API intrinsincs should not modify IR when bailing out
-
- Resolved
-
-
JDK-8262231 [lworld] C2 compilation fails with assert "user must call transfer_exceptions_into_jvms"
-
- Resolved
-
-
JDK-8284635 Crashes after 8282221: assert(ctrl == kit.control()) failed: Control flow was added although the intrinsic bailed out
-
- Resolved
-