While updating the tests for https://reviews.llvm.org/D41318 I noticed that:
- There are *a lot* of tests to update.
- Many of the updates are redundant.
They are redundant because a GV is "obviously dso_local". This patch starts formalizing that a bit by requiring that internal and private GVs be dso_local too. Since they all are, we don't have to print dso_local to the textual representation, making it a bit more compact and easier to read.
We should probably add a short comment explaining why we only set this when its true now, since from here its not obvious that setting the linkage may have already set it to local.