handleCacheLine(node, init, primePump);
if (primePump) assert (sentItems == (filterInfo.totalItemsSent(init, primePump) - filterInfo.primePumpItemsNotConsumed())) : "insane"; else assert (sentItems == filterInfo.totalItemsSent(init, primePump)) : "insane";   if (!KjcOptions.magicdram && node.getNext().isOutputTrace()) fillCacheLine(node, init, primePump, sentItems);  if (primePump && filterInfo.push > 0 && filterInfo.primePumpItemsNotConsumed() / filterInfo.push > 0) { mult = (filterInfo.primePumpItemsNotConsumed() / filterInfo.push); for (int i = 0; i < mult; i++) {  createReceiveCode(i, node, parent, filterInfo, init, primePump, tile, rawChip);  createSendCode(i, node, parent, filterInfo, init, primePump, tile, rawChip); }   if (!KjcOptions.magicdram && node.getNext().isOutputTrace()) fillCacheLine(node, init, primePump, filterInfo.primePumpItemsNotConsumed()); }   if (!KjcOptions.magicdram && node.getPrevious().isInputTrace()) handleUnneededInput(node, init, primePump, filterInfo.totalItemsReceived(init, primePump));
    private static void createSwitchCode(FilterTraceNode node, Trace parent, 					 FilterInfo filterInfo,					 boolean init, boolean primePump, RawTile tile,					 RawChip rawChip, int mult)     {	for (int i = 0; i < mult; i++) {	    //append the receive code	    createReceiveCode(i, node, parent, filterInfo, init, primePump, tile, rawChip);	    //append the send code 	    createSendCode(i, node, parent, filterInfo, init, primePump, tile, rawChip);	}		//now we must take care of the remaining items on the input tape 	//after the initialization phase if the upstream filter produces more than	//we consume in init	if (init && filterInfo.remaining > 0) {	    appendReceiveInstructions(node, 				      filterInfo.remaining * Util.getTypeSize(node.getFilter().getInputType()),				      filterInfo, init, false, tile, rawChip);	}	//we must add some switch instructions to account for the fact	//that we must transfer cacheline sized chunks in the streaming dram	//do it for the init and the steady state, primepump 	handleCacheLine(node, init, primePump);    }