[llvm-commits] [dragonegg] r97384 - /dragonegg/trunk/llvm-debug.cpp
Duncan Sands
baldrick at free.fr
Sun Feb 28 05:02:52 PST 2010
Author: baldrick
Date: Sun Feb 28 07:02:52 2010
New Revision: 97384
URL: http://llvm.org/viewvc/llvm-project?rev=97384&view=rev
Log:
Port commit 95241 (dpatel) from llvm-gcc:
Do not skip artificial methods that are used. The debugger uses this information to reconstruct virtual base info.
Modified:
dragonegg/trunk/llvm-debug.cpp
Modified: dragonegg/trunk/llvm-debug.cpp
URL: http://llvm.org/viewvc/llvm-project/dragonegg/trunk/llvm-debug.cpp?rev=97384&r1=97383&r2=97384&view=diff
==============================================================================
--- dragonegg/trunk/llvm-debug.cpp (original)
+++ dragonegg/trunk/llvm-debug.cpp Sun Feb 28 07:02:52 2010
@@ -861,7 +861,8 @@
Member = TREE_CHAIN(Member)) {
if (DECL_ABSTRACT_ORIGIN (Member)) continue;
- if (DECL_ARTIFICIAL (Member)) continue;
+ // Ignore unused aritificial members.
+ if (DECL_ARTIFICIAL (Member) && !TREE_USED (Member)) continue;
// In C++, TEMPLATE_DECLs are marked Ignored, and should be.
if (DECL_P (Member) && DECL_IGNORED_P (Member)) continue;
@@ -889,7 +890,8 @@
LinkageName,
getOrCreateCompileUnit(MemLoc.file),
MemLoc.line, SPTy, false, false,
- Virtuality, VIndex, ContainingType);
+ Virtuality, VIndex, ContainingType,
+ DECL_ARTIFICIAL (Member));
EltTys.push_back(SP);
SPCache[Member] = WeakVH(SP.getNode());
}
More information about the llvm-commits
mailing list