]> granicus.if.org Git - clang/commit
DebugInfo: Blocks: Do not depend on LLVM argument numbering when choosing the debug...
authorDavid Blaikie <dblaikie@gmail.com>
Fri, 8 Aug 2014 17:10:14 +0000 (17:10 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Fri, 8 Aug 2014 17:10:14 +0000 (17:10 +0000)
commit55a1129d8526e4ca9742b21c8c64fd0bb1d862c1
tree9fe0034597b4ebffbd9462326be6cd2f26523160
parent1ad06b0994238227b9b38a4563ec2bedf02fbdba
DebugInfo: Blocks: Do not depend on LLVM argument numbering when choosing the debug info argument numbering.

Due to the possible presence of return-by-out parameters, using the LLVM
argument number count when numbering debug info arguments can end up
off-by-one. This could produce two arguments with the same number, which
would in turn cause LLVM to emit only one of those arguments (whichever
it found last) or assert (r215157).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@215227 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGDebugInfo.cpp
lib/CodeGen/CGDebugInfo.h
lib/CodeGen/CGDecl.cpp
test/CodeGen/debug-info-block-out-return.c [new file with mode: 0644]