private void processRelocations(TaskMonitor monitor) throws CancelledException {

		ElfRelocationTable[] relocationTables = elf.getRelocationTables();
		if (relocationTables.length == 0) {
			return;
		}

		monitor.setMessage("Processing relocation tables...");

		boolean processRelocations = ElfLoaderOptionsFactory.performRelocations(options);
		if (processRelocations && ElfRelocationHandlerFactory.getHandler(elf) == null) {
			log("ELF relocation handler extension not found!  Unable to process relocations.");
		}

		int totalCount = 0;
		for (ElfRelocationTable relocationTable : relocationTables) {
			totalCount += relocationTable.getRelocationCount();
		}
		monitor.initialize(totalCount);

		ElfRelocationContext<?> context =
			ElfRelocationContext.getRelocationContext(this, symbolMap);
		try {
			for (ElfRelocationTable relocationTable : relocationTables) {
				monitor.checkCancelled();
				processRelocationTable(relocationTable, context, monitor);
			}
		}
		finally {
			context.dispose();
		}
	}
Attempt to create an entry point function.
Note: entries in the dynamic table appear to have any pre-link adjustment already applied.
@param name function name
@param entryAddress function Address
Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/ElfProgramBuilder.java