# HG changeset patch # User Andreas Woess # Date 1410980240 -7200 # Node ID 0a35e2789735a40421fce954df43e7d73a362154 # Parent 3837c6aa9fd03e943597f78f19e1afee73665a4e Truffle: remove unnecessary DefaultTruffleRuntime fields diff -r 3837c6aa9fd0 -r 0a35e2789735 graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultCallTarget.java --- a/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultCallTarget.java Thu Sep 18 12:28:11 2014 +0200 +++ b/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultCallTarget.java Wed Sep 17 20:57:20 2014 +0200 @@ -35,13 +35,11 @@ public class DefaultCallTarget implements RootCallTarget { private final RootNode rootNode; - private final DefaultTruffleRuntime defaultTruffleRuntime; - public DefaultCallTarget(RootNode function, DefaultTruffleRuntime defaultTruffleRuntime) { + public DefaultCallTarget(RootNode function) { this.rootNode = function; this.rootNode.adoptChildren(); this.rootNode.setCallTarget(this); - this.defaultTruffleRuntime = defaultTruffleRuntime; } @Override @@ -56,7 +54,7 @@ @Override public Object call(Object... args) { final VirtualFrame frame = new DefaultVirtualFrame(getRootNode().getFrameDescriptor(), args); - FrameInstance oldCurrentFrame = defaultTruffleRuntime.setCurrentFrame(new FrameInstance() { + FrameInstance oldCurrentFrame = defaultTruffleRuntime().setCurrentFrame(new FrameInstance() { public Frame getFrame(FrameAccess access, boolean slowPath) { return frame; @@ -77,7 +75,11 @@ try { return getRootNode().execute(frame); } finally { - defaultTruffleRuntime.setCurrentFrame(oldCurrentFrame); + defaultTruffleRuntime().setCurrentFrame(oldCurrentFrame); } } + + private static DefaultTruffleRuntime defaultTruffleRuntime() { + return (DefaultTruffleRuntime) Truffle.getRuntime(); + } } diff -r 3837c6aa9fd0 -r 0a35e2789735 graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultDirectCallNode.java --- a/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultDirectCallNode.java Thu Sep 18 12:28:11 2014 +0200 +++ b/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultDirectCallNode.java Wed Sep 17 20:57:20 2014 +0200 @@ -34,16 +34,14 @@ public final class DefaultDirectCallNode extends DirectCallNode { private boolean inliningForced; - private final DefaultTruffleRuntime defaultTruffleRuntime; - public DefaultDirectCallNode(CallTarget target, DefaultTruffleRuntime defaultTruffleRuntime) { + public DefaultDirectCallNode(CallTarget target) { super(target); - this.defaultTruffleRuntime = defaultTruffleRuntime; } @Override public Object call(final VirtualFrame frame, Object[] arguments) { - final CallTarget currentCallTarget = defaultTruffleRuntime.getCurrentFrame().getCallTarget(); + final CallTarget currentCallTarget = defaultTruffleRuntime().getCurrentFrame().getCallTarget(); FrameInstance frameInstance = new FrameInstance() { public Frame getFrame(FrameAccess access, boolean slowPath) { @@ -62,11 +60,11 @@ return currentCallTarget; } }; - defaultTruffleRuntime.pushFrame(frameInstance); + defaultTruffleRuntime().pushFrame(frameInstance); try { return getCurrentCallTarget().call(arguments); } finally { - defaultTruffleRuntime.popFrame(); + defaultTruffleRuntime().popFrame(); } } @@ -109,4 +107,8 @@ public String toString() { return (getParent() != null ? getParent().toString() : super.toString()) + " call " + getCurrentCallTarget().toString(); } + + private static DefaultTruffleRuntime defaultTruffleRuntime() { + return (DefaultTruffleRuntime) Truffle.getRuntime(); + } } diff -r 3837c6aa9fd0 -r 0a35e2789735 graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultTruffleRuntime.java --- a/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultTruffleRuntime.java Thu Sep 18 12:28:11 2014 +0200 +++ b/graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultTruffleRuntime.java Wed Sep 17 20:57:20 2014 +0200 @@ -56,13 +56,13 @@ @Override public RootCallTarget createCallTarget(RootNode rootNode) { - DefaultCallTarget target = new DefaultCallTarget(rootNode, this); + DefaultCallTarget target = new DefaultCallTarget(rootNode); callTargets.put(target, null); return target; } public DirectCallNode createDirectCallNode(CallTarget target) { - return new DefaultDirectCallNode(target, this); + return new DefaultDirectCallNode(target); } public IndirectCallNode createIndirectCallNode() {