| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
already lives.
llvm-svn: 203038
|
|
|
|
|
|
| |
This adds support for emitting discriminators from DILexicalBlocks.
llvm-svn: 202736
|
|
|
|
| |
llvm-svn: 202545
|
|
|
|
| |
llvm-svn: 202541
|
|
|
|
|
|
|
|
|
|
| |
during the finalization for CGDebugInfo in clang we would RAUW
a type and it would result in a corrupted MDNode for an
imported declaration.
Testcase pending as reducing has been difficult.
llvm-svn: 202540
|
|
|
|
|
|
|
|
|
|
| |
and update everything accordingly. This can be used to conditionalize
the amount of output in the backend based on the amount of debug
requested/metadata emission scheme by a front end (e.g. clang).
Paired with a commit to clang.
llvm-svn: 202332
|
|
|
|
|
|
|
|
|
|
|
|
| |
For some anachronistic reason we were producing {i32 0} for zero-length
debug info arrays.
(this change is paired with a Clang change and may cause temporary
buildbot noise)
Let's not.
llvm-svn: 200721
|
|
|
|
|
|
|
|
| |
member functions. Paired commit with CFE.
rdar://problem/15356637
llvm-svn: 197613
|
|
|
|
|
|
| |
types, and make DIType(MDNode*) explicit like all the other DI* node ctors.
llvm-svn: 195055
|
|
|
|
|
|
|
| |
and remove a call to getNonCompileUnitScope as a method
shouldn't be in the compile unit scope.
llvm-svn: 192748
|
|
|
|
| |
llvm-svn: 192747
|
|
|
|
|
|
|
|
| |
DIScopeRef.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192378
|
|
|
|
|
|
|
|
| |
template_value are updated to use DIRef.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192320
|
|
|
|
|
|
| |
to use DIScopeRef.
llvm-svn: 192309
|
|
|
|
|
|
|
|
| |
to use DIScopeRef.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192256
|
|
|
|
|
|
| |
typedef are updated to use DIScopeRef.
llvm-svn: 192254
|
|
|
|
|
|
|
|
| |
is updated to use DITypeRef.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192251
|
|
|
|
|
|
|
|
| |
is updated to use DITypeRef.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192246
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
is updated to use DITypeRef.
Move isUnsignedDIType and getOriginalTypeSize from DebugInfo.h to be static
helper functions in DwarfCompileUnit. We already have a static helper function
"isTypeSigned" in DwarfCompileUnit, and a pointer to DwarfDebug is added to
resolve the derived-from field. All three functions need to go across link
for derived-from fields, so we need to get hold of a type identifier map.
A pointer to DwarfDebug is also added to DbgVariable in order to resolve the
derived-from field.
Debug info verifier is updated to check a derived-from field is a TypeRef.
Verifier will not go across link for derived-from fields, in debug info finder,
we go across the link to add derived-from fields to types.
Function getDICompositeType is only used by dragonegg and since dragonegg does
not generate identifier for types, we use an empty map to resolve the
derived-from field.
When printing a derived-from field, we use DITypeRef::getName to either return
the type identifier or getName of the DIType.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 192018
|
|
|
|
|
|
|
| |
on platforms with relocations in debug info and also temporarily
revert r191800 due to conflicts with the revert of r191792.
llvm-svn: 191967
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
is updated to use DITypeRef.
Move isUnsignedDIType and getOriginalTypeSize from DebugInfo.h to be static
helper functions in DwarfCompileUnit. We already have a static helper function
"isTypeSigned" in DwarfCompileUnit, and a pointer to DwarfDebug is added to
resolve the derived-from field. All three functions need to go across link
for derived-from fields, so we need to get hold of a type identifier map.
A pointer to DwarfDebug is also added to DbgVariable in order to resolve the
derived-from field.
Debug info verifier is updated to check a derived-from field is a TypeRef.
Verifier will not go across link for derived-from fields, in debug info finder,
we go across the link to add derived-from fields to types.
Function getDICompositeType is only used by dragonegg and since dragonegg does
not generate identifier for types, we use an empty map to resolve the
derived-from field.
When printing a derived-from field, we use DITypeRef::getName to either return
the type identifier or getName of the DIType.
A paired commit at clang is required due to changes to DIBuilder.
llvm-svn: 191800
|
|
|
|
|
|
| |
No functionality change.
llvm-svn: 191696
|
|
|
|
|
|
|
|
| |
TAG_friend are updated to use scope reference.
Added testing cases to verify that class with inheritance can be uniqued.
llvm-svn: 190364
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In DIBuilder, the context field of a TAG_member is updated to use the
scope reference. Verifier is updated accordingly.
DebugInfoFinder now needs to generate a type identifier map to have
access to the actual scope. Same applies for BreakpointPrinter.
processModule of DebugInfoFinder is called during initialization phase
of the verifier to make sure the type identifier map is constructed early
enough.
We are now able to unique a simple class as demonstrated by the added
testing case.
llvm-svn: 190334
|
|
|
|
| |
llvm-svn: 190271
|
|
|
|
|
|
| |
For context field of subroutine_type and when creating artificial types.
llvm-svn: 190270
|
|
|
|
|
|
| |
Improve readability. No functionality change.
llvm-svn: 190269
|
|
|
|
|
|
|
|
| |
a DISubprogram.
Verifier is updated accordingly.
llvm-svn: 190229
|
|
|
|
|
|
| |
Remove one cast and improve readability. No functionality change.
llvm-svn: 190225
|
|
|
|
|
|
|
|
| |
a DICompositeType.
Verifier is updated accordingly.
llvm-svn: 190190
|
|
|
|
|
|
|
|
|
|
|
| |
of DIType.
Implement DIType::generateRef to return a type reference. This function will be
used in setContaintingType and in DIBuilder to generete the type reference.
No functionality change.
llvm-svn: 190188
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ptr_to_member.
We introduce a new class DITypeRef that represents a reference to a DIType.
It wraps around a Value*, which can be either an identifier in MDString
or an actual MDNode. The class has a helper function "resolve" that
finds the actual MDNode for a given DITypeRef.
We specialize getFieldAs to return a field that is a reference to a
DIType. To correctly access the base type field of ptr_to_member,
getClassType now calls getFieldAs<DITypeRef> to return a DITypeRef.
Also add a typedef for DITypeIdentifierMap and a helper
generateDITypeIdentifierMap in DebugInfo.h. In DwarfDebug.cpp, we keep
a DITypeIdentifierMap and call generateDITypeIdentifierMap to actually
populate the map.
Verifier is updated accordingly.
llvm-svn: 190081
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
createClassType, createStructType, createUnionType, createEnumerationType,
and createForwardDecl will retain a type when created with a unique identifier,
to make sure they are treated as used even when all uses are replaced with
the identifiers.
Use TrackingVH<MDNode> instead of MDNode in AllRetainTypes, since the created
node can later be updated.
The change will be tested when clients of DIBuilder start to pass in non-empty
unique identifier.
llvm-svn: 189621
|
|
|
|
|
|
|
|
| |
createClassType, createStructType, createUnionType, createEnumerationType,
and createForwardDecl will take an optional StringRef to pass in
the unique identifier.
llvm-svn: 189410
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DICompositeType will have an identifier field at position 14. For now, the
field is set to null in DIBuilder.
For DICompositeTypes where the template argument field (the 13th field)
was optional, modify DIBuilder to make sure the template argument field is set.
Now DICompositeType has 15 fields.
Update DIBuilder to use NULL instead of "i32 0" for null value of a MDNode.
Update verifier to check that DICompositeType has 15 fields and the last
field is null or a MDString.
Update testing cases to include an extra field for DICompositeType.
The identifier field will be used by type uniquing so a front end can
genearte a DICompositeType with a unique identifer.
llvm-svn: 189282
|
|
|
|
|
|
|
|
| |
record type after construction
Plus a type cleanup & minor fix to enumerate members of declarations.
llvm-svn: 188577
|
|
|
|
|
|
|
|
|
|
|
|
| |
the type exists.
Fix up cases where we weren't checking for optional types and add
an assert to addType to make sure we catch this in the future.
Fix up a testcase that was using the tag for DW_TAG_array_type
when it meant DW_TAG_enumeration_type.
llvm-svn: 187963
|
|
|
|
|
|
|
| |
uses that wanted it. Also change the interface for createCompileUnit
to compensate. Fix comments that refer to TheCU as well.
llvm-svn: 186637
|
|
|
|
|
|
| |
This reverts commit r186599 as I didn't want to commit this yet.
llvm-svn: 186601
|
|
|
|
|
|
|
| |
uses that wanted it. Also change the interface for createCompileUnit
to compensate. Fix comments that refer to TheCU as well.
llvm-svn: 186599
|
|
|
|
| |
llvm-svn: 185456
|
|
|
|
|
|
|
| |
No functionality change. It should suffice to check the type of a debug info
metadata, instead of calling Verify.
llvm-svn: 185383
|
|
|
|
|
|
|
|
|
| |
No functionality change.
It should suffice to check the type of a debug info metadata, instead of
calling Verify. For cases where we know the type of a DI metadata, use
assert.
llvm-svn: 185249
|
|
|
|
|
|
|
|
|
| |
a zero-argument createNullPtrType function for creating the canonical
nullptr type.
Differential Revision: http://llvm-reviews.chandlerc.com/D1050
llvm-svn: 185114
|
|
|
|
| |
llvm-svn: 184892
|
|
|
|
| |
llvm-svn: 184783
|
|
|
|
|
|
|
|
| |
Representing enumerators by int64 instead of uint64 for now. At some
point we need to address the underlying issue of representation
depending on the specific enumeration.
llvm-svn: 184761
|
|
|
|
|
|
| |
and parameter packs
llvm-svn: 184643
|
|
|
|
|
|
| |
Use the correct DIType when creating types in DIBuilder.
llvm-svn: 183543
|
|
|
|
|
|
| |
Use the correct DIType when creating vector types.
llvm-svn: 183484
|