diff options
author | Amy Huang <akhuang@google.com> | 2020-08-21 11:54:27 -0700 |
---|---|---|
committer | Amy Huang <akhuang@google.com> | 2020-08-21 11:54:56 -0700 |
commit | 5e3fd471acb7fb01514b55bd24522da099a7b97c (patch) | |
tree | 539da263cabbfb9d12b7c23827c50128cd255073 /llvm/lib/Bitcode/Writer/BitcodeWriter.cpp | |
parent | c0ec37ee65d0d21fddc6194fe1cce9db4107a902 (diff) | |
download | llvm-5e3fd471acb7fb01514b55bd24522da099a7b97c.zip llvm-5e3fd471acb7fb01514b55bd24522da099a7b97c.tar.gz llvm-5e3fd471acb7fb01514b55bd24522da099a7b97c.tar.bz2 |
[Cloning] Fix to cloning DISubprograms.
When trying to enable -debug-info-kind=constructor there was an assert
that occurs during debug info cloning ("mismatched subprogram between
llvm.dbg.value variable and !dbg attachment").
It appears that during llvm::CloneFunctionInto, a DISubprogram could be
duplicated when MapMetadata is called, and then added to the MD map again
when DIFinder gets a list of subprograms. This results in two different
versions of the DISubprogram.
This patch switches the order so that the DIFinder subprograms are
added before MapMetadata is called.
Fixes https://bugs.llvm.org/show_bug.cgi?id=46784
Differential Revision: https://reviews.llvm.org/D86185
Diffstat (limited to 'llvm/lib/Bitcode/Writer/BitcodeWriter.cpp')
0 files changed, 0 insertions, 0 deletions