return fuseAll(partitions, curPartition, x1, x2, tileLimit, str); }    for (int xPivot=x1; xPivot<x2; xPivot++) { for (int tPivot=1; tPivot<tileLimit; tPivot++) { CCost cost1 = get(x1, xPivot, tPivot); CCost cost2 = get(xPivot+1, x2, tileLimit-tPivot); CCost combo = CCost.combine(cost1, cost2); if (combo.equals(C[tileLimit][x1][x2])) { return doCut(partitions, curPartition, x1, x2, xPivot, tileLimit, tPivot, str); } } }  */  Utils.fail("Could not find traceback."); return null;
IterFactory.createFactory().createIter(cont).accept(new RecordingStreamVisitor(curPartition)); } return result;
    protected SIRStream traceback(LinkedList partitions, PartitionRecord curPartition,				  int x1, int x2, int tileLimit, SIRStream str) {	// if we're down to one node, then descend into it	if (x1==x2) {	    SIRStream child = childConfig(x1).traceback(partitions, curPartition, tileLimit, cont.get(x1));	    return child;	}		if (this instanceof CConfigSplitJoin) {	    int tiles = this.numberOfTiles();	    if (tiles == 1) {		return fuseAll(partitions, curPartition, x1, x2, tileLimit, str);   	    }	    return doCut(partitions, curPartition, x1, x2, x1, tileLimit, 0, str);	}	if (this instanceof CConfigPipeline) {	    	    int next = ((CConfigPipeline)this).findGreedyCut(x1, x2);	    if (next == -1) {		return fuseAll(partitions, curPartition, x1, x2, tileLimit, str);   	    }	    	    return doCut(partitions, curPartition, x1, x2, next, tileLimit, 0, str);	}		/*	// if we only have one tile left, return fusion transform with	// children fused first	if (tileLimit==1) {	    return fuseAll(partitions, curPartition, x1, x2, tileLimit, str);	}	// otherwise, see if we made a vertical cut (breaking into	// left/right pieces).	for (int xPivot=x1; xPivot<x2; xPivot++) {	    for (int tPivot=1; tPivot<tileLimit; tPivot++) {		CCost cost1 = get(x1, xPivot, tPivot);		CCost cost2 = get(xPivot+1, x2, tileLimit-tPivot);		CCost combo = CCost.combine(cost1, cost2);		if (combo.equals(C[tileLimit][x1][x2])) {		    return doCut(partitions, curPartition, x1, x2, xPivot, tileLimit, tPivot, str);		}	    }	}	*/	Utils.fail("Could not find traceback.");	return null;    }