Skip to content

Commit d77215a

Browse files
committed
8299658: C1 compilation crashes in LinearScan::resolve_exception_edge
Reviewed-by: mbaesken Backport-of: cf2d33ca2ee08c61596ab10b7602500a6931fa31
1 parent d4e7c76 commit d77215a

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/hotspot/share/c1/c1_LinearScan.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1947,6 +1947,14 @@ void LinearScan::resolve_exception_edge(XHandler* handler, int throwing_op_id, i
19471947
// interval at the throwing instruction must be searched using the operands
19481948
// of the phi function
19491949
Value from_value = phi->operand_at(handler->phi_operand());
1950+
if (from_value == NULL) {
1951+
// We have reached here in a kotlin application running with JVMTI
1952+
// capability "can_access_local_variables".
1953+
// The illegal state is not yet propagated to this phi. Do it here.
1954+
phi->make_illegal();
1955+
// We can skip the illegal phi edge.
1956+
return;
1957+
}
19501958

19511959
// with phi functions it can happen that the same from_value is used in
19521960
// multiple mappings, so notify move-resolver that this is allowed

0 commit comments

Comments
 (0)