public Value getEndRegisterValue(Address toAddr, Register reg) {

		Varnode val = context.getEndRegisterVarnodeValue(reg, Address.NO_ADDRESS, toAddr, true);
		if (val == null) {
			return null;
		}
		if (context.isConstant(val)) {
			return new Value(val.getOffset());
		}
		AddressSpace space = val.getAddress().getAddressSpace();
		if (space.getName().startsWith("track_")) {
			return new Value(val.getOffset());
		}
		Register relativeReg = program.getRegister(space.getName());
		if (relativeReg != null) {
			return new Value(relativeReg, val.getOffset());
		}
		return null;
	}
Get constant or register relative value assigned to the 
specified register at the specified address after the instruction has executed.
Note: This can only be called if trackStartEndState flag is true.

@param toAddr address
@param reg register
@return register value

@throws UnsupportedOperationException trackStartEndState == false at construction
Ghidra/Features/Base/src/main/java/ghidra/program/util/SymbolicPropogator.java