Skip to content
  1. Mar 13, 2013
  2. Mar 12, 2013
    • Manman Ren's avatar
      Debug Info: use DW_FORM_ref_addr instead of DW_FORM_ref4 if the referenced DIE · 14a029d9
      Manman Ren authored
      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
      14a029d9
    • David Blaikie's avatar
      Remove support for versioned debug info. · dc69ebb1
      David Blaikie authored
      Versioned debug info support has been a burden to maintain & also compromised
      current debug info verification by causing test cases testing old debug info to
      remain rather than being updated to the latest. It also makes it hard to add or
      change the metadata schema by requiring various backwards-compatibility in the
      DI* hierarchy.
      
      So it's being removed in preparation for new changes to the schema to tidy up
      old/unnecessary fields and add new fields needed for new debug info (well, new
      to LLVM at least).
      
      The more surprising part of this is the changes to DI*::Verify - this became
      necessary due to the changes to AsmWriter. AsmWriter was relying on the version
      test to decide which bits of metadata were actually debug info when printing
      the comment annotations. Without the version information the tag numbers were
      too common & it would print debug info on random metadata that happened to
      start with an integer that matched a tag number. Instead this change makes the
      Verify functions more precise (just adding "number of operands" checks - not
      type checking those operands yet) & relies on that to decide which metadata is
      debug info metadata.
      
      llvm-svn: 176838
      dc69ebb1
  3. Mar 07, 2013
    • Manman Ren's avatar
      Debug Info: store the files and directories for each compile unit. · 1e427208
      Manman Ren authored
      We now emit a line table for each compile unit. To reduce the prologue size
      of each line table, the files and directories used by each compile unit are
      stored in std::map<unsigned, std::vector< > > instead of std::vector< >.
      
      The prologue for a lto'ed image can be as big as 93K. Duplicating 93K for each
      compile unit causes a huge increase of debug info. With this patch, each
      prologue will only emit the files required by the compile unit.
      
      rdar://problem/13342023
      
      llvm-svn: 176605
      1e427208
  4. Feb 23, 2013
  5. Feb 12, 2013
  6. Feb 09, 2013
  7. Feb 07, 2013
  8. Feb 06, 2013
  9. Feb 05, 2013
  10. Jan 31, 2013
    • Manman Ren's avatar
      [Dwarf] early exit to avoid creating dangling DIEs · 53f3f9f0
      Manman Ren authored
      We used to create children DIEs for a scope, then check whether ScopeDIE is
      null. If ScopeDIE is null, the children DIEs will be dangling. Other DIEs can
      link to those dangling DIEs, which are not emitted at all, causing dwarf error.
      
      The current testing case is 4k lines, from MultiSource/BenchMark/McCat/09-vor.
      
      rdar://problem/13071959
      
      llvm-svn: 174084
      53f3f9f0
  11. Jan 28, 2013
  12. Jan 17, 2013
  13. Jan 16, 2013
    • Eric Christopher's avatar
      Split address information for DWARF5 split dwarf proposal. This involves · 962c9089
      Eric Christopher authored
      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
      962c9089
  14. Jan 09, 2013
  15. Jan 08, 2013
  16. Jan 07, 2013
    • Eric Christopher's avatar
      Whitespace and 80-col. · b800ff70
      Eric Christopher authored
      llvm-svn: 171803
      b800ff70
    • Eric Christopher's avatar
      Add support for separating strings for the split debug info DWARF5 · 2cbd5767
      Eric Christopher authored
      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
      2cbd5767
  17. Jan 02, 2013
    • Chandler Carruth's avatar
      Move all of the header files which are involved in modelling the LLVM IR · 9fb823bb
      Chandler Carruth authored
      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
      9fb823bb
  18. Dec 27, 2012
  19. Dec 20, 2012
  20. Dec 19, 2012
  21. Dec 15, 2012
  22. Dec 13, 2012
  23. Dec 11, 2012
  24. Dec 10, 2012
  25. Dec 04, 2012
Loading