fact.addDeref(vn, handle.getPosition());
fact.addDeref(vn, new Location(handle, basicBlock));
	public void transferInstruction(InstructionHandle handle,			BasicBlock basicBlock, UnconditionalValueDerefSet fact)			throws DataflowAnalysisException {		// See if this instruction has a null check.		// If it does, the fall through predecessor will be		// identify itself as the null check.		if (handle != basicBlock.getFirstInstruction()) {			return;		}		BasicBlock fallThroughPredecessor =			cfg.getPredecessorWithEdgeType(basicBlock, EdgeTypes.FALL_THROUGH_EDGE);		if (fallThroughPredecessor == null || !fallThroughPredecessor.isNullCheck()) {			return;		}				// Get the null-checked value		ValueNumberFrame vnaFrame = vnaDataflow.getStartFact(fallThroughPredecessor);		if (!vnaFrame.isValid()) {			// Probably dead code.			// Assume this location can't be reached.			makeFactTop(fact);			return;		}		ValueNumber vn = vnaFrame.getInstance(handle.getInstruction(), methodGen.getConstantPool()); 		// Mark the value number as being dereferenced at this location		fact.addDeref(vn, handle.getPosition());	}