Commits

Adrian Prantl committed bffda8a78d0
Debugging: Extend the live ranges of local values at -Onone. For many local values we can avoid a shadow alloca by directly describing them with a dbg.value. This also enables precise liveness so variables don't show up in the debugger before they are initialized. Unfortunately this also means that values will disappear when they are no longer needed. This patch inserts an empty inline assembler expression depending on the llvm::Value that is being described in the blocks dominated by it. This uses less stack space than full shadow copies *and* allows us to track the liveness of the variable completely. It may cause values to be spilled onto the stack, though. <rdar://problem/26627376>