private void setDiffHighlight() {
		if (diffControl == null) {
			return;
		}

		AddressSetView p1DiffSet = null;
		try {
			p1DiffSet = diffControl.getFilteredDifferences(TaskMonitor.DUMMY);
		}
		catch (CancelledException e) {
			// Shouldn't get this, since using a DUMMY_MONITOR.
		}

		AddressSet p2DiffSet = DiffUtility.getCompatibleAddressSet(p1DiffSet, secondaryDiffProgram);
		ProgramSelection p2DiffSelection = new ProgramSelection(p2AddressFactory, p2DiffSet);
		p2DiffHighlight = p2DiffSelection;
		AddressSet p2DiffSetAsP1 = DiffUtility.getCompatibleAddressSet(p2DiffSet, primaryProgram);

		// Must be on the Swing thread to modify MarkerSets
		runSwing(() -> {
			// Right side markers need p1 addresses since they use p1 indexMap.
			MarkerSet diffMarkers = getDiffMarkers(); // Get right side markers for program 2.
			diffMarkers.clearAll();
			diffMarkers.add(p2DiffSet);

			MarkerSet codeViewerDiffMarkers = getCodeViewerMarkers(); // Get left side markers for program 1.
			codeViewerDiffMarkers.clearAll();
			codeViewerDiffMarkers.add(p2DiffSetAsP1);
			diffListingPanel.getFieldPanel().repaint();
		});
	}
Set the highlight based on the current program differences, but do not set the highlight for
set of addresses to be ignored.
Ghidra/Features/ProgramDiff/src/main/java/ghidra/app/plugin/core/diff/ProgramDiffPlugin.java