summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
Commit message (Collapse)AuthorAgeFilesLines
...
* Debug Info: use DW_FORM_ref_addr instead of DW_FORM_ref4 if the referenced DIEManman Ren2013-03-121-0/+5
| | | | | | | | | | | | | | | | belongs to a different compile unit. DW_FORM_ref_addr should be used for cross compile-unit reference. When compiling a large application, we got a dwarfdump verification error where abstract_origin points to nowhere. This error can't be reproduced on any testing case in MultiSource. We may have other cases where we use DW_FORM_ref4 unconditionally. rdar://problem/13370501 llvm-svn: 176882
* Allow optionally generating pubnames section in DWARF info. IntroduceKrzysztof Parzyszek2013-02-121-0/+9
| | | | | | option "generate-dwarf-pubnames" to control it, set to "false" by default. llvm-svn: 174981
* The last of PR14471 - emission of constant floatsDavid Blaikie2013-01-201-0/+3
| | | | llvm-svn: 172941
* Split out DW_OP_addr for the split debug info DWARF5 proposal.Eric Christopher2013-01-181-0/+5
| | | | llvm-svn: 172857
* Define metadata interfaces for describing a static data memberEric Christopher2013-01-161-0/+6
| | | | | | | | | | | of a class. Emit static data member declarations and definitions through correctly. Part of PR14471. Patch by Paul Robinson! llvm-svn: 172590
* Split address information for DWARF5 split dwarf proposal. This involvesEric Christopher2013-01-151-0/+5
| | | | | | | | | | | | | | | using the DW_FORM_GNU_addr_index and a separate .debug_addr section which stays in the executable and is fully linked. Sneak in two other small changes: a) Print out the debug_str_offsets.dwo section. b) Change form we're expecting the entries in the debug_str_offsets.dwo section to take from ULEB128 to U32. Add tests for all of this in the fission-cu.ll test. llvm-svn: 172578
* Add support for separating strings for the split debug info DWARF5Eric Christopher2013-01-071-0/+4
| | | | | | | | | | | | | proposal. This leaves the strings in the skeleton die as strp, but in all dwo files they're accessed now via DW_FORM_GNU_str_index. Add support for dumping these sections and modify the fission-cu.ll testcase to have the correct strings and form. Fix a small bug in the fixed form sizes routine that involved out of array accesses for the table and add a FIXME in the extractFast routine to fix this up. llvm-svn: 171779
* Whitespace and 80-column cleanup.Eric Christopher2012-12-201-8/+8
| | | | llvm-svn: 170771
* Start splitting out the debug string section handling by moving itEric Christopher2012-12-201-1/+5
| | | | | | into the DwarfUnits class. llvm-svn: 170770
* s/getLowerBoundDefault/getDefaultLowerBound/ for consistency. Also put the ↵Bill Wendling2012-12-061-1/+3
| | | | | | more natural check first in the if-then statement. llvm-svn: 169486
* Handle non-default array bounds.Bill Wendling2012-12-061-1/+2
| | | | | | | | | Some languages, e.g. Ada and Pascal, allow you to specify that the array bounds are different from the default (1 in these cases). If we have a lower bound that's non-default, then we emit the lower bound. We also calculate the correct upper bound in those cases. llvm-svn: 169484
* Sort includes for all of the .h files under the 'lib' tree. These wereChandler Carruth2012-12-041-2/+2
| | | | | | | | | | missed in the first pass because the script didn't yet handle include guards. Note that the script is now able to handle all of these headers without manual edits. =] llvm-svn: 169224
* Fix PR12942: Allow two CUs to be generated from the same source file.Eli Bendersky2012-12-031-4/+4
| | | | | | Thanks Eric for the review. llvm-svn: 169142
* 80-col fixup.Eric Christopher2012-09-101-2/+2
| | | | llvm-svn: 163569
* Use DW_FORM_flag_present to save space in debug information if we'reEric Christopher2012-08-241-0/+3
| | | | | | | | not in darwin gdb compat mode. Fixes rdar://10975088 llvm-svn: 162526
* Move lib/Analysis/DebugInfo.cpp to lib/VMCore/DebugInfo.cpp andBill Wendling2012-06-281-1/+1
| | | | | | | | | include/llvm/Analysis/DebugInfo.h to include/llvm/DebugInfo.h. The reasoning is because the DebugInfo module is simply an interface to the debug info MDNodes and has nothing to do with analysis. llvm-svn: 159312
* Add support for objc property decls according to the page at:Eric Christopher2012-03-291-0/+1
| | | | | | | | | | http://llvm.org/docs/SourceLevelDebugging.html#objcproperty including type and DECL. Expand the metadata needed accordingly. rdar://11144023 llvm-svn: 153639
* Fix the output of the DW_TAG_friend tag to include DW_AT_friendEric Christopher2012-03-281-2/+4
| | | | | | | | and not the rest of the member tag. Fixes PR11695 llvm-svn: 153570
* Add the source language into the compile unit.Eric Christopher2012-02-221-1/+6
| | | | llvm-svn: 151143
* As part of the ongoing work in finalizing the accelerator tables, extendEric Christopher2012-01-061-4/+5
| | | | | | | | | the debug type accelerator tables to contain the tag and a flag stating whether or not a compound type is a complete type. rdar://10652330 llvm-svn: 147651
* Make types and namespaces take multiple DIEs for the accelerator tablesEric Christopher2011-11-101-6/+12
| | | | | | as well. llvm-svn: 144319
* Rework adding function names to the dwarf accelerator tables, allowEric Christopher2011-11-101-3/+8
| | | | | | multiple dies per function and support C++ basenames. llvm-svn: 144304
* Remove the pubnames section, no one consumes it.Eric Christopher2011-11-091-9/+0
| | | | llvm-svn: 144169
* Add the support code to enable the dwarf accelerator tables. Upcoming patchesEric Christopher2011-11-071-0/+28
| | | | | | | | to fix the types section (all types, not just global types), and testcases. The code to do the final emission is disabled by default. llvm-svn: 143923
* Typo.Eric Christopher2011-11-071-1/+1
| | | | llvm-svn: 143918
* Teach our Dwarf emission to use the string pool.Nick Lewycky2011-10-271-2/+1
| | | | llvm-svn: 143097
* Until now all debug info MDNodes referred to a root MDNode, a compile unit. ↵Devang Patel2011-08-161-1/+1
| | | | | | | | This simplified handling of these needs in dwarf writer. However, one side effect of this is that during link time optimization all these MDNodes are _not_ uniqued. In other words there will be N number of MDNodes describing "int", "char" and all other types, which would suddenly grow when each object file starts using libraries like STL. MDNodes graph structure such that compiler unit keeps track of important MDNodes and update dwarf writer to process mdnodes top-down instead of bottom up. llvm-svn: 137778
* Refactor. Variables are part of compile unit so let CompileUnit create new ↵Devang Patel2011-08-151-0/+3
| | | | | | variable. llvm-svn: 137663
* Refactor. Global variables are part of compile unit so let CompileUnit ↵Devang Patel2011-08-151-0/+3
| | | | | | create new global variable. llvm-svn: 137621
* Refactor. A subprogram is part of compile unit so let CompileUnit construct ↵Devang Patel2011-08-151-0/+12
| | | | | | new subprogram. llvm-svn: 137618
* Handle debug info for i128 constants.Devang Patel2011-06-241-1/+1
| | | | llvm-svn: 133821
* Incomplete type may not have corresponding DIE, so do not check DIEEntry ↵Devang Patel2011-06-011-1/+1
| | | | | | eagerly. llvm-svn: 132377
* Refactor.Devang Patel2011-05-311-3/+1
| | | | llvm-svn: 132373
* Select DW_AT_const_value size based on variable size.Devang Patel2011-05-271-1/+1
| | | | llvm-svn: 132193
* Fix typo.Jim Grosbach2011-05-201-1/+1
| | | | llvm-svn: 131757
* Simplify handling of variables with complex address (i.e. blocks variables)Devang Patel2011-04-271-6/+3
| | | | llvm-svn: 130339
* Refactor code. Keep dwarf register operation selection logic at one place.Devang Patel2011-04-261-0/+6
| | | | llvm-svn: 130231
* Rename a method to match what it really does.Devang Patel2011-04-251-3/+3
| | | | | | s/addVariableAddress/addFrameVariableAddress/g llvm-svn: 130170
* Do not reuse parameter name.Devang Patel2011-04-121-1/+1
| | | | llvm-svn: 129405
* This mechanical patch moves type handling into CompileUnit from DwarfDebug. ↵Devang Patel2011-04-121-2/+158
| | | | | | In case of multiple compile unit in one object file, each compile unit is responsible for its own set of type entries anyway. This refactoring makes this obvious. llvm-svn: 129402
* Refactor CompileUnit into a separate header.Devang Patel2011-04-121-0/+123
llvm-svn: 129367
OpenPOWER on IntegriCloud