Skip to content
Snippets Groups Projects
Commit 3525c506 authored by Lukas Stadler's avatar Lukas Stadler
Browse files

Merge pull request #472 in G/fastr from...

Merge pull request #472 in G/fastr from ~LUKAS.STADLER_ORACLE.COM/fastr:feature/speedup_tests to master

* commit 'b21dc601':
  use “previousLookups” to speed up FrameSlotChangeMonitor.invalidateAllNames
  minor cleanups
parents a66d6c04 b21dc601
No related branches found
No related tags found
No related merge requests found
......@@ -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) {
......
......@@ -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;
......
......@@ -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;
......
......@@ -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));
}
}
}
......
......@@ -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 {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment