Page MenuHomePhabricator

debug-infoProject
ActivePublic

Recent Activity

Today

aprantl added inline comments to D66667: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Fri, Aug 23, 11:03 AM · debug-info
shafik added a parent revision for D66667: Debug Info: Support for DW_AT_export_symbols for anonymous structs: D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Fri, Aug 23, 10:55 AM · debug-info
shafik added a child revision for D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs: D66667: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Fri, Aug 23, 10:55 AM · debug-info
shafik created D66667: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Fri, Aug 23, 10:55 AM · debug-info
shafik closed D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Fri, Aug 23, 10:19 AM · Restricted Project, debug-info
probinson added inline comments to D66643: [DWARF] Support DWARF64 in DWARFListTableHeader..
Fri, Aug 23, 8:43 AM · Restricted Project, debug-info
aprantl added a comment to D66643: [DWARF] Support DWARF64 in DWARFListTableHeader..

Seems reasonable.

Fri, Aug 23, 8:28 AM · Restricted Project, debug-info
ikudrin created D66643: [DWARF] Support DWARF64 in DWARFListTableHeader..
Fri, Aug 23, 5:06 AM · Restricted Project, debug-info

Yesterday

aprantl added a comment to D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

LGMT!

Thu, Aug 22, 2:14 PM · debug-info
shafik updated the diff for D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
  • Adding more context
  • Adjusting the test to be more strict
Thu, Aug 22, 2:08 PM · debug-info
aprantl accepted D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 1:42 PM · debug-info
dblaikie added a comment to D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

(oops, nevermind my last - I hastily assumed this was the LLDB change to use export_symbols, rather than the llvm side to emit it)

Thu, Aug 22, 12:22 PM · debug-info
dblaikie added a comment to D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 12:18 PM · debug-info
aprantl added inline comments to D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 11:06 AM · debug-info
aprantl added inline comments to D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 11:06 AM · debug-info
shafik added a child revision for D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs: D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 10:50 AM · Restricted Project, debug-info
shafik added a parent revision for D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs: D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 10:50 AM · debug-info
shafik created D66605: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Thu, Aug 22, 10:50 AM · debug-info
djtodoro added a comment to D66526: WIP: [utils] Add the llvm-locstats tool.

@vsk

I really like this approach. Thanks for doing this!

Thanks!

Thu, Aug 22, 7:42 AM · Restricted Project, debug-info
djtodoro added a comment to D66525: WIP: [llvm-dwarfdump] Add additional stats fields.

@vsk Thanks for your comments!

Thu, Aug 22, 7:42 AM · Restricted Project, debug-info
Orlando added inline comments to D66526: WIP: [utils] Add the llvm-locstats tool.
Thu, Aug 22, 3:06 AM · Restricted Project, debug-info

Wed, Aug 21

aprantl accepted D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
Wed, Aug 21, 3:29 PM · Restricted Project, debug-info
shafik updated the diff for D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.
  • Adding documentation to LangRef.rst
  • Simplified the test further.
Wed, Aug 21, 3:07 PM · Restricted Project, debug-info
shafik added a comment to D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

@djtodoro Thank for the suggestions on how to simplify the test even more.

Wed, Aug 21, 3:05 PM · Restricted Project, debug-info
avl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Wed, Aug 21, 2:24 PM · Restricted Project, debug-info
vsk added a comment to D66525: WIP: [llvm-dwarfdump] Add additional stats fields.

Have you considered representing scope coverage using a map from decile to the number of variables in that decile? The map can contain two special keys for 0 and 100 if you'd like, and could be emitted as JSON directly. I expect that will simplify the code substantially (both here and in the locstats utility) and offer more granular reports.

Wed, Aug 21, 10:29 AM · Restricted Project, debug-info
dblaikie added a reviewer for D66525: WIP: [llvm-dwarfdump] Add additional stats fields: cmtice.
Wed, Aug 21, 10:12 AM · Restricted Project, debug-info
vsk added a comment to D66526: WIP: [utils] Add the llvm-locstats tool.

I really like this approach. Thanks for doing this!

Wed, Aug 21, 9:38 AM · Restricted Project, debug-info
aprantl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Wed, Aug 21, 8:38 AM · Restricted Project, debug-info
ikudrin added a watcher for debug-info: ikudrin.
Wed, Aug 21, 6:31 AM
djtodoro added a comment to D65585: WIP: [llvm-locstats] Add the llvm-locstats tool.

The revisions are: D66525 and D66526.

Wed, Aug 21, 5:28 AM · Restricted Project, debug-info
djtodoro added a child revision for D66525: WIP: [llvm-dwarfdump] Add additional stats fields: D66526: WIP: [utils] Add the llvm-locstats tool.
Wed, Aug 21, 5:28 AM · Restricted Project, debug-info
djtodoro added a parent revision for D66526: WIP: [utils] Add the llvm-locstats tool: D66525: WIP: [llvm-dwarfdump] Add additional stats fields.
Wed, Aug 21, 5:28 AM · Restricted Project, debug-info
djtodoro created D66526: WIP: [utils] Add the llvm-locstats tool.
Wed, Aug 21, 5:28 AM · Restricted Project, debug-info
djtodoro created D66525: WIP: [llvm-dwarfdump] Add additional stats fields.
Wed, Aug 21, 5:06 AM · Restricted Project, debug-info
djtodoro abandoned D65585: WIP: [llvm-locstats] Add the llvm-locstats tool.

I am abandoning this and creating new revisions for the tool implemented as an utility (within utils/).

Wed, Aug 21, 4:55 AM · Restricted Project, debug-info
djtodoro added a comment to D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

Thanks for this (just added a few nitpicks inside).

Wed, Aug 21, 1:50 AM · Restricted Project, debug-info
avl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Wed, Aug 21, 1:32 AM · Restricted Project, debug-info

Tue, Aug 20

aprantl added a comment to D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

Could you please also document the new flag in LangRef.rst under DIFlags?

Tue, Aug 20, 5:16 PM · Restricted Project, debug-info
shafik updated the diff for D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

Changed isExportSymbols -> getExportSymbols

Tue, Aug 20, 5:07 PM · Restricted Project, debug-info
aprantl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Tue, Aug 20, 3:14 PM · Restricted Project, debug-info
aganea closed D66328: [DebugInfo] Add debug location to dynamic atexit destructor.
Tue, Aug 20, 3:08 PM · Restricted Project, debug-info, Restricted Project
aganea added a comment to D66328: [DebugInfo] Add debug location to dynamic atexit destructor.

Thank you!

Tue, Aug 20, 3:06 PM · Restricted Project, debug-info, Restricted Project
aprantl accepted D66328: [DebugInfo] Add debug location to dynamic atexit destructor.
Tue, Aug 20, 2:11 PM · Restricted Project, debug-info, Restricted Project
avl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Tue, Aug 20, 1:57 PM · Restricted Project, debug-info
aganea added inline comments to D66328: [DebugInfo] Add debug location to dynamic atexit destructor.
Tue, Aug 20, 1:37 PM · Restricted Project, debug-info, Restricted Project
aganea updated the diff for D66328: [DebugInfo] Add debug location to dynamic atexit destructor.
Tue, Aug 20, 1:37 PM · Restricted Project, debug-info, Restricted Project
dblaikie added a comment to D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

Looking at the dwarfstd.org examples, without the flag (e.g., for DWARF v4) we should emit something like this:

<1> DW_TAG_struct_type
        DW_AT_name "A"
  <2> DW_TAG_struct_type
          // no DW_AT_name
      <3> DW_TAG_member
            DW_AT_name "x"
            DW_AT_type (int)
  <4> DW_TAG_struct_type
          // no DW_AT_name
      <5> DW_TAG_member
            DW_AT_name "y"
            DW_AT_type (int)
  <6> DW_TAG_member // this is A's member for the anonymous struct
          // no DW_AT_name
          DW_AT_type <2>
  <7> DW_TAG_member // this is A's member for the unnamed struct
          DW_AT_name "C"
          DW_AT_type <4>

which means the way the consumer knows to promote the members of <2> to the scope of <1> is that its only reference (from <6>) is via a member that is unnamed, and it knows NOT to promote the members of <4> because the reference to it is from a member that IS named.

Seems cleaner to flag the struct in v5, especially as it has essentially zero size cost (DW_AT_export_names would use DW_FORM_flag_present).

I'm aware that other languages can have different lookup rules, some of which really can't be expressed in DWARF and the consumer has to Just Know, if it's the kind of consumer that is expected to do name lookups. And the consumer also has to be ready to do the more complicated thing for earlier DWARF versions that don't have the flag. But if we have the flag, it seems like we ought to make use of it here.

Tue, Aug 20, 11:02 AM · Restricted Project, debug-info
probinson added a comment to D66352: Debug Info: Support for DW_AT_export_symbols for anonymous structs.

Looking at the dwarfstd.org examples, without the flag (e.g., for DWARF v4) we should emit something like this:

<1> DW_TAG_struct_type
        DW_AT_name "A"
  <2> DW_TAG_struct_type
          // no DW_AT_name
      <3> DW_TAG_member
            DW_AT_name "x"
            DW_AT_type (int)
  <4> DW_TAG_struct_type
          // no DW_AT_name
      <5> DW_TAG_member
            DW_AT_name "y"
            DW_AT_type (int)
  <6> DW_TAG_member // this is A's member for the anonymous struct
          // no DW_AT_name
          DW_AT_type <2>
  <7> DW_TAG_member // this is A's member for the unnamed struct
          DW_AT_name "C"
          DW_AT_type <4>

which means the way the consumer knows to promote the members of <2> to the scope of <1> is that its only reference (from <6>) is via a member that is unnamed, and it knows NOT to promote the members of <4> because the reference to it is from a member that IS named.

Tue, Aug 20, 9:54 AM · Restricted Project, debug-info
aprantl added inline comments to D64595: [Debuginfo][SROA] Need to handle dbg.value in SROA pass..
Tue, Aug 20, 8:48 AM · Restricted Project, debug-info