The patch adds the loop end location to the loop metadata. This additional information can be used to improve the locations when generating remarks for loops.
The patch depends on the companion LLVM patch D25763 (https://reviews.llvm.org/D25763).
Paths
| Differential D25764
Add end location of loop to loop metadata. ClosedPublic Authored by fhahn on Oct 19 2016, 4:31 AM.
Details
Summary The patch adds the loop end location to the loop metadata. This additional information can be used to improve the locations when generating remarks for loops. The patch depends on the companion LLVM patch D25763 (https://reviews.llvm.org/D25763).
Diff Detail Event Timelinefhahn updated this object. Comment Actions Ping. It would be great if somebody could have a look at this patch. The companion LLVM patch D25763 (https://reviews.llvm.org/D25763) has been accepted already. Comment Actions
Why are the constructor arguments optional? Are there actually any loops that we push that lack start and end locs? Comment Actions @rjmccall thanks for the feedback. I initially kept the arguments optional because the single Location argument used to be optional as well. But I think we can pass proper locations for all loops constructed by clang and I updated my patch to make the Start and End locations non-optional, which in turn required passing them through when constructing loops in lib/CodeGen/CGStmtOpenMP.cpp . This revision is now accepted and ready to land.Nov 9 2016, 6:19 PM Closed by commit rL286456: Add the loop end location to the loop metadata. This additional information (authored by aemerson). · Explain WhyNov 10 2016, 6:54 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 77317 lib/CodeGen/CGDebugInfo.h
lib/CodeGen/CGDebugInfo.cpp
lib/CodeGen/CGLoopInfo.h
lib/CodeGen/CGLoopInfo.cpp
lib/CodeGen/CGStmt.cpp
lib/CodeGen/CGStmtOpenMP.cpp
lib/CodeGen/CodeGenFunction.h
lib/CodeGen/CodeGenFunction.cpp
test/CodeGenCXX/debug-info-line-if.cpp
test/CodeGenCXX/debug-info-loops.cpp
|