This is the full implementation in LLVM of the proposal:
http://lists.llvm.org/pipermail/llvm-dev/2015-December/093313.html
Notice that it contains also the changes from D12426 & D12913.
If it helps, I can do the commits separately, but I would need approval for all three patches in order to do so.
In addition to the few LIT tests I added, I needed to fix few others to affect the changes, including entry order changes that occurred.
I'd really prefer not to have this option/backcompat feature.
Do you have a need to support older GDBs (or LLDB) with this change? Otherwise I think this is a sufficiently narrow case we could probably take the change optimistically and let other debuggers deal with it as a bug. I don't think it'll disrupt that many users. (though I could be wrong/happy to deal with it differently if we have contributing developers who feel strongly that they need a workaround for their users until their platform debuggers catch up)
I realize it doesn't cost too much (your implementation has made it quite simple to support both) - this isn't all teh cost. We'd have to plumb the option up through into the frontend, or make it a debugger tuning feature (how would we tune it for GDB if we want to support old GDBs here? I would imagine this should be a "do the good thing by default, but fall back to the bad thing if we're specifically targeting known bad compilers, like LLDB" - though I think Adrian mentioned he'd be willing to just take this as an LLDB bug, but I'm not 100% sure)