Share logic to strip debugify metadata between the IR and MIR level
debugify passes. This makes it simpler to hunt for bugs by diffing IR
with vs. without -debugify-each turned on.
As a drive-by, fix an issue causing CallGraphNodes to become invalid
when a dead llvm.dbg.value prototype is deleted.
I think there might be potential for confusion between isa<DbgInfoIntrinsic>() and DbgInfoIntrinsic::isA(). Maybe isInstForInstrinsic(), or implementsInstrinsic()?