summaryrefslogtreecommitdiffstats
path: root/llvm/test/DebugInfo/member-pointers.ll
Commit message (Collapse)AuthorAgeFilesLines
* DebugInfo: Remove some unneeded conditionals now that DIBuilder no longer ↵David Blaikie2014-02-041-2/+2
| | | | | | | | | | | emits zero-length arrays as {i32 0} A bunch of test cases needed to be cleaned up for this, many my fault - when implementid imported modules I updated test cases by simply duplicating the prior metadata field - which wasn't always the empty metadata entry. llvm-svn: 200731
* Reland r200340 - 'Add line table debug info to COFF files when using a win32 ↵Timur Iskhodzhanov2014-01-301-1/+1
| | | | | | | | triple' This incorporates a couple of fixes reviewed at http://llvm-reviews.chandlerc.com/D2651 llvm-svn: 200440
* Debug Info: update testing cases to specify the debug info version number.Manman Ren2013-11-221-0/+2
| | | | | | | | We are going to drop debug info without a version number or with a different version number, to make sure we don't crash when we see bitcode files with different debug info metadata format. llvm-svn: 195504
* Debug Info: instead of calling addToContextOwner which constructs the contextManman Ren2013-10-291-3/+3
| | | | | | | | | | | | | | | after the DIE creation, we construct the context first. Ensure that we create the context before we create a type so that we can add the newly created type to the parent. Remove last use of addToContextOwner now that it's not needed. We use createAndAddDIE to wrap around "new DIE(". Now all shareable DIEs should be added to their parents right after the creation. Reviewed off-list by Eric, Thanks. llvm-svn: 193657
* Debug Info Testing: update context from empty string to null.Manman Ren2013-09-081-2/+2
| | | | | | Context should be either null or MDNode. llvm-svn: 190267
* Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields.Manman Ren2013-09-061-1/+1
| | | | | | | | Field 2 of DIType (Context), field 9 of DIDerivedType (TypeDerivedFrom), field 12 of DICompositeType (ContainingType), fields 2, 7, 12 of DISubprogram (Context, Type, ContainingType). llvm-svn: 190205
* Debug Info: add an identifier field to DICompositeType.Manman Ren2013-08-261-2/+2
| | | | | | | | | | | | | | | | | | 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
* Debug Info Verifier: enable verification of DICompileUnit.Manman Ren2013-07-261-1/+1
| | | | | | | | We used to call Verify before adding DICompileUnit to the list, and now we remove the check and always add DICompileUnit to the list in DebugInfoFinder, so we can verify them later on. llvm-svn: 187237
* Use the target triple from the target machine rather than the moduleEric Christopher2013-04-271-1/+1
| | | | | | | | | | | | | | | | to determine whether or not we're on a darwin platform for debug code emitting. Solves the problem of a module with no triple on the command line and no triple in the module using non-gdb ok features on darwin. Fix up the member-pointers test to check the correct things for cross platform (DW_FORM_flag is a good prefix). Unfortunately no testcase because I have no ideas how to test something without a triple and without a triple in the module yet check precisely on two platforms. Ideas welcome. llvm-svn: 180660
* Move the XFAIL out of the middle of a comment.Eric Christopher2013-04-271-1/+1
| | | | llvm-svn: 180659
* Revert "Revert "PR14606: debug info imported_module support""David Blaikie2013-04-221-1/+1
| | | | | | | | | | This reverts commit r179840 with a fix to test/DebugInfo/two-cus-from-same-file.ll I'm not sure why that test only failed on ARM & MIPS and not X86 Linux, even though the debug info was clearly invalid on all of them, but this ought to fix it. llvm-svn: 179996
* Revert "PR14606: debug info imported_module support"Eric Christopher2013-04-191-1/+1
| | | | | | This reverts commit r179836 as it seems to have caused test failures. llvm-svn: 179840
* PR14606: debug info imported_module supportDavid Blaikie2013-04-191-1/+1
| | | | | | | | | | Adding another CU-wide list, in this case of imported_modules (since they should be relatively rare, it seemed better to add a list where each element had a "context" value, rather than add a (usually empty) list to every scope). This takes care of DW_TAG_imported_module, but to fully address PR14606 we'll need to expand this to cover DW_TAG_imported_declaration too. llvm-svn: 179836
* Add object-emission flag for lit tests. This flag is usedJyotsna Verma2013-04-101-0/+2
| | | | | | | | | | | | | | | to disable following tests for Hexagon that require direct object generation support. DebugInfo/dwarf-public-names.ll DebugInfo/dwarf-version.ll DebugInfo/member-pointers.ll DebugInfo/namespace.ll DebugInfo/two-cus-from-same-file.ll Fixes bug 15616 - http://llvm.org/bugs/show_bug.cgi?id=15616 llvm-svn: 179209
* Revert "Adding DIImportedModules to DIScopes."David Blaikie2013-03-281-8/+8
| | | | | | | | | This reverts commit 342d92c7a0adeabc9ab00f3f0d88d739fe7da4c7. Turns out we're going with a different schema design to represent DW_TAG_imported_modules so we won't need this extra field. llvm-svn: 178215
* Adding DIImportedModules to DIScopes.David Blaikie2013-03-271-8/+8
| | | | | | | | | | | | This is just the basic groundwork for supporting DW_TAG_imported_module but I wanted to commit this before pushing support further into Clang or LLVM so that this rather churny change is isolated from the rest of the work. The major churn here is obviously adding another field (within the common DIScope prefix) to all DIScopes (files, classes, namespaces, lexical scopes, etc). This should be the last big churny change needed for DW_TAG_imported_module/using directive support/PR14606. llvm-svn: 178099
* XFAIL DebugInfo tests for Hexagon.Jyotsna Verma2013-03-251-0/+1
| | | | | | | | | | | Hexagon does not support -filetype=obj(direct object generation) flag. Therefore, the following tests are being XFAILed: test/DebugInfo/dwarf-public-names.ll test/DebugInfo/member-pointers.ll test/DebugInfo/two-cus-from-same-file.ll llvm-svn: 177901
* Remove unused field in DICompileUnitDavid Blaikie2013-03-201-1/+1
| | | | llvm-svn: 177590
* Refactor the DIFile (2nd) parameter to DITypes to be an MDNode reference to ↵David Blaikie2013-03-201-1/+1
| | | | | | | | | a raw directory/file pair This makes DIType's first non-tag parameter the same as DIFile's, allowing them to both share the common implementation of getFilename/getDirectory in DIScope. llvm-svn: 177467
* Move the DIFile operand to DITypes from the 4th operand to the 2nd.David Blaikie2013-03-191-2/+2
| | | | | | | | This is another step along the way to making all DIScopes have a common prefix which can be added to in a general manner to support using directives (DW_TAG_imported_module). llvm-svn: 177462
* Split out filename & directory from DIFile to start generalizing over DIScopesDavid Blaikie2013-03-171-1/+2
| | | | | | | | | | This is the first step to making all DIScopes have a common metadata prefix (so that things (using directives, for example) that can appear in any scope can be added to that common prefix). DIFile is itself a DIScope so the common prefix of all DIScopes cannot be a DIFile - instead it's the raw filename/directory name pair. llvm-svn: 177239
* Refactor filename/directory in DICompileUnit into a DIFileDavid Blaikie2013-03-131-1/+1
| | | | | | | This is the next step towards making the metadata for DIScopes have a common prefix rather than having to delegate based on their tag type. llvm-svn: 176913
* Remove unused "isMain" field from DICompileUnitDavid Blaikie2013-03-121-1/+1
| | | | llvm-svn: 176910
* Update debug info test cases with empty SplitDebugFilename field.David Blaikie2013-03-121-1/+1
| | | | | | | | | | | | This could be 'null' or the empty string, DIDescriptor::getStringField coalesces the two cases anyway so it's just a matter of legible/efficient representation. The change in behavior of the DICompileUnit::get* functions could be subsumed by the full verification check - but ideally that should just be an assertion if we could front-load the actual debug info metadata failure paths. llvm-svn: 176907
* Remove the (apparently) unnecessary debug info metadata indirection.David Blaikie2013-02-021-5/+3
| | | | | | | | | | The main lists of debug info metadata attached to the compile_unit had an extra layer of metadata nodes they went through for no apparent reason. This patch removes that (& still passes just as much of the GDB 7.5 test suite). If anyone can show evidence as to why these extra metadata nodes are there I'm open to reverting this patch & documenting why they're there. llvm-svn: 174266
* Support artificial parameters in function types.David Blaikie2013-01-291-3/+9
| | | | | | | Provides the functionality for Clang change r172911 - I just had this still lying around. llvm-svn: 173820
* Now that llvm-dwarfdump supports flags to specify which DWARF section to dump,Eli Bendersky2013-01-251-1/+1
| | | | | | | use them in tests that run llvm-dwarfdump. This is in order to make tests as specific as possible. llvm-svn: 173498
* Make test/DebugInfo/member-pointers.ll portable by removing the TargetDataDavid Blaikie2013-01-071-4/+0
| | | | llvm-svn: 171759
* PR14759: Debug info support for C++ member pointers.David Blaikie2013-01-071-0/+34
This works fine with GDB for member variable pointers, but GDB's support for member function pointers seems to be quite unrelated to DW_TAG_ptr_to_member_type. (see GDB bug 14998 for details) llvm-svn: 171698
OpenPOWER on IntegriCloud