This is a variation on http://reviews.llvm.org/D4094
I think it is at feature parity. In particular, lib/Linker has not been updated and passes have not been audited to not modify the set of symbols in a comdat.
What it does is change the representation to not be a Value. It is intended as a way of making a discussion about these treadeoffs more concrete.
Other set of objects/sections with that key.
"the linker" in here is a bit ambiguous. Are we talking about the system linker or lib/Linker. Since we produce relocatable objects, it is probably better to state this in terms of what we do: put the global objects in a section with that comdat.