# HG changeset patch # User Lukas Stadler # Date 1370434715 -7200 # Node ID 7779b1d5ba37beb5262dff185bc558fb1b90bd50 # Parent f7ec3ec8a03ca0cde31fac1f37001b34622617e0 don't synthesize a deoptState in ForeignCallNode is canDeoptimize == false diff -r f7ec3ec8a03c -r 7779b1d5ba37 graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java --- a/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java Wed Jun 05 13:10:42 2013 +0200 +++ b/graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java Wed Jun 05 14:18:35 2013 +0200 @@ -91,7 +91,7 @@ public FrameState getDeoptimizationState() { if (deoptState != null) { return deoptState; - } else if (stateAfter() != null) { + } else if (stateAfter() != null && canDeoptimize()) { FrameState stateDuring = stateAfter(); if ((stateDuring.stackSize() > 0 && stateDuring.stackAt(stateDuring.stackSize() - 1) == this) || (stateDuring.stackSize() > 1 && stateDuring.stackAt(stateDuring.stackSize() - 2) == this)) { stateDuring = stateDuring.duplicateModified(stateDuring.bci, stateDuring.rethrowException(), this.kind());