private void createAugmentationInfo(MemoryBlock ehblock, RegionDescriptor region)
			throws MemoryAccessException {

		if (augmentationDataAddr != null && intAugmentationDataLength != 0) {

			if (cieAugmentationString.indexOf('L') > 1) {
				createLsda(ehblock, region);
			}
			else {

				DwarfEHDecoder decoder = cie.getLSDADecoder();

				DwarfDecodeContext ctx = new DwarfDecodeContext(program, augmentationDataAddr,
					region.getEHMemoryBlock().getStart());

				Address potentialAugmentationDataExAddr = decoder.decodeAddress(ctx);

				if (program.getMemory().contains(potentialAugmentationDataExAddr)) {
					augmentationDataExAddr = potentialAugmentationDataExAddr;

					createData(program, augmentationDataAddr, DWordDataType.dataType);

					program.getReferenceManager()
							.addMemoryReference(augmentationDataAddr, augmentationDataExAddr,
								RefType.DATA, SourceType.ANALYSIS, 0);

					try {

						String label = "eh_augmentation_" + pcBeginAddr + ".." + pcEndAddr + "_" +
							augmentationDataExAddr;

						program.getSymbolTable()
								.createLabel(augmentationDataExAddr, label, SourceType.ANALYSIS);
					}
					catch (InvalidInputException e) {
						// ignored
					}
				}
				else {
					CreateArrayCmd arrayCmd = new CreateArrayCmd(augmentationDataAddr,
						intAugmentationDataLength, new ByteDataType(), BYTE_LEN);
					arrayCmd.applyTo(program);
				}
			}

		}
	}
Creates a Frame Description Entry (FDE) at the address
specified.
<br>Note: This method must get called before any of the "get..." methods.

@param fdeBaseAddress Address where the FDE should be created.
@return a region descriptor which holds information about this FDE. Otherwise, null.
@throws MemoryAccessException if memory for the FDE or its associated data can't be accessed
@throws ExceptionHandlerFrameException if there is an error creating the FDE information.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/exceptionhandlers/gcc/structures/ehFrame/FrameDescriptionEntry.java