private void parsePentry(XmlPullParser parser, CompilerSpec cspec, ArrayList<ParamEntry> pe,
			int groupid, boolean splitFloat, boolean grouped) throws XmlParseException {
		StorageClass lastClass = StorageClass.CLASS4;
		if (!pe.isEmpty()) {
			ParamEntry lastEntry = pe.get(pe.size() - 1);
			lastClass = lastEntry.isGrouped() ? StorageClass.GENERAL : lastEntry.getType();
		}
		ParamEntry pentry = new ParamEntry(groupid);
		pe.add(pentry);
		pentry.restoreXml(parser, cspec, pe, grouped);
		if (splitFloat) {
			StorageClass currentClass = grouped ? StorageClass.GENERAL : pentry.getType();
			if (lastClass != currentClass) {
				if (lastClass.getValue() < currentClass.getValue()) {
					throw new XmlParseException(
						"parameter list entries must be ordered by storage class");
				}
//				int[] newResourceStart = new int[resourceStart.length + 1];
//				System.arraycopy(resourceStart, 0, newResourceStart, 0, resourceStart.length);
//				newResourceStart[resourceStart.length] = groupid;
//				resourceStart = newResourceStart;
			}
		}
		if (pentry.getSpace().isStackSpace()) {
			spacebase = pentry.getSpace();
		}
		int[] groupSet = pentry.getAllGroups();
		int maxgroup = groupSet[groupSet.length - 1] + 1;
		if (maxgroup > numgroup) {
			numgroup = maxgroup;
		}
	}
Within this list, get the ParamEntry at the given index
@param index is the given index
@return the selected ParamEntry
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/lang/ParamListStandard.java