public static FlowType getDefaultComputedFlowType(Instruction instr) {

		if (instr.getFlowType() != RefType.INVALID && instr.getDefaultFlows().length <= 1) {
			// Don't bother looking if not complex flow
			return getDefaultJumpOrCallFlowType(instr);
		}

		// Assumption - it is assumed that any complex flow type is due to the presence of
		// multiple conditional flows.

		// TODO: Verify that above assumption is valid !!

		FlowType flowType = null;
		PcodeOp[] pcodeOps = instr.getPcode();
		for (PcodeOp op : pcodeOps) {
			int opcode = op.getOpcode();
			if (opcode == PcodeOp.BRANCHIND) {
				if (flowType == RefType.CONDITIONAL_COMPUTED_CALL) {
					return null; // more than one flow type
				}
				flowType = RefType.CONDITIONAL_COMPUTED_JUMP;
			}
			else if (opcode == PcodeOp.CALLIND) {
				if (flowType == RefType.CONDITIONAL_COMPUTED_JUMP) {
					return null; // more than one flow type
				}
				flowType = RefType.CONDITIONAL_COMPUTED_CALL;
			}
		}

		return flowType;
	}
Determine default computed FlowType for a specified instruction.  It is assumed
that all computed flows utilize a register in its destination specification/computation.
@param instr instruction
@return FlowType or null if unable to determine
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/symbol/RefTypeFactory.java