private Address adjustStartForDelaySlot(Address addr) {
		CodeUnit cu = getCodeUnitContaining(addr);
		if (cu == null) {
			return addr;
		}
		if (cu instanceof Instruction) {
			Instruction instr = (Instruction) cu;
			if (instr.isInDelaySlot()) {
				try {
					Address previousAddr = instr.getMinAddress().subtractNoWrap(1);
					return adjustStartForDelaySlot(previousAddr);
				}
				catch (AddressOverflowException e) {
					// ignore
				}
			}
		}
		return cu.getMinAddress();
	}
Clears the properties in the given range (inclusive).
The specified start and end addresses must form a valid range within
a single {@link AddressSpace}.

@param start the start address of the range to clear
@param end the end address of the range to clear
@param monitor the task monitor
@throws CancelledException if cancelled
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/code/CodeManager.java