public Operand getArg(int argIndex, boolean restOfArgArray) { if (!restOfArgArray) return getArg(argIndex); if (isClosure) throw new RuntimeException("Cannot get rest yield arg at inline time!"); if (argIndex >= callArgs.length) return new Array(); Operand[] tmp = new Operand[callArgs.length - argIndex]; System.arraycopy(callArgs, argIndex, tmp, 0, callArgs.length - argIndex); return new Array(tmp); }
public Operand getArg(int argIndex, boolean restOfArgArray) { if (!restOfArgArray) return getArg(argIndex); if (isClosure) throw new RuntimeException("Cannot get rest yield arg at inline time!"); if (argIndex >= callArgs.length) return new Array(); Operand[] tmp = new Operand[callArgs.length - argIndex]; System.arraycopy(callArgs, argIndex, tmp, 0, callArgs.length - argIndex); return new Array(tmp); }
@Override public Operand getSimplifiedOperand(Map<Operand, Operand> valueMap, boolean force) { Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].getSimplifiedOperand(valueMap, force); } return new Array(newElts); }
@Override public Operand getSimplifiedOperand(Map<Operand, Operand> valueMap, boolean force) { Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].getSimplifiedOperand(valueMap, force); } return new Array(newElts); }
@Override public Operand getSimplifiedOperand(Map<Operand, Operand> valueMap, boolean force) { Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].getSimplifiedOperand(valueMap, force); } return new Array(newElts); }
@Override public Operand getSimplifiedOperand(Map<Operand, Operand> valueMap, boolean force) { Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].getSimplifiedOperand(valueMap, force); } return new Array(newElts); }
public Operand buildZArray(Variable result) { return copy(result, new Array()); }
public static Array decode(IRReaderDecoder d) { return new Array(d.decodeOperandArray()); }
public static Array decode(IRReaderDecoder d) { return new Array(d.decodeOperandArray()); }
public Operand buildZArray(Node node, IRScope s) { return copyAndReturnValue(s, new Array()); }
public Operand buildZArray(Node node, IRScope s) { return copyAndReturnValue(s, new Array()); }
public Operand buildZArray(Variable result) { return copy(result, new Array()); }
@Override public Operand cloneForInlining(InlinerInfo ii) { if (hasKnownValue()) return this; Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].cloneForInlining(ii); } return new Array(newElts); }
@Override public Operand cloneForInlining(CloneInfo ii) { if (hasKnownValue()) return this; Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].cloneForInlining(ii); } return new Array(newElts); }
public Operand buildArray(Node node, IRScope s) { List<Operand> elts = new ArrayList<Operand>(); for (Node e: node.childNodes()) elts.add(build(e, s)); return copyAndReturnValue(s, new Array(elts)); }
public Operand buildArray(Node node, IRScope s) { List<Operand> elts = new ArrayList<Operand>(); for (Node e: node.childNodes()) elts.add(build(e, s)); return copyAndReturnValue(s, new Array(elts)); }
@Override public Operand cloneForInlining(InlinerInfo ii) { if (hasKnownValue()) return this; Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].cloneForInlining(ii); } return new Array(newElts); }
@Override public Operand cloneForInlining(CloneInfo ii) { if (hasKnownValue()) return this; Operand[] newElts = new Operand[elts.length]; for (int i = 0; i < elts.length; i++) { newElts[i] = elts[i].cloneForInlining(ii); } return new Array(newElts); }
public Operand buildArray(ArrayNode node, boolean operandOnly) { Node[] nodes = node.children(); Operand[] elts = new Operand[nodes.length]; boolean containsAssignments = node.containsVariableAssignment(); for (int i = 0; i < nodes.length; i++) { elts[i] = buildWithOrder(nodes[i], containsAssignments); } Operand array = new Array(elts); return operandOnly ? array : copyAndReturnValue(array); }
public Operand buildArray(ArrayNode node, boolean operandOnly) { Node[] nodes = node.children(); Operand[] elts = new Operand[nodes.length]; boolean containsAssignments = node.containsVariableAssignment(); for (int i = 0; i < nodes.length; i++) { elts[i] = buildWithOrder(nodes[i], containsAssignments); } Operand array = new Array(elts); return operandOnly ? array : copyAndReturnValue(array); }