Mercurial > hg > graal-jvmci-8
changeset 9881:7779b1d5ba37
don't synthesize a deoptState in ForeignCallNode is canDeoptimize == false
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Wed, 05 Jun 2013 14:18:35 +0200 |
parents | f7ec3ec8a03c |
children | 5945a36ccba4 |
files | graal/com.oracle.graal.nodes/src/com/oracle/graal/nodes/extended/ForeignCallNode.java |
diffstat | 1 files changed, 1 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- 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());