aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGDebugInfo.cpp
AgeCommit message (Collapse)Author
2010-02-10Use current location as the location of compiler generated arguments, e.g. ↵Devang Patel
self, _cmd etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95743 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09Fix virtual bases' debug info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95678 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-09Mark implicit "this" argument as an artificial argument.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95673 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Fix FIXME and surrounding comment.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95023 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Use appropriate context descriptor in RecordDecl's debug info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95016 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Do not use clang type name to name a local variable, e.g. Decl.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95010 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Do not use clang type name to name a local variable, e.g. Decl.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95009 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Use DeclContext as getContextDescriptor() argument.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95008 91177308-0d34-0410-b5e6-96231b3b80d8
2010-02-01Emit debug info for namespaces.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94991 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-29Use appropriate context for typedefs. Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94849 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-29Maintain a map of regions (lexical scopes) and use it to find context for a ↵Devang Patel
global variable. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94817 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28s/CGDebugInfo::getContext/CGDebugInfo::getContextDescriptor/g to avoid ↵Devang Patel
confusion. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94760 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Fix indentation.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94758 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Static methods do not need "this" pointer argument.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94756 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Emit base classes info first, as expected by the debugger.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94755 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28s/FunctionNames/DebugInfoNames/gDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94753 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Emit vtable info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94751 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28While emitting debugging infor for a C++ class, identify the holder of ↵Devang Patel
class's vtable, if any. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94712 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-28Include "this" pointer argument while emitting debug info for a C++ method.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94710 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-27Change the return type of ASTContext::getDeclAlignInBytes() to CharUnits and,Ken Dyck
now that the "InBytes" part of the name is implied by the return type, rename it to getDeclAlign(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94681 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26Fix another debug info crash with virtual bases.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94520 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26Fix the test I broke, and also fix a crash when declaring a virtual ↵Anders Carlsson
destructor. Add debug info support for pure virtual member functions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94519 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26Factor creating the DISubprogram for a member function out into a separate ↵Anders Carlsson
function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94513 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-26Simplify CGDebugInfo::CollectCXXMemberFunctions a little. More to come.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94511 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25First cut at emitting inheritance info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94473 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25Emit debug info for virtual functions.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94467 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25fix rdar://7556129 a crash in blocks debug info codegen.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94402 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-25simplify code.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94401 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-23No need to terminate this buffer.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94313 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-20 A Decl->getName() is not unique. However, the debug info descriptors Devang Patel
are uniqued. The debug info descriptor describing record's context is necessary to keep two Decl's descriptor unique if their name match. There is more work to do to create descriptors for DeclContext. As a temp. step use type's name in FwdDecl. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94050 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-19Emit human readable names for operators.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93837 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-19First cut at emitting debugging information for C++ member functions.Devang Patel
There is lot more work to do in this area. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93836 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-19Use llvm::Function name as the linkage name, but strip off leading '01' from ↵Devang Patel
display name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93822 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-19Refactor.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93814 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-18llvm::Function name is the linkage name. If it has a '01' as a prefix then ↵Devang Patel
probably there is a reason. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93808 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-16Fix crash generating debug info for constructor for anonymous struct.Eli Friedman
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93601 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Emit linkage name even if it matches regular name. The code generator uses ↵Devang Patel
linkage name to find subprogram entry for the current function. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93461 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Add comment.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93434 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Because CurLoc is the current source location as far as CGDebugInfo is ↵Devang Patel
concerned. It is expected that this is set (usually left bracket location of function body compound statement) before EmitfunctionStart() is used. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93389 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-14Emit human readable names for c/c++ functions. Avoid emitting linkage name ↵Devang Patel
if it matches regular name. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93383 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-11Roll out ASTContext::getTypeSizeInChars(), replacing instances ofKen Dyck
"ASTContext::getTypeSize() / 8". Replace [u]int64_t variables with CharUnits ones as appropriate. Also rename RawType, fromRaw(), and getRaw() in CharUnits to QuantityType, fromQuantity(), and getQuantity() for clarity. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93153 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-29Get rid of FixedWidthIntType, as suggested by Chris and Eli.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92246 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-28adjust for llvm api changes.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92236 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-28this form of SetDebugLocation is about to go away, add some #includes thatChris Lattner
are about to not come in implicitly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@92228 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-21Improve on my previous fix for debug information. Rather thanDouglas Gregor
recursing in CGDebugInfo::CreateTypeNode, teach CanonicalizeTypeForDebugInfo---now called UnwrapTypeForDebugInfo---to keep unwrapping the type until we hit something that can be represented by debug information. Thanks to Anders for pointing this out! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91840 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-21Teach debug info generation to handle TemplateSpecializationType,Douglas Gregor
ElaboratedType, QualifiedNameType, and SubstTemplateTypeParmType type nodes. Also, produce an "unsupported" diagnostic for C++0x type nodes and "typeof" nodes, rather than asserting nondescriptly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91837 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-18Add -dwarf-debug-flags, which provides a way to embed the cc1 level options usedDaniel Dunbar
to compile a translation unit into the debug info for that file. - Used by parts of Darwin build process to check compiler flags, etc. - <rdar://problem/7256886> clang does not emit AT_APPLE_flags git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Use StringRef in CGDebugInfo::EmitFunctionStart.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90856 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Use Path.makeAbsolute() and make a constant std::string a const char*.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90851 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08Remove several .c_str() to be forward-compatible with StringRef.Jeffrey Yasskin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@90822 91177308-0d34-0410-b5e6-96231b3b80d8