Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jruby/jruby
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 56772b14a19f
Choose a base ref
...
head repository: jruby/jruby
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cd1d55c225e8
Choose a head ref
  • 3 commits
  • 26 files changed
  • 1 contributor

Commits on Jun 11, 2016

  1. Copy the full SHA
    fb4d2cf View commit details
  2. Copy the full SHA
    fbc59b3 View commit details
  3. Copy the full SHA
    cd1d55c View commit details
Showing with 40 additions and 47 deletions.
  1. +1 −1 truffle/src/main/java/org/jruby/truffle/builtins/YieldingCoreMethodNode.java
  2. +1 −1 truffle/src/main/java/org/jruby/truffle/core/CoreLibrary.java
  3. +1 −1 truffle/src/main/java/org/jruby/truffle/core/basicobject/BasicObjectNodes.java
  4. +1 −1 truffle/src/main/java/org/jruby/truffle/core/bool/FalseClassNodes.java
  5. +2 −2 truffle/src/main/java/org/jruby/truffle/core/bool/TrueClassNodes.java
  6. +1 −5 truffle/src/main/java/org/jruby/truffle/core/cast/BooleanCastNode.java
  7. +1 −4 truffle/src/main/java/org/jruby/truffle/core/cast/BooleanCastWithDefaultNode.java
  8. +1 −1 truffle/src/main/java/org/jruby/truffle/core/cast/SplatCastNode.java
  9. +6 −6 truffle/src/main/java/org/jruby/truffle/core/kernel/KernelNodes.java
  10. +1 −1 truffle/src/main/java/org/jruby/truffle/core/kernel/TruffleKernelNodes.java
  11. +6 −6 truffle/src/main/java/org/jruby/truffle/core/module/ModuleNodes.java
  12. +1 −1 truffle/src/main/java/org/jruby/truffle/core/numeric/BignumNodes.java
  13. +1 −1 truffle/src/main/java/org/jruby/truffle/core/queue/QueueNodes.java
  14. +2 −2 truffle/src/main/java/org/jruby/truffle/core/queue/SizedQueueNodes.java
  15. +2 −2 truffle/src/main/java/org/jruby/truffle/core/range/RangeNodes.java
  16. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/AndNode.java
  17. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/IfElseNode.java
  18. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/IfNode.java
  19. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/NotNode.java
  20. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/OrNode.java
  21. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/UnlessNode.java
  22. +1 −1 truffle/src/main/java/org/jruby/truffle/language/control/WhileNode.java
  23. +1 −1 truffle/src/main/java/org/jruby/truffle/language/dispatch/CallDispatchHeadNode.java
  24. +1 −1 truffle/src/main/java/org/jruby/truffle/language/dispatch/RubyCallNode.java
  25. +2 −2 truffle/src/main/java/org/jruby/truffle/language/locals/FlipFlopNode.java
  26. +1 −1 truffle/src/main/java/org/jruby/truffle/stdlib/bigdecimal/CreateBigDecimalNode.java
Original file line number Diff line number Diff line change
@@ -35,7 +35,7 @@ public YieldingCoreMethodNode(RubyContext context, SourceSection sourceSection)
private boolean booleanCast(VirtualFrame frame, Object value) {
if (booleanCastNode == null) {
CompilerDirectives.transferToInterpreterAndInvalidate();
booleanCastNode = insert(BooleanCastNodeGen.create(getContext(), getSourceSection(), null));
booleanCastNode = insert(BooleanCastNodeGen.create(null));
}
return booleanCastNode.executeBoolean(frame, value);
}
Original file line number Diff line number Diff line change
@@ -1143,7 +1143,7 @@ public static double toDouble(Object value, DynamicObject nil) {
}

public static boolean fitsIntoInteger(long value) {
return value >= Integer.MIN_VALUE && value <= Integer.MAX_VALUE;
return ((int) value) == value;
}

