private void encodePreferSplit(Encoder encoder) throws IOException {
		if (preferSplit == null || preferSplit.isEmpty()) {
			return;
		}
		encoder.openElement(ELEM_PREFERSPLIT);
		encoder.writeString(ATTRIB_STYLE, "inhalf");
		for (Varnode varnode : preferSplit) {
			encoder.openElement(ELEM_VARNODE);
			AddressXML.encodeAttributes(encoder, varnode.getAddress(), varnode.getSize());
			encoder.closeElement(ELEM_VARNODE);
		}
		encoder.closeElement(ELEM_PREFERSPLIT);
	}
Initialize this object from an XML stream.  A single {@code <compiler_spec>} tag is expected.
@param parser is the XML stream
@throws XmlParseException for badly formed XML
@throws DuplicateNameException if we parse more than one PrototypeModel with the same name
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/lang/BasicCompilerSpec.java