private boolean printCall(Address refAddr, ClangNode node, StringBuffer buff, boolean didStart,
			boolean isCall) {
		if (node == null) {
			return false;
		}

		Address min = node.getMinAddress();
		Address max = node.getMaxAddress();
		if (min == null)
			return false;

		if (refAddr.getPhysicalAddress().equals(max) && node instanceof ClangStatement) {
			ClangStatement stmt = (ClangStatement) node;
			// Don't check for an actual call. The call could be buried more deeply.  As long as the original call reference site
			// is the max address, then display the results.
			// So this block assumes that the last address contained in the call will be the
			// address you are looking for.
			//    - This could lead to strange behavior if the call reference is placed on some address
			//    that is not the final call point used by the decompiler.
			//    - Also if there is a delay slot, then the last address for the call reference point
			//    might not be the last address for the block of PCode.
			//if (stmt.getPcodeOp().getOpcode() == PcodeOp.CALL) {
			if (!didStart) {
				Address nodeAddr = node.getMaxAddress();
				// Decompiler only knows base space.
				//   If reference came from an overlay space, convert address back
				if (refAddr.getAddressSpace().isOverlaySpace()) {
					nodeAddr = refAddr.getAddressSpace().getOverlayAddress(nodeAddr);
				}
				buff.append(" " + nodeAddr + "   : ");
			}

			buff.append("   " + toString(stmt));
			return true;
			//}
		}
		for (int j = 0; j < node.numChildren(); j++) {
			isCall = node instanceof ClangStatement;
			didStart |= printCall(refAddr, node.Child(j), buff, didStart, isCall);
		}
		return didStart;
	}
get the pcode ops that refer to an address
Ghidra/Features/Decompiler/ghidra_scripts/ShowCCallsScript.java