diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTBuilder.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTBuilder.java index 441422963fbecd470e0edaede395022b40dbdb17..eddab6d9daab0fa48fcf3ac0957d00073213e9b8 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTBuilder.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTBuilder.java @@ -46,7 +46,6 @@ import com.oracle.truffle.r.nodes.function.FormalArguments; import com.oracle.truffle.r.nodes.function.FunctionDefinitionNode; import com.oracle.truffle.r.nodes.function.FunctionExpressionNode; import com.oracle.truffle.r.nodes.function.PostProcessArgumentsNode; -import com.oracle.truffle.r.nodes.function.RCallNode; import com.oracle.truffle.r.nodes.function.RCallSpecialNode; import com.oracle.truffle.r.nodes.function.SaveArgumentsNode; import com.oracle.truffle.r.nodes.function.WrapDefaultArgumentNode; @@ -84,11 +83,6 @@ public final class RASTBuilder implements RCodeBuilder<RSyntaxNode> { this.constants = constants; } - @SuppressWarnings({"unused", "static-method"}) - private RCallNode unused() { - return null; // we need reference to RCallNode, otherwise it won't compile, compilation bug? - } - @Override public RSyntaxNode call(SourceSection source, RSyntaxNode lhs, List<Argument<RSyntaxNode>> args) { if (lhs instanceof RSyntaxLookup) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTUtils.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTUtils.java index 910e062082ce458937f3f726128fabc346fb5071..110a168f5d2460dc4e56ec5c8537ff20118363a6 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTUtils.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/RASTUtils.java @@ -33,7 +33,6 @@ import com.oracle.truffle.r.nodes.access.ReadVariadicComponentNode; import com.oracle.truffle.r.nodes.access.variables.ReadVariableNode; import com.oracle.truffle.r.nodes.builtin.RBuiltinNode; import com.oracle.truffle.r.nodes.function.PromiseNode.VarArgNode; -import com.oracle.truffle.r.nodes.function.RCallBaseNode; import com.oracle.truffle.r.nodes.function.RCallNode; import com.oracle.truffle.r.nodes.function.RCallSpecialNode; import com.oracle.truffle.r.nodes.function.WrapArgumentBaseNode; diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java index 67a858a2e7d25726f7db1b0591f28919e57955f3..f42f5c7b72ffb6682738120fb9b90d8485bce874 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java @@ -68,7 +68,6 @@ final class CachedExtractVectorNode extends CachedVectorNode { private final VectorLengthProfile vectorLengthProfile = VectorLengthProfile.create(); private final RAttributeProfiles vectorNamesProfile = RAttributeProfiles.create(); - private final ValueProfile vectorClassProfile = ValueProfile.createClassProfile(); @Child private WriteIndexedVectorNode writeVectorNode; @Child private PositionsCheckNode positionsCheckNode; diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/env/frame/FrameSlotChangeMonitor.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/env/frame/FrameSlotChangeMonitor.java index c616637b9d65a548a3bbbaa1c7305a4c1e277e08..8455c58c0cfc800c59c6c75c67e4db142cee5a14 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/env/frame/FrameSlotChangeMonitor.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/env/frame/FrameSlotChangeMonitor.java @@ -391,9 +391,11 @@ public final class FrameSlotChangeMonitor { } } target.lookupResults.clear(); - target.previousLookups.clear(); - for (FrameDescriptor sub : target.subDescriptors) { - invalidateAllNames(getMetaData(sub)); + if (!target.previousLookups.isEmpty()) { + target.previousLookups.clear(); + for (FrameDescriptor sub : target.subDescriptors) { + invalidateAllNames(getMetaData(sub)); + } } } diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RBaseNode.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RBaseNode.java index eb582730d2995159cc92e7df581710f0d123e068..b3a6037cc7984b7723353c16950b94a6ba60b4a6 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RBaseNode.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RBaseNode.java @@ -100,7 +100,7 @@ public abstract class RBaseNode extends Node { /** * Handles the discovery of the {@link RSyntaxNode} that this node is derived from. */ - public RSyntaxNode asRSyntaxNode() { + public final RSyntaxNode asRSyntaxNode() { if (isRSyntaxNode()) { return (RSyntaxNode) this; } else { @@ -111,7 +111,7 @@ public abstract class RBaseNode extends Node { /** * See comment on {@link #checkGetRSyntaxNode()}. */ - public RSyntaxNode checkasRSyntaxNode() { + public final RSyntaxNode checkasRSyntaxNode() { if (isRSyntaxNode()) { return (RSyntaxNode) this; } else {