Mercurial > hg > truffle
changeset 22450:fa1061fb21fa
Truffle/Instrumentation: Language-specific Wrapper nodes no longer need to explicitly propagate KillException or QuitException.
author | Michael Van De Vanter <michael.van.de.vanter@oracle.com> |
---|---|
date | Wed, 04 Nov 2015 16:12:56 -0800 |
parents | 5df298d7c949 |
children | ad180d3d4bd7 |
files | truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestNodes.java truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ProbeNode.java truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStatementWrapperNode.java truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java |
diffstat | 5 files changed, 6 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestNodes.java Wed Nov 04 16:35:38 2015 -0800 +++ b/truffle/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/instrument/InstrumentationTestNodes.java Wed Nov 04 16:12:56 2015 -0800 @@ -26,7 +26,6 @@ import com.oracle.truffle.api.frame.VirtualFrame; import com.oracle.truffle.api.instrument.EventHandlerNode; import com.oracle.truffle.api.instrument.Instrumenter; -import com.oracle.truffle.api.instrument.KillException; import com.oracle.truffle.api.instrument.Probe; import com.oracle.truffle.api.instrument.WrapperNode; import com.oracle.truffle.api.nodes.Node; @@ -81,8 +80,6 @@ try { result = child.execute(vFrame); eventHandlerNode.returnValue(child, vFrame, result); - } catch (KillException e) { - throw (e); } catch (Exception e) { eventHandlerNode.returnExceptional(child, vFrame, e); throw (e);
--- a/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ProbeNode.java Wed Nov 04 16:35:38 2015 -0800 +++ b/truffle/com.oracle.truffle.api/src/com/oracle/truffle/api/instrument/ProbeNode.java Wed Nov 04 16:12:56 2015 -0800 @@ -111,6 +111,12 @@ @Override public void returnExceptional(Node node, VirtualFrame vFrame, Exception exception) { + if (exception instanceof KillException) { + throw (KillException) exception; + } + if (exception instanceof QuitException) { + throw (QuitException) exception; + } this.probe.checkProbeUnchanged(); if (firstInstrumentNode != null) { firstInstrumentNode.returnExceptional(node, vFrame, exception);
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java Wed Nov 04 16:35:38 2015 -0800 +++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLExpressionWrapperNode.java Wed Nov 04 16:12:56 2015 -0800 @@ -43,7 +43,6 @@ import com.oracle.truffle.api.frame.VirtualFrame; import com.oracle.truffle.api.instrument.EventHandlerNode; import com.oracle.truffle.api.instrument.Instrumenter; -import com.oracle.truffle.api.instrument.KillException; import com.oracle.truffle.api.instrument.Probe; import com.oracle.truffle.api.instrument.ProbeInstrument; import com.oracle.truffle.api.instrument.WrapperNode; @@ -107,8 +106,6 @@ try { result = child.executeGeneric(vFrame); eventHandlerNode.returnValue(child, vFrame, result); - } catch (KillException e) { - throw (e); } catch (Exception e) { eventHandlerNode.returnExceptional(child, vFrame, e); throw (e);
--- a/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStatementWrapperNode.java Wed Nov 04 16:35:38 2015 -0800 +++ b/truffle/com.oracle.truffle.sl/src/com/oracle/truffle/sl/nodes/instrument/SLStatementWrapperNode.java Wed Nov 04 16:12:56 2015 -0800 @@ -43,7 +43,6 @@ import com.oracle.truffle.api.frame.VirtualFrame; import com.oracle.truffle.api.instrument.EventHandlerNode; import com.oracle.truffle.api.instrument.Instrumenter; -import com.oracle.truffle.api.instrument.KillException; import com.oracle.truffle.api.instrument.Probe; import com.oracle.truffle.api.instrument.ProbeInstrument; import com.oracle.truffle.api.instrument.WrapperNode; @@ -100,8 +99,6 @@ try { child.executeVoid(vFrame); eventHandlerNode.returnVoid(child, vFrame); - } catch (KillException e) { - throw (e); } catch (Exception e) { eventHandlerNode.returnExceptional(child, vFrame, e); throw (e);
--- a/truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java Wed Nov 04 16:35:38 2015 -0800 +++ b/truffle/com.oracle.truffle.tools.test/src/com/oracle/truffle/tools/test/ToolTestUtil.java Wed Nov 04 16:12:56 2015 -0800 @@ -35,7 +35,6 @@ import com.oracle.truffle.api.instrument.ASTProber; import com.oracle.truffle.api.instrument.EventHandlerNode; import com.oracle.truffle.api.instrument.Instrumenter; -import com.oracle.truffle.api.instrument.KillException; import com.oracle.truffle.api.instrument.Probe; import com.oracle.truffle.api.instrument.SyntaxTag; import com.oracle.truffle.api.instrument.Visualizer; @@ -212,8 +211,6 @@ try { result = child.execute(vFrame); eventHandlerNode.returnValue(child, vFrame, result); - } catch (KillException e) { - throw (e); } catch (Exception e) { eventHandlerNode.returnExceptional(child, vFrame, e); throw (e);