OSDN Git Service

[CodeExtractor] Erase debug intrinsics in outlined thunks (fix PR22900)
authorVedant Kumar <vsk@apple.com>
Mon, 15 Oct 2018 19:22:20 +0000 (19:22 +0000)
committerVedant Kumar <vsk@apple.com>
Mon, 15 Oct 2018 19:22:20 +0000 (19:22 +0000)
commit0a2a30e517cde9ce927b9215158875c17141e794
tree621894e06a9781e8af2b11598a476bb6cf08d1b2
parentfcb831da6a919bd658d85ea26268dccb5cc9d086
[CodeExtractor] Erase debug intrinsics in outlined thunks (fix PR22900)

Variable updates within the outlined function are invisible to
debuggers. This could be improved by defining a DISubprogram for the
new function. For the moment, simply erase the debug intrinsics instead.

This fixes verifier failures about function-local metadata being used in
the wrong function, seen while testing the hot/cold splitting pass.

rdar://45142482

Differential Revision: https://reviews.llvm.org/D53267

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@344545 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Utils/CodeExtractor.cpp
test/Transforms/HotColdSplit/split-out-dbg-val-of-arg.ll [new file with mode: 0644]