protected int computePreference(AssemblyResolvedPatterns rc) {
		if (existing == null) {
			return 0;
		}
		String myTree = rc.dumpConstructorTree();
		String exTree =
			((SleighInstructionPrototype) existing.getPrototype()).dumpConstructorTree();
		for (int i = 0; i < myTree.length(); i++) {
			if (!myTree.startsWith(exTree.substring(0, i))) {
				return rc.getInstructionLength() == existing.getLength() ? 5000 : i;
			}
		}
		return 10000;
	}
Provides an ordering for assembled instructions appearing in the list

<p>
The items with the highest preference are positioned at the top of the list

<p>
This is an extension point.

<p>
Currently, a proposed instruction having the same constructor tree as the existing one is the
most preferred. Second, are instructions having a similar tree as the existing one --
"similar" is not yet well defined, but at the moment, it means their constructor tree strings
have a long common prefix. Third, instructions having the same encoded length as the existing
one are preferred. Last, the shortest instructions are preferred.

@param rc a resolved instruction
@return a preference
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/assembler/AssemblyDualTextField.java