private void loadAddresses(MatchInfo matchInfo) {
		VTMatch match = matchInfo.getMatch();
		VTAssociation association = match.getAssociation();
		Address sourceAddress = association.getSourceAddress();
		Address destinationAddress = association.getDestinationAddress();
		int sourceLength = match.getSourceLength();
		int destinationLength = match.getDestinationLength();

		// We need to possibly adjust the source and destination start addresses to the beginning
		// of the code units containing them or we won't display anything in the comparison panel.
		VTSession session = association.getSession();
		Program sourceProgram = session.getSourceProgram();
		Program destinationProgram = session.getDestinationProgram();
		Listing sourceListing = sourceProgram.getListing();
		Listing destinationListing = destinationProgram.getListing();
		CodeUnit sourceCodeUnit = sourceListing.getCodeUnitContaining(sourceAddress);
		CodeUnit destinationCodeUnit = destinationListing.getCodeUnitContaining(destinationAddress);
		Address sourceStart =
			(sourceCodeUnit != null) ? sourceCodeUnit.getMinAddress() : sourceAddress;
		Address destinationStart =
			(destinationCodeUnit != null) ? destinationCodeUnit.getMinAddress()
					: destinationAddress;

		Address sourceEnd = (sourceLength > 1) ? sourceAddress.add(sourceLength - 1) : sourceStart;
		Address destinationEnd =
			(destinationLength > 1) ? destinationAddress.add(destinationLength - 1)
					: destinationStart;
		AddressSetView sourceAddressSet = new AddressSet(sourceStart, sourceEnd);
		AddressSetView destinationAddressSet = new AddressSet(destinationStart, destinationEnd);
		functionComparisonPanel.loadAddresses(sourceProgram, destinationProgram, sourceAddressSet,
			destinationAddressSet);
	}
Loads the markup items table and its function comparison panel with the indicated match.
@param matchInfo indicates which match (if any) to load.
Ghidra/Features/VersionTracking/src/main/java/ghidra/feature/vt/gui/provider/markuptable/VTMarkupItemsTableProvider.java