private void handleFSRModification(Instruction instr) {
		fsrContext.writeValue(instr.getMaxAddress());
		String mnemonic = instr.getMnemonicString();
		if ("CLRF".equals(mnemonic)) {
			fsrContext.setValueAt(instr, 0, false);
		}
		else if ("BSF".equals(mnemonic)) {
			if (!fsrContext.setBitAt(instr, instr.getScalar(1), 0)) {
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR bit-set at: " + instr.getMinAddress());
			}
		}
		else if ("BCF".equals(mnemonic)) {
			if (!fsrContext.clearBitAt(instr, instr.getScalar(1), 0)) {
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR bit-set at: " + instr.getMinAddress());
			}
		}
		else if ("INCF".equals(mnemonic)) {
			if (fsrContext.hasValue()) {
				fsrContext.setValueAt(instr, fsrContext.longValue() + 1, false);
			}
			else {
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR change at: " + instr.getMinAddress());
			}
		}
		else if ("DECF".equals(mnemonic)) {
			if (fsrContext.hasValue()) {
				fsrContext.setValueAt(instr, fsrContext.longValue() - 1, false);
			}
			else {
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR change at: " + instr.getMinAddress());
			}
		}
		else if ("MOVWF".equals(mnemonic)) {
			if (wContext.hasValue()) {
				fsrContext.setValueAt(instr, wContext.longValue(), false);
			}
			else {
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR change at: " + instr.getMinAddress());
			}
		}
		else if (REG_MODIFICATION_MNEMONICS.contains(mnemonic)) {
			if (instr.getNumOperands() == 2) {
				List<?> repObjs = instr.getDefaultOperandRepresentationList(1);
				if (repObjs.size() == 1 && DEST_FREG.equals(repObjs.get(0))) {
					if ("INCF".equals(mnemonic)) {
						// do nothing - assume this will not affect high-order FSR<6:5> bits
					}
					else {
						// Unhandled FSR modification
						fsrContext.setValueUnknown();
						Msg.warn(this, "Unhandled FSR change at: " + instr.getMinAddress());
					}
				}
			}
			else if (instr.getNumOperands() == 1) {
				// Unhandled FSR modification
				fsrContext.setValueUnknown();
				Msg.warn(this, "Unhandled FSR change at: " + instr.getMinAddress());
			}
		}
	}
Attempt to markup FReg access instruction with register reference.

@param instr
@return register name if identified, else null
Ghidra/Processors/PIC/src/main/java/ghidra/app/plugin/core/analysis/Pic12Analyzer.java