diff options
author | Manman Ren <mren@apple.com> | 2013-02-13 01:14:49 +0000 |
---|---|---|
committer | Manman Ren <mren@apple.com> | 2013-02-13 01:14:49 +0000 |
commit | f019cd62da1834c166324a28b1a8d69e4cb47e87 (patch) | |
tree | 3d67b9e633037484e3b75167f3781a8522a03a72 /llvm/lib/CodeGen/LiveDebugVariables.h | |
parent | 8356d091bf5fc0cba384d33d7d37c6389b3f6efe (diff) | |
download | bcm5719-llvm-f019cd62da1834c166324a28b1a8d69e4cb47e87.tar.gz bcm5719-llvm-f019cd62da1834c166324a28b1a8d69e4cb47e87.zip |
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
llvm-svn: 175023
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugVariables.h')
-rw-r--r-- | llvm/lib/CodeGen/LiveDebugVariables.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/LiveDebugVariables.h b/llvm/lib/CodeGen/LiveDebugVariables.h index 3ce3c398bd4..bb4c160b30e 100644 --- a/llvm/lib/CodeGen/LiveDebugVariables.h +++ b/llvm/lib/CodeGen/LiveDebugVariables.h @@ -31,6 +31,10 @@ class VirtRegMap; class LiveDebugVariables : public MachineFunctionPass { void *pImpl; + /// Whether emitDebugValues is called. + bool EmitDone; + /// Whether the machine function is modified during the pass. + bool ModifiedMF; public: static char ID; // Pass identification, replacement for typeid |