Debug info: split out complex DIVariable address expressions into a separate MDNode so they can be uniqued via folding set magic. To conserve space, DIVariable nodes are still variable-length, with the last two fields being optional.
No functional change.
This is a prerequisite for generic DW_OP_piece support; http://reviews.llvm.org/D3373/.
Needs a block comment here.