if (outputValueList.length != numWordsProduced) throw new IllegalStateException("cache produced wrong num words");
checkConsumedAndProducedValues(ins, inputValueList, outputValueList);
	public void modelNormalInstruction(Instruction ins, int numWordsConsumed, int numWordsProduced) {		ValueNumberFrame frame = getFrame();		int flags = (ins instanceof InvokeInstruction) ? ValueNumber.RETURN_VALUE : 0;		// Get the input operands to this instruction.		ValueNumber[] inputValueList = popInputValues(numWordsConsumed);		// See if we have the output operands in the cache.		// If not, push default (fresh) values for the output,		// and add them to the cache.		ValueNumber[] outputValueList = getOutputValues(inputValueList, numWordsProduced, flags);		if (VERIFY_INTEGRITY) {			if (outputValueList.length != numWordsProduced)				throw new IllegalStateException("cache produced wrong num words");		}		// Push output operands on stack.		pushOutputValues(outputValueList);	}