aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenAction.cpp
diff options
context:
space:
mode:
authorChuanqi Xu <yedeng.yd@linux.alibaba.com>2021-05-13 13:05:05 +0800
committerChuanqi Xu <yedeng.yd@linux.alibaba.com>2021-05-13 13:06:33 +0800
commitc1359ef07e8240b4350802b4998aedc1239a91d0 (patch)
tree6d82135cd9feddd2d0ddd2c10a6aa6050f9ddfaa /clang/lib/CodeGen/CodeGenAction.cpp
parent3f8aafd7902722cc2039c7ef3d6747f8d49f81a6 (diff)
downloadllvm-c1359ef07e8240b4350802b4998aedc1239a91d0.zip
llvm-c1359ef07e8240b4350802b4998aedc1239a91d0.tar.gz
llvm-c1359ef07e8240b4350802b4998aedc1239a91d0.tar.bz2
[Coroutines] Salvege Debug.values
Summary: The previous implementation of coro-split didn't collect values used by dbg instructions into the spills which made a log debug info unavailable with optimization on. This patch tries to collect these uses which are used by dbg.values. In this way, the debugbility of coroutine could be as powerful as normal functions with optimization on. To avoid enlarging the coroutine frame, this patch only collects `dbg.value` whose value is already in the coroutine frame. This decision may make some debug info getting unavailable. But if we are with optimization on, the performance issue should be considered first. And this patch would make the debugbility of coroutine to be better only without changing the layout of the frame. Test-plan: check-llvm Reviewed By: aprantl, lxfind Differential Revision: https://reviews.llvm.org/D97673
Diffstat (limited to 'clang/lib/CodeGen/CodeGenAction.cpp')
0 files changed, 0 insertions, 0 deletions