public RubyContext getContext() {
Original file line number Diff line number Diff line change
@@ -63,7 +63,7 @@ public abstract static class NotNode extends UnaryCoreMethodNode {

@CreateCast("operand")
public RubyNode createCast(RubyNode operand) {
return BooleanCastNodeGen.create(null, null, operand);
return BooleanCastNodeGen.create(operand);
}

@Specialization
Original file line number Diff line number Diff line change
@@ -34,7 +34,7 @@ public abstract static class OrXorNode extends UnaryCoreMethodNode {

@CreateCast("operand")
public RubyNode createCast(RubyNode operand) {
return BooleanCastNodeGen.create(null, null, operand);
return BooleanCastNodeGen.create(operand);
}

@Specialization
Original file line number Diff line number Diff line change
@@ -26,7 +26,7 @@ public abstract static class AndNode extends UnaryCoreMethodNode {

@CreateCast("operand")
public RubyNode createCast(RubyNode operand) {
return BooleanCastNodeGen.create(null, null, operand);
return BooleanCastNodeGen.create(operand);
}

@Specialization
@@ -49,7 +49,7 @@ public abstract static class XorNode extends UnaryCoreMethodNode {

@CreateCast("operand")
public RubyNode createCast(RubyNode operand) {
return BooleanCastNodeGen.create(null, null, operand);
return BooleanCastNodeGen.create(operand);
}

@Specialization
Original file line number Diff line number Diff line change
@@ -14,8 +14,6 @@
import com.oracle.truffle.api.frame.VirtualFrame;
import com.oracle.truffle.api.instrumentation.Instrumentable;
import com.oracle.truffle.api.object.DynamicObject;
import com.oracle.truffle.api.source.SourceSection;
import org.jruby.truffle.RubyContext;
import org.jruby.truffle.language.RubyNode;

/**
@@ -25,12 +23,10 @@
@Instrumentable(factory = BooleanCastNodeWrapper.class)
public abstract class BooleanCastNode extends RubyNode {

public BooleanCastNode(RubyContext context, SourceSection sourceSection) {
super(context, sourceSection);
public BooleanCastNode() {
}

public BooleanCastNode(BooleanCastNode node) {
this(node.getContext(), node.getSourceSection());
}

public abstract boolean executeBoolean(VirtualFrame frame, Object value);
Original file line number Diff line number Diff line change
@@ -13,8 +13,6 @@
import com.oracle.truffle.api.dsl.Specialization;
import com.oracle.truffle.api.frame.VirtualFrame;
import com.oracle.truffle.api.object.DynamicObject;
import com.oracle.truffle.api.source.SourceSection;
import org.jruby.truffle.RubyContext;
import org.jruby.truffle.language.NotProvided;
import org.jruby.truffle.language.RubyNode;

@@ -26,8 +24,7 @@ public abstract class BooleanCastWithDefaultNode extends RubyNode {

private final boolean defaultValue;

public BooleanCastWithDefaultNode(RubyContext context, SourceSection sourceSection, boolean defaultValue) {
super(context, sourceSection);
public BooleanCastWithDefaultNode(boolean defaultValue) {
this.defaultValue = defaultValue;
}

Original file line number Diff line number Diff line change
@@ -55,7 +55,7 @@ public SplatCastNode(RubyContext context, SourceSection sourceSection, NilBehavi
// Calling private #to_a is allowed for the *splat operator.
dup = ArrayDupNodeGen.create(context, sourceSection, null);
respondToToA = DispatchHeadNodeFactory.createMethodCall(context, true, MissingBehavior.RETURN_MISSING);
respondToCast = BooleanCastNodeGen.create(context, sourceSection, null);
respondToCast = BooleanCastNodeGen.create(null);
toA = DispatchHeadNodeFactory.createMethodCall(context, true, MissingBehavior.RETURN_MISSING);
String name = useToAry ? "to_ary" : "to_a";
conversionMethod = context.getSymbolTable().getSymbol(name);
Original file line number Diff line number Diff line change
@@ -1212,7 +1212,7 @@ public abstract static class MethodsNode extends CoreMethodNode {

@CreateCast("regular")
public RubyNode coerceToBoolean(RubyNode regular) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, regular);
return BooleanCastWithDefaultNodeGen.create(true, regular);
}

@TruffleBoundary
@@ -1266,7 +1266,7 @@ public PrivateMethodsNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@TruffleBoundary
@@ -1313,7 +1313,7 @@ public ProtectedMethodsNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@TruffleBoundary
@@ -1343,7 +1343,7 @@ public PublicMethodsNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@TruffleBoundary
@@ -1494,7 +1494,7 @@ public RespondToNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("includeProtectedAndPrivate")
public RubyNode coerceToBoolean(RubyNode includeProtectedAndPrivate) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, includeProtectedAndPrivate);
return BooleanCastWithDefaultNodeGen.create(false, includeProtectedAndPrivate);
}

@Specialization(guards = "isRubyString(name)")
@@ -1611,7 +1611,7 @@ public SingletonMethodsNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@TruffleBoundary
Original file line number Diff line number Diff line change
@@ -59,7 +59,7 @@ public abstract static class LoadNode extends CoreMethodNode {

@CreateCast("wrap")
public RubyNode coerceToBoolean(RubyNode inherit) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, inherit);
return BooleanCastWithDefaultNodeGen.create(false, inherit);
}

@Specialization(guards = "isRubyString(file)")
Original file line number Diff line number Diff line change
@@ -775,7 +775,7 @@ public abstract static class ConstantsNode extends CoreMethodNode {

@CreateCast("inherit")
public RubyNode coerceToBoolean(RubyNode inherit) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, inherit);
return BooleanCastWithDefaultNodeGen.create(true, inherit);
}

@TruffleBoundary
@@ -817,7 +817,7 @@ public RubyNode coerceToString(RubyNode name) {

@CreateCast("inherit")
public RubyNode coerceToBoolean(RubyNode inherit) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, inherit);
return BooleanCastWithDefaultNodeGen.create(true, inherit);
}

@TruffleBoundary
@@ -848,7 +848,7 @@ public RubyNode coerceToSymbolOrString(RubyNode name) {

@CreateCast("inherit")
public RubyNode coerceToBoolean(RubyNode inherit) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, inherit);
return BooleanCastWithDefaultNodeGen.create(true, inherit);
}

// Symbol
@@ -1216,7 +1216,7 @@ public RubyNode coerceToString(RubyNode name) {

@CreateCast("inherit")
public RubyNode coerceToBoolean(RubyNode inherit) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, inherit);
return BooleanCastWithDefaultNodeGen.create(true, inherit);
}

@TruffleBoundary
@@ -1453,7 +1453,7 @@ public AbstractInstanceMethodsNode(RubyContext context, SourceSection sourceSect

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@Specialization
@@ -1554,7 +1554,7 @@ public abstract static class InstanceMethodsNode extends CoreMethodNode {

@CreateCast("includeAncestors")
public RubyNode coerceToBoolean(RubyNode includeAncestors) {
return BooleanCastWithDefaultNodeGen.create(null, null, true, includeAncestors);
return BooleanCastWithDefaultNodeGen.create(true, includeAncestors);
}

@TruffleBoundary
Original file line number Diff line number Diff line change
@@ -309,7 +309,7 @@ public boolean equal(DynamicObject a, DynamicObject b) {
public boolean equal(VirtualFrame frame, DynamicObject a, DynamicObject b) {
if (booleanCastNode == null) {
CompilerDirectives.transferToInterpreterAndInvalidate();
booleanCastNode = insert(BooleanCastNodeGen.create(getContext(), getSourceSection(), null));
booleanCastNode = insert(BooleanCastNodeGen.create(null));
}

if (reverseCallNode == null) {
Original file line number Diff line number Diff line change
@@ -85,7 +85,7 @@ public abstract static class PopNode extends CoreMethodNode {

@CreateCast("nonBlocking")
public RubyNode coerceToBoolean(RubyNode nonBlocking) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, nonBlocking);
return BooleanCastWithDefaultNodeGen.create(false, nonBlocking);
}

@Specialization(guards = "!nonBlocking")
Original file line number Diff line number Diff line change
@@ -114,7 +114,7 @@ public abstract static class PushNode extends CoreMethodNode {

@CreateCast("nonBlocking")
public RubyNode coerceToBoolean(RubyNode nonBlocking) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, nonBlocking);
return BooleanCastWithDefaultNodeGen.create(false, nonBlocking);
}

@Specialization(guards = "!nonBlocking")
@@ -167,7 +167,7 @@ public abstract static class PopNode extends CoreMethodNode {

@CreateCast("nonBlocking")
public RubyNode coerceToBoolean(RubyNode nonBlocking) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, nonBlocking);
return BooleanCastWithDefaultNodeGen.create(false, nonBlocking);
}

@Specialization(guards = "!nonBlocking")
Original file line number Diff line number Diff line change
@@ -489,7 +489,7 @@ public abstract static class InternalSetExcludeEndNode extends RubyNode {

@CreateCast("excludeEnd")
public RubyNode castToBoolean(RubyNode excludeEnd) {
return BooleanCastNodeGen.create(null, null, excludeEnd);
return BooleanCastNodeGen.create(excludeEnd);
}

@Specialization(guards = "isObjectRange(range)")
@@ -521,7 +521,7 @@ public NewNode(RubyContext context, SourceSection sourceSection) {

@CreateCast("excludeEnd")
public RubyNode coerceToBoolean(RubyNode excludeEnd) {
return BooleanCastWithDefaultNodeGen.create(null, null, false, excludeEnd);
return BooleanCastWithDefaultNodeGen.create(false, excludeEnd);
}

@Specialization(guards = "rubyClass == rangeClass")
Original file line number Diff line number Diff line change
@@ -30,7 +30,7 @@ public AndNode(RubyContext context, SourceSection sourceSection, RubyNode left,
super(context, sourceSection);
this.left = left;
this.right = right;
leftCast = BooleanCastNodeGen.create(context, sourceSection, null);
leftCast = BooleanCastNodeGen.create(null);
}

@Override
Original file line number Diff line number Diff line change
@@ -28,7 +28,7 @@ public class IfElseNode extends RubyNode {
public IfElseNode(RubyContext context, SourceSection sourceSection, RubyNode condition, RubyNode thenBody, RubyNode elseBody) {
super(context, sourceSection);

this.condition = BooleanCastNodeGen.create(context, sourceSection, condition);
this.condition = BooleanCastNodeGen.create(condition);
this.thenBody = thenBody;
this.elseBody = elseBody;
}
Original file line number Diff line number Diff line change
@@ -27,7 +27,7 @@ public class IfNode extends RubyNode {
public IfNode(RubyContext context, SourceSection sourceSection, RubyNode condition, RubyNode thenBody) {
super(context, sourceSection);

this.condition = BooleanCastNodeGen.create(context, sourceSection, condition);
this.condition = BooleanCastNodeGen.create(condition);
this.thenBody = thenBody;
}

Original file line number Diff line number Diff line change
@@ -22,7 +22,7 @@ public class NotNode extends RubyNode {

public NotNode(RubyContext context, SourceSection sourceSection, RubyNode child) {
super(context, sourceSection);
this.child = BooleanCastNodeGen.create(context, sourceSection, child);
this.child = BooleanCastNodeGen.create(child);
}

@Override
Original file line number Diff line number Diff line change
@@ -30,7 +30,7 @@ public OrNode(RubyContext context, SourceSection sourceSection, RubyNode left, R
super(context, sourceSection);
this.left = left;
this.right = right;
leftCast = BooleanCastNodeGen.create(context, sourceSection, null);
leftCast = BooleanCastNodeGen.create(null);
}

@Override
Original file line number Diff line number Diff line change
@@ -27,7 +27,7 @@ public class UnlessNode extends RubyNode {
public UnlessNode(RubyContext context, SourceSection sourceSection, RubyNode condition, RubyNode thenBody) {
super(context, sourceSection);

this.condition = BooleanCastNodeGen.create(context, sourceSection, condition);
this.condition = BooleanCastNodeGen.create(condition);
this.thenBody = thenBody;
}

Original file line number Diff line number Diff line change
@@ -60,7 +60,7 @@ private static abstract class WhileRepeatingBaseNode extends Node implements Rep

public WhileRepeatingBaseNode(RubyContext context, RubyNode condition, RubyNode body) {
this.context = context;
this.condition = BooleanCastNodeGen.create(context, condition.getSourceSection(), condition);
this.condition = BooleanCastNodeGen.create(condition);
this.body = body;
}

Original file line number Diff line number Diff line change
@@ -64,7 +64,7 @@ public boolean callBoolean(
Object... argumentsObjects) {
if (booleanCastNode == null) {
CompilerDirectives.transferToInterpreterAndInvalidate();
booleanCastNode = insert(BooleanCastNodeGen.create(context, getSourceSection(), null));
booleanCastNode = insert(BooleanCastNodeGen.create(null));
}
return booleanCastNode.executeBoolean(frame,
dispatch(frame, receiverObject, methodName, blockObject, argumentsObjects));
Original file line number Diff line number Diff line change
@@ -211,7 +211,7 @@ private Object respondToMissing(VirtualFrame frame, Object receiverObject) {
private boolean castRespondToMissingToBoolean(VirtualFrame frame, final Object r) {
if (respondToMissingCast == null) {
CompilerDirectives.transferToInterpreterAndInvalidate();
respondToMissingCast = insert(BooleanCastNodeGen.create(getContext(), getSourceSection(), null));
respondToMissingCast = insert(BooleanCastNodeGen.create(null));
}
return respondToMissingCast.executeBoolean(frame, r);
}
Original file line number Diff line number Diff line change
@@ -28,8 +28,8 @@ public FlipFlopNode(RubyContext context, SourceSection sourceSection, RubyNode b
FlipFlopStateNode stateNode, boolean exclusive) {
super(context, sourceSection);
this.exclusive = exclusive;
this.begin = BooleanCastNodeGen.create(context, sourceSection, begin);
this.end = BooleanCastNodeGen.create(context, sourceSection, end);
this.begin = BooleanCastNodeGen.create(begin);
this.end = BooleanCastNodeGen.create(end);
this.stateNode = stateNode;
}

Original file line number Diff line number Diff line change
@@ -296,7 +296,7 @@ protected BigDecimalCastNode createBigDecimalCastNode() {
}

protected BooleanCastNode createBooleanCastNode() {
return BooleanCastNodeGen.create(getContext(), getSourceSection(), null);
return BooleanCastNodeGen.create(null);
}

protected GetIntegerConstantNode createGetIntegerConstantNode() {