Debug Info: LiveDebugVarible can remove DBG_VALUEs, make sure we emit them back.
authorManman Ren <mren@apple.com>
Wed, 13 Feb 2013 01:14:49 +0000 (01:14 +0000)
committerManman Ren <mren@apple.com>
Wed, 13 Feb 2013 01:14:49 +0000 (01:14 +0000)
commit4be3853fd0a0e3b37a27afe05327e638e680c463
treef98361710e65786e1efb1b9cb30fa1b5a0c762af
parentb1953981926991bb1373c915952368c653138e71
Debug Info: LiveDebugVarible can remove DBG_VALUEs, make sure we emit them back.

RegisterCoalescer used to depend on LiveDebugVariable. LDV removes DBG_VALUEs
without emitting them at the end.

We fix this by removing LDV from RegisterCoalescer. Also add an assertion to
make sure we call emitDebugValues if DBG_VALUEs are removed at
runOnMachineFunction.

rdar://problem/13183203
Reviewed by Andy & Jakob

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175023 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/LiveDebugVariables.cpp
lib/CodeGen/LiveDebugVariables.h
lib/CodeGen/RegisterCoalescer.cpp
test/DebugInfo/X86/misched-dbg-value.ll [new file with mode: 0644]