@Override public Object execute(VirtualFrame frameValue) { return specialization_.execute(frameValue); }
@Override public Object execute_(VirtualFrame frameValue, Object firstNodeValue, Object secondNodeValue) { return getNext().execute_(frameValue, firstNodeValue, secondNodeValue); }
@Override public NodeCost getCost() { return specialization_.getNodeCost(); }
@Override public final Object acceptAndExecute(Frame frameValue, Object firstNodeValue, Object secondNodeValue) { return this.execute_((VirtualFrame) frameValue, firstNodeValue, secondNodeValue); }
@Override public SpecializationNode merge(SpecializationNode newNode, Frame frameValue, Object firstNodeValue, Object secondNodeValue) { return polymorphicMerge(newNode, super.merge(newNode, frameValue, firstNodeValue, secondNodeValue)); }
@Override public Object execute_(VirtualFrame frameValue, Object firstNodeValue, Object secondNodeValue) { if (firstNodeValue instanceof Integer && secondNodeValue instanceof Integer) { int firstNodeValue_ = (int) firstNodeValue; int secondNodeValue_ = (int) secondNodeValue; return root.execute(firstNodeValue_, secondNodeValue_); } return getNext().execute_(frameValue, firstNodeValue, secondNodeValue); }
@Override public Object execute_(VirtualFrame frameValue, Object firstNodeValue, Object secondNodeValue) { if (firstNodeValue instanceof Double && secondNodeValue instanceof Double) { double firstNodeValue_ = (double) firstNodeValue; double secondNodeValue_ = (double) secondNodeValue; return root.execute(firstNodeValue_, secondNodeValue_); } return getNext().execute_(frameValue, firstNodeValue, secondNodeValue); }
public Object execute(VirtualFrame frameValue) { Object firstNodeValue_ = root.firstNode_.executeUnbox(frameValue); Object secondNodeValue_ = root.secondNode_.executeUnbox(frameValue); return execute_(frameValue, firstNodeValue_, secondNodeValue_); }
@Override public Object execute_(VirtualFrame frameValue, Object firstNodeValue, Object secondNodeValue) { if (firstNodeValue instanceof Long && secondNodeValue instanceof Long) { long firstNodeValue_ = (long) firstNodeValue; long secondNodeValue_ = (long) secondNodeValue; return root.execute(firstNodeValue_, secondNodeValue_); } return getNext().execute_(frameValue, firstNodeValue, secondNodeValue); }