summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorAlexey Samsonov <vonosmas@gmail.com>2015-06-10 17:37:38 +0000
committerAlexey Samsonov <vonosmas@gmail.com>2015-06-10 17:37:38 +0000
commit89645dfa4d2d2d422cdecad1f6f6f65016b77062 (patch)
treee3f96560070fc43e86c66d1f405134020275ac49 /clang/lib/Frontend/CompilerInvocation.cpp
parenta32fadd14a299a2eecb174cc3f822376871e3319 (diff)
downloadbcm5719-llvm-89645dfa4d2d2d422cdecad1f6f6f65016b77062.tar.gz
bcm5719-llvm-89645dfa4d2d2d422cdecad1f6f6f65016b77062.zip
[GVN] Set proper debug locations for some instructions created by GVN.
Determining proper debug locations for instructions created in PHITransAddr is tricky. We use a simple approach here and simply copy debug locations from instructions computing load address to "corresponding" instructions re-creating the address computation in predecessor basic blocks. This may not always be correct, given all the rearrangement and simplification going on, and debug locations may jump around a lot, as the basic blocks we copy locations between may be very far from each other. Still, this would work good in most simple cases (e.g. when chain of address computing instruction is short, or our mapping turns out to be 1-to-1), and we desire to have *some* reasonable debug locations associated with newly inserted instructions. See http://reviews.llvm.org/D10351 review thread for more details. Test Plan: regression test suite Reviewers: spatel, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10351 llvm-svn: 239479
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud