blockaddresses do not participate in the call graph since the only
instructions that use them must all return to someplace within the
current function. And passes cannot retrieve a function address from a
blockaddress.
This was suggested by efriedma in D58260.
Fixes PR50881.
I pulled in "llvm/ADT/STLExtras.h" for llvm::all_of in D58260. Can that header now not be included?