private void addReturnReferences(Instruction instruction, VarnodeContext varnodeContext,
			TaskMonitor monitor) {
		if (!checkForReturnRefs) {
			return;
		}

		Function func =
			program.getFunctionManager().getFunctionContaining(instruction.getMinAddress());

		// get the return location
		// see if it has a pointer value in it
		// if it does, then find the last set location, and put a reference there
		VariableStorage returnLoc = getReturnLocationStorage(func);
		if (returnLoc == null) {
			return;
		}

		createVariableStorageReference(instruction, varnodeContext, monitor, null, returnLoc, null, 0);
	}
Modify the function purge by any stack depth override

@param prog program
@param addr addr of instruction that could have an override of the stack depth
@param purge current purge depth.
@return new purge, which includes the extrapop value
Ghidra/Features/Base/src/main/java/ghidra/program/util/SymbolicPropogator.java