Skip to content
  1. Oct 18, 2011
    • Nick Lewycky's avatar
      Add support for a new extension to the .file directive: · 40f8f2ff
      Nick Lewycky authored
        .file filenumber "directory" "filename"
      
      This removes one join+split of the directory+filename in MC internals. Because
      bitcode files have independent fields for directory and filenames in debug info,
      this patch may change the .o files written by existing .bc files.
      
      llvm-svn: 142300
      40f8f2ff
  2. Oct 12, 2011
    • Eric Christopher's avatar
      Add a new wrapper node for a DILexicalBlock that encapsulates it and a · 6647b830
      Eric Christopher authored
      file. Since it should only be used when necessary propagate it through
      the backend code generation and tweak testcases accordingly.
      
      This helps with code like in clang's test/CodeGen/debug-info-line.c where
      we have multiple #line directives within a single lexical block and want
      to generate only a single block that contains each file change.
      
      Part of rdar://10246360
      
      llvm-svn: 141729
      6647b830
  3. Oct 03, 2011
  4. Aug 20, 2011
  5. Aug 19, 2011
  6. Aug 17, 2011
    • Devang Patel's avatar
      Until now all debug info MDNodes referred to a root MDNode, a compile unit.... · eb1bb4e4
      Devang Patel authored
      Until now all debug info MDNodes referred to a root MDNode, a compile unit. 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
      eb1bb4e4
  7. Aug 16, 2011
  8. Aug 15, 2011
  9. Aug 12, 2011
  10. Aug 11, 2011
  11. Aug 10, 2011
  12. Aug 08, 2011
  13. Aug 05, 2011
    • Chandler Carruth's avatar
      Temporarily revert r135528 which distinguishes between two copies of one · 81b7e11c
      Chandler Carruth authored
      inlined variable, based on the discussion in PR10542.
      
      This explodes the runtime of several passes down the pipeline due to
      a large number of "copies" remaining live across a large function. This
      only shows up with both debug and opt, but when it does it creates
      a many-minute compile when self-hosting LLVM+Clang. There are several
      other cases that show these types of regressions.
      
      All of this is tracked in PR10542, and progress is being made on fixing
      the issue. Once its addressed, the re-instated, but until then this
      restores the performance for self-hosting and other opt+debug builds.
      
      Devang, let me know if this causes any trouble, or impedes fixing it in
      any way, and thanks for working on this!
      
      llvm-svn: 136953
      81b7e11c
  14. Aug 03, 2011
  15. Jul 29, 2011
  16. Jul 28, 2011
  17. Jul 27, 2011
    • Devang Patel's avatar
      It is quiet possible that inlined function body is split into multiple chunks... · f098ce27
      Devang Patel authored
      It is quiet possible that inlined function body is split into multiple chunks of consequtive instructions. But, there is not any way to describe this in .debug_inline accelerator table used by gdb. However, describe non contiguous ranges of inlined function body appropriately using AT_range of DW_TAG_inlined_subroutine debug info entry.
      
      llvm-svn: 136196
      f098ce27
  18. Jul 26, 2011
  19. Jul 21, 2011
    • Devang Patel's avatar
      Refactor. · ddfe66e9
      Devang Patel authored
      llvm-svn: 135633
      ddfe66e9
    • Devang Patel's avatar
      There are two ways to map a variable to its lexical scope. Lexical scope... · 8fb9fd67
      Devang Patel authored
      There are two ways to map a variable to its lexical scope. Lexical scope information is embedded in MDNode describing the variable. It is also available as a part of DebugLoc attached with DBG_VALUE instruction. DebugLoc attached with an instruction is less reliable in optimized code so use information embedded in the MDNode.
      
      llvm-svn: 135629
      8fb9fd67
  20. Jul 20, 2011
  21. Jul 15, 2011
Loading