public RegisterValueRange[] getRegisterValues(Register reg, Address start, Address end) {

		SortedSet<Address> changePoints =
			getChangePoints(start, end, getRegisterOffset(reg), reg.getMinimumByteSize());

		ArrayList<RegisterValueRange> ranges = new ArrayList<RegisterValueRange>();

		Address currentAddress = start;
		for (Address nextChange : changePoints) {
			addRange(reg, ranges, currentAddress, nextChange.previous());
			currentAddress = nextChange;
		}
		addRange(reg, ranges, currentAddress, end);

		RegisterValueRange[] rangeArray = new RegisterValueRange[ranges.size()];
		ranges.toArray(rangeArray);
		return rangeArray;
	}
Constructs a new ProgramContextDB object
@param dbHandle the handle to the database.
@param errHandler the error handler
@param language the processor language
@param addrMap the address map.
@param lock the program synchronization lock
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/register/OldProgramContextDB.java