Mercurial > hg > truffle
changeset 9685:aee2685c8d07
Merge.
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Tue, 14 May 2013 15:45:55 +0200 |
parents | 35212baf46e5 (diff) 86d24f120b78 (current diff) |
children | 120b2ac480b7 |
files | |
diffstat | 3 files changed, 15 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/ExceptionHandlerStub.java Tue May 14 15:02:07 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/ExceptionHandlerStub.java Tue May 14 15:45:55 2013 +0200 @@ -73,7 +73,7 @@ if (logging()) { printf("handling exception %p (", Word.fromObject(exception).rawValue()); decipher(Word.fromObject(exception).rawValue()); - printf(") at %p (", Word.fromObject(exception).rawValue(), exceptionPc.rawValue()); + printf(") at %p (", exceptionPc.rawValue()); decipher(exceptionPc.rawValue()); printf(")\n"); }
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/UnwindExceptionToCallerStub.java Tue May 14 15:02:07 2013 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/stubs/UnwindExceptionToCallerStub.java Tue May 14 15:45:55 2013 +0200 @@ -66,7 +66,7 @@ if (logging()) { printf("unwinding exception %p (", exceptionOop.rawValue()); decipher(exceptionOop.rawValue()); - printf(") at %p (", exceptionOop.rawValue(), returnAddress.rawValue()); + printf(") at %p (", returnAddress.rawValue()); decipher(returnAddress.rawValue()); printf(")\n"); }
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Tue May 14 15:02:07 2013 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/InliningUtil.java Tue May 14 15:45:55 2013 +0200 @@ -33,6 +33,7 @@ import com.oracle.graal.api.meta.ResolvedJavaType.Representation; import com.oracle.graal.debug.*; import com.oracle.graal.graph.*; +import com.oracle.graal.graph.Node.*; import com.oracle.graal.nodes.*; import com.oracle.graal.nodes.calc.*; import com.oracle.graal.nodes.extended.*; @@ -1267,6 +1268,8 @@ monitor.setLockDepth(monitor.getLockDepth() + callerLockDepth); } } + } else { + assert checkContainsOnlyInvalidOrAfterFrameState(duplicates); } Node returnValue = null; if (returnNode != null) { @@ -1289,6 +1292,16 @@ return duplicates; } + private static boolean checkContainsOnlyInvalidOrAfterFrameState(Map<Node, Node> duplicates) { + for (Node node : duplicates.values()) { + if (node instanceof FrameState) { + FrameState frameState = (FrameState) node; + assert frameState.bci == FrameState.AFTER_BCI || frameState.bci == FrameState.INVALID_FRAMESTATE_BCI : node.toString(Verbosity.Debugger); + } + } + return true; + } + public static void receiverNullCheck(Invoke invoke) { MethodCallTargetNode callTarget = (MethodCallTargetNode) invoke.callTarget(); StructuredGraph graph = callTarget.graph();