summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/DIBuilder.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove unused field in DISubprogramDavid Blaikie2013-03-211-4/+6
| | | | llvm-svn: 177661
* Debug info: refactor the first field of DICompileUnit to be a raw ↵David Blaikie2013-03-201-7/+12
| | | | | | | | file/directory pair This removes the DICompileUnit special case from DIScope. llvm-svn: 177610
* Debug Info: Swap the 2nd and 3rd parameters to DICompileUnit to match the ↵David Blaikie2013-03-201-1/+1
| | | | | | common DIScope prefix llvm-svn: 177595
* Remove unused field in DICompileUnitDavid Blaikie2013-03-201-1/+0
| | | | llvm-svn: 177590
* Refactor file/directory path in namespace debug info to refer directly to ↵David Blaikie2013-03-201-1/+1
| | | | | | | | the pair rather than the DIFile (paired to a Clang test - excuse the buildbot skew/fallout) llvm-svn: 177566
* DIBuilder: allow linkage name to be specified for global variablesDavid Blaikie2013-03-201-4/+13
| | | | | | Patch by Kai Nacke (kai@redstar.de) llvm-svn: 177547
* Reorder the DIFile parameter in DINameSpaceDavid Blaikie2013-03-201-1/+1
| | | | | | | | Moving the DIFile parameter to immediately proceed the tag so that it will be a common prefix with other DIScopes (once the DIFile is replaced with the raw file/directory pair). llvm-svn: 177492
* Refactor the DIFile (2nd) parameter to DITypes to be an MDNode reference to ↵David Blaikie2013-03-201-10/+10
| | | | | | | | | 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-44/+21
| | | | | | | | 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
* Fix the build broken in r177239David Blaikie2013-03-171-1/+1
| | | | | | Seems some accidental C++11 crept in there. Reported by the C++98 buildbots. llvm-svn: 177241
* Split out filename & directory from DIFile to start generalizing over DIScopesDavid Blaikie2013-03-171-2/+5
| | | | | | | | | | 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
* Remove the unused 4th operand for DIFile debug info metadataDavid Blaikie2013-03-131-1/+0
| | | | llvm-svn: 176983
* Refactor filename/directory in DICompileUnit into a DIFileDavid Blaikie2013-03-131-3/+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-2/+0
| | | | llvm-svn: 176910
* Add asserts to DIBuilder & fix DINameSpace::Verify to allow unnamed namespaces.David Blaikie2013-03-111-6/+31
| | | | llvm-svn: 176837
* DIBuilder: support structs with vtable pointers in the same way as classesDavid Blaikie2013-02-251-8/+12
| | | | llvm-svn: 176004
* Add a field to the compile unit of where we plan on splitting outEric Christopher2013-02-221-2/+3
| | | | | | | the debug info for -gsplit-dwarf so we can encode that location in the skeleton cu. llvm-svn: 175933
* Add a TODO and explain when we can get rid of the isMain field.Eric Christopher2013-02-221-1/+1
| | | | llvm-svn: 175932
* DIBuilder: Correct the null/0 type of trailing fields in struct debug info.David Blaikie2013-02-181-2/+2
| | | | | | Paired with an Clang commit so this may cause temporary build failures. llvm-svn: 175426
* DIBuilder: Add function and method definitions to the list of all subprogramsDavid Blaikie2013-02-181-1/+4
| | | | | | | | Previously we seemed to be assuming that all functions were definitions and all methods were declarations. This may be consistent with how Clang uses DIBuilder but doesn't have to be true of all clients (such as DragonEgg). llvm-svn: 175423
* Narrow the return types of a few DIBuilder utility functions.David Blaikie2013-02-181-39/+37
| | | | llvm-svn: 175421
* DIBuilder: make the return type of createBasicType more specificDavid Blaikie2013-02-121-4/+4
| | | | llvm-svn: 174924
* [DebugInfo] remove more node indirection (this time from the subprogram's ↵David Blaikie2013-02-041-10/+2
| | | | | | variable lists) llvm-svn: 174305
* Remove the (apparently) unnecessary debug info metadata indirection.David Blaikie2013-02-021-12/+4
| | | | | | | | | | 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
* Define metadata interfaces for describing a static data memberEric Christopher2013-01-161-3/+29
| | | | | | | | | | | of a class. Emit static data member declarations and definitions through correctly. Part of PR14471. Patch by Paul Robinson! llvm-svn: 172590
* Remove the llvm-local DW_TAG_vector_type tag and add a test toEric Christopher2013-01-081-3/+4
| | | | | | make sure that vector types do work. llvm-svn: 171833
* Fix comment.Eric Christopher2013-01-081-1/+2
| | | | llvm-svn: 171832
* PR14759: Debug info support for C++ member pointers.David Blaikie2013-01-071-0/+18
| | | | | | | | 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
* Move all of the header files which are involved in modelling the LLVM IRChandler Carruth2013-01-021-3/+3
| | | | | | | | | | | | | | | | | | | | | into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. llvm-svn: 171366
* Rename VMCore directory to IR.Chandler Carruth2013-01-021-0/+1045
Aside from moving the actual files, this patch only updates the build system and the source file comments under lib/... that are relevant. I'll be updating other docs and other files in smaller subsequnet commits. While I've tried to test this, but it is entirely possible that there will still be some build system fallout. Also, note that I've not changed the library name itself: libLLVMCore.a is still the library name. I'd be interested in others' opinions about whether we should rename this as well (I think we should, just not sure what it might break) llvm-svn: 171359
OpenPOWER on IntegriCloud