ValueNumberFrame frame = getFrame();
	public void visitPUTFIELD(PUTFIELD obj) {		if (REDUNDANT_LOAD_ELIMINATION) {			ValueNumberFrame frame = getFrame();				try {				XField xfield = Lookup.findXField(obj, getCPG());				if (xfield != null) {					InstanceField instanceField = (InstanceField) xfield;					int numWordsConsumed = getNumWordsConsumed(obj);					ValueNumber[] inputValueList = popInputValues(numWordsConsumed);					ValueNumber reference = inputValueList[0];					ValueNumber[] loadedValue = new ValueNumber[inputValueList.length - 1];					System.arraycopy(inputValueList, 1, loadedValue, 0, inputValueList.length - 1);					// Kill all previous loads of the same field,					// in case there is aliasing we don't know about					frame.killLoadsOfField(instanceField);					// Forward substitution					frame.addAvailableLoad(new AvailableLoad(reference, instanceField), loadedValue);					return;				}			} catch (ClassNotFoundException e) {				lookupFailureCallback.reportMissingClass(e);			}					}		handleNormalInstruction(obj);	}