Page MenuHomePhabricator
Feed Advanced Search

Today

ikudrin added a comment to D78208: [DebugInfo] Report the format of the DWARF64 sections..

I've prepared an alternative version, which reports both 32- and 64-bit formats, D80523. Let's check and decide, which is more preferable, compatibility or consistency of the reports.

Mon, May 25, 9:05 AM · debug-info, Restricted Project
ikudrin created D80523: [DebugInfo] Report the format of debug info tables..
Mon, May 25, 9:05 AM · debug-info, Restricted Project
ikudrin retitled D80511: [llvm-objcopy][ELF] Fix removing ".group" sections. from [llvm-objcopy] Fix removing ".group" sections. to [llvm-objcopy][ELF] Fix removing ".group" sections..
Mon, May 25, 3:10 AM · Restricted Project
ikudrin created D80511: [llvm-objcopy][ELF] Fix removing ".group" sections..
Mon, May 25, 2:38 AM · Restricted Project

Fri, May 22

ikudrin updated the diff for D80382: [MC] Implement generating 64-bit debug info..
  • Extended checks in the main test.
  • Moved checks for error cases into a separate test.
  • Addressed other comments.
Fri, May 22, 4:45 AM · debug-info, Restricted Project
ikudrin added a comment to D80382: [MC] Implement generating 64-bit debug info..

So this is DWARF64 support for debug_line in LLVM?

Not exactly. The patch supports all tables that llvm-mc can generate if I have not missed anything. And the support, for now, is enabled only in the tool itself.

Fri, May 22, 4:45 AM · debug-info, Restricted Project

Thu, May 21

ikudrin added a child revision for D78208: [DebugInfo] Report the format of the DWARF64 sections.: D80382: [MC] Implement generating 64-bit debug info..
Thu, May 21, 6:25 PM · debug-info, Restricted Project
ikudrin added a parent revision for D80382: [MC] Implement generating 64-bit debug info.: D78208: [DebugInfo] Report the format of the DWARF64 sections..
Thu, May 21, 6:25 PM · debug-info, Restricted Project
ikudrin created D80382: [MC] Implement generating 64-bit debug info..
Thu, May 21, 9:09 AM · debug-info, Restricted Project
ikudrin added a comment to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.

I am still not really contented that there are two distinct methods to get strings from a string section in DWARFDebugMacro::parseImpl(), one for _strp codes and another for _strx. Is there a way to unify them?

Thu, May 21, 2:40 AM · Restricted Project, debug-info

Wed, May 20

ikudrin committed rG0e41d647ceae: [MC] Simplify MakeStartMinusEndExpr(). NFC. (authored by ikudrin).
[MC] Simplify MakeStartMinusEndExpr(). NFC.
Wed, May 20, 11:08 PM
ikudrin closed D80205: [MC] Simplify MakeStartMinusEndExpr(). NFC..
Wed, May 20, 11:08 PM · Restricted Project

Tue, May 19

ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Tue, May 19, 9:26 PM · Restricted Project, debug-info
ikudrin created D80205: [MC] Simplify MakeStartMinusEndExpr(). NFC..
Tue, May 19, 5:54 AM · Restricted Project
ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Tue, May 19, 5:22 AM · Restricted Project, debug-info
ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Tue, May 19, 3:45 AM · Restricted Project, debug-info

Mon, May 18

ikudrin committed rG61f859785f6f: [DebugInfo] Add a test for dumping DWARF64 CIEs and FDEs (8/8). (authored by ikudrin).
[DebugInfo] Add a test for dumping DWARF64 CIEs and FDEs (8/8).
Mon, May 18, 11:58 PM
ikudrin committed rG7e9a740198fb: [DebugInfo] Dump values in .debug_pubnames and .debug_pubtypes according to the… (authored by ikudrin).
[DebugInfo] Dump values in .debug_pubnames and .debug_pubtypes according to the…
Mon, May 18, 11:58 PM
ikudrin committed rGe94382ee37d9: [DebugInfo] Dump offsets in .debug_str_offsets according to the DWARF format… (authored by ikudrin).
[DebugInfo] Dump offsets in .debug_str_offsets according to the DWARF format…
Mon, May 18, 11:58 PM
ikudrin committed rG2094c5d29200: [DebugInfo] Dump values in .debug_loclists and .debug_rnglists according to the… (authored by ikudrin).
[DebugInfo] Dump values in .debug_loclists and .debug_rnglists according to the…
Mon, May 18, 11:58 PM
ikudrin committed rGc9122b8f7002: [DebugInfo] Dump length in .debug_line according to the DWARF format (4/8). (authored by ikudrin).
[DebugInfo] Dump length in .debug_line according to the DWARF format (4/8).
Mon, May 18, 11:58 PM
ikudrin committed rG0db1684b7435: [DebugInfo] Dump length of CUs and TUs according to the DWARF format (3/8). (authored by ikudrin).
[DebugInfo] Dump length of CUs and TUs according to the DWARF format (3/8).
Mon, May 18, 11:58 PM
ikudrin committed rG69dfa07b4cef: [DebugInfo] Dump fields in .debug_aranges according to the DWARF format (1/8). (authored by ikudrin).
[DebugInfo] Dump fields in .debug_aranges according to the DWARF format (1/8).
Mon, May 18, 11:58 PM
ikudrin committed rGf92a55451655: [DebugInfo] Dump form values according to the DWARF format (2/8). (authored by ikudrin).
[DebugInfo] Dump form values according to the DWARF format (2/8).
Mon, May 18, 11:58 PM
ikudrin committed rG04e005009ab5: [DebugInfo] Remove an outdated test. (authored by ikudrin).
[DebugInfo] Remove an outdated test.
Mon, May 18, 11:58 PM
ikudrin closed D79997: [DebugInfo] Dump fields according to their formats..
Mon, May 18, 11:57 PM · debug-info, Restricted Project
ikudrin closed D80122: [DebugInfo] Remove an outdated test..
Mon, May 18, 11:57 PM · debug-info, Restricted Project
ikudrin created D80122: [DebugInfo] Remove an outdated test..
Mon, May 18, 7:29 AM · debug-info, Restricted Project
ikudrin added a comment to D78208: [DebugInfo] Report the format of the DWARF64 sections..

Given D79997, do we really need this still? The DWARF format of something could be inferred from the width of the length field, I'd think.

Mon, May 18, 3:10 AM · debug-info, Restricted Project
ikudrin added inline comments to D79997: [DebugInfo] Dump fields according to their formats..
Mon, May 18, 3:10 AM · debug-info, Restricted Project

Sun, May 17

ikudrin added a comment to D79997: [DebugInfo] Dump fields according to their formats..

Looks good - might be good/better to commit per-section, to isolate the changes/testing/etc.

Sun, May 17, 11:57 PM · debug-info, Restricted Project

Fri, May 15

ikudrin updated the diff for D78208: [DebugInfo] Report the format of the DWARF64 sections..
Fri, May 15, 5:53 AM · debug-info, Restricted Project
ikudrin added a parent revision for D78208: [DebugInfo] Report the format of the DWARF64 sections.: D79997: [DebugInfo] Dump fields according to their formats..
Fri, May 15, 5:53 AM · debug-info, Restricted Project
ikudrin added a child revision for D79997: [DebugInfo] Dump fields according to their formats.: D78208: [DebugInfo] Report the format of the DWARF64 sections..
Fri, May 15, 5:53 AM · debug-info, Restricted Project
ikudrin updated the diff for D79997: [DebugInfo] Dump fields according to their formats..
  • Add test DebugInfo/X86/debug-frame-dwarf64.s
Fri, May 15, 5:53 AM · debug-info, Restricted Project
ikudrin created D79997: [DebugInfo] Dump fields according to their formats..
Fri, May 15, 5:53 AM · debug-info, Restricted Project

Fri, May 8

ikudrin committed rGc6ed1fcf245b: [DebugInfo] Dump raw data in a case of decoding error of an expression. (authored by ikudrin).
[DebugInfo] Dump raw data in a case of decoding error of an expression.
Fri, May 8, 8:25 PM
ikudrin closed D79622: [DebugInfo] Dump raw data in a case of decoding error of an expression..
Fri, May 8, 8:25 PM · debug-info, Restricted Project
ikudrin created D79622: [DebugInfo] Dump raw data in a case of decoding error of an expression..
Fri, May 8, 3:11 AM · debug-info, Restricted Project
ikudrin committed rG6ab09e717745: Fix a failing test. (authored by ikudrin).
Fix a failing test.
Fri, May 8, 2:07 AM
ikudrin committed rG989ae9e848a0: [DebugInfo] Fix handling DW_OP_call_ref in DWARF64 units. (authored by ikudrin).
[DebugInfo] Fix handling DW_OP_call_ref in DWARF64 units.
Fri, May 8, 1:34 AM
ikudrin committed rG050c9dd43a0f: [DebugInfo] Fix printing values of forms which depend on the DWARF format. (authored by ikudrin).
[DebugInfo] Fix printing values of forms which depend on the DWARF format.
Fri, May 8, 1:34 AM
ikudrin closed D79501: [DebugInfo] Fix handling DW_OP_call_ref in DWARF64 units..
Fri, May 8, 1:34 AM · debug-info, Restricted Project
ikudrin closed D79093: [DebugInfo] Fix printing values of forms which depend on the DWARF format..
Fri, May 8, 1:34 AM · debug-info, Restricted Project
ikudrin added a comment to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.

LGTM with a nit. Please wait a couple of days in case other reviewers have anything to say,

Fri, May 8, 1:34 AM · Restricted Project, debug-info

Thu, May 7

ikudrin added inline comments to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.
Thu, May 7, 10:44 PM · Restricted Project, debug-info
ikudrin added inline comments to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.
Thu, May 7, 9:04 AM · Restricted Project, debug-info
ikudrin updated the diff for D79093: [DebugInfo] Fix printing values of forms which depend on the DWARF format..
  • Shortened values in the test.
  • Added DWARF32 test cases for the same forms. They might be useful later to show the difference in dumping DWARF32/64 variants.
Thu, May 7, 8:29 AM · debug-info, Restricted Project
ikudrin updated the diff for D79501: [DebugInfo] Fix handling DW_OP_call_ref in DWARF64 units..
  • The DWARF format was made optional in DWARFExpression.
  • Added a test to check that DW_OP_call_ref is not supported in location lists. That checks the code path when the DWARF format for DWARFExpression is not specified.
Thu, May 7, 5:03 AM · debug-info, Restricted Project

Wed, May 6

ikudrin added inline comments to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.
Wed, May 6, 6:46 PM · Restricted Project, debug-info
ikudrin created D79501: [DebugInfo] Fix handling DW_OP_call_ref in DWARF64 units..
Wed, May 6, 9:40 AM · debug-info, Restricted Project
ikudrin added inline comments to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.
Wed, May 6, 9:07 AM · Restricted Project, debug-info

Thu, Apr 30

ikudrin added a comment to D79165: [DebugInfo] - DWARFDebugFrame: do not call abort() on errors..

Overall looks good. You may want to add a note to PR45105.

Thu, Apr 30, 6:46 AM · Restricted Project
ikudrin added a comment to D79093: [DebugInfo] Fix printing values of forms which depend on the DWARF format..

If the value to be printed is only 10 digits wide, I think we do not get 6 leading zeros? Is that how we are formatting 64-bit values in general?

Thu, Apr 30, 3:01 AM · debug-info, Restricted Project

Wed, Apr 29

ikudrin created D79093: [DebugInfo] Fix printing values of forms which depend on the DWARF format..
Wed, Apr 29, 8:00 AM · debug-info, Restricted Project

Tue, Apr 28

ikudrin committed rG9f65f5acca19: [LLD][ELF] Eliminate symbols of merged .ARM.exidx sections. (authored by ikudrin).
[LLD][ELF] Eliminate symbols of merged .ARM.exidx sections.
Tue, Apr 28, 5:20 AM
ikudrin closed D78820: [LLD][ELF] Eliminate symbols of merged .ARM.exidx sections..
Tue, Apr 28, 5:19 AM · Restricted Project, lld
ikudrin added inline comments to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.
Tue, Apr 28, 5:19 AM · Restricted Project, debug-info
ikudrin added a comment to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.

It starts looking that it is better to have two distinct methods in the public interface, parseMacinfo() and parseMacro(), than adding lots of the optional parameters. They can still share the implementation, though.

Yes, I'm also noticing it. But this can be tricky(since we want code sharing too) these macro and macinfo is using 4 common forms. I'll be separately investigating this to cleanly refactor it so that the public interface should be more clean/intuitive. I think a private member function parseImpl to be called by public parseMacinfo/Macro would be the best fit?

  • This is just an abstract idea, have to dig-in more for implementation. May be 1/2 other patches ?
Tue, Apr 28, 4:47 AM · Restricted Project, debug-info
ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Tue, Apr 28, 4:47 AM · Restricted Project, debug-info

Mon, Apr 27

ikudrin added a comment to D78950: Adds LRU caching of compile units in DWARFContext..

Is it possible to add some tests for the LRU logic?

Mon, Apr 27, 9:33 PM · Restricted Project, debug-info
Herald added a project to D78866: [DWARF5] Added support for emission of debug_macro.dwo section: Restricted Project.
Mon, Apr 27, 5:19 AM · Restricted Project, debug-info
ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Mon, Apr 27, 5:19 AM · Restricted Project, debug-info
ikudrin added a comment to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.

Please, do not split definitions for sections in the test. It adds no value, just makes it harder to read.

Mon, Apr 27, 4:47 AM · Restricted Project, debug-info
ikudrin updated the diff for D78820: [LLD][ELF] Eliminate symbols of merged .ARM.exidx sections..
  • Reworked the patch so that the local symbols for .ARM.exidx sections are not added to the symbols table. Thanks for the suggestion, @psmith!
Mon, Apr 27, 2:38 AM · Restricted Project, lld

Apr 25 2020

ikudrin committed rG66e4eb9c1bbd: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used. (authored by ikudrin).
[LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used.
Apr 25 2020, 5:16 AM
ikudrin committed rGd1d5f0b10341: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections. (authored by ikudrin).
[DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections.
Apr 25 2020, 5:16 AM
ikudrin closed D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..
Apr 25 2020, 5:16 AM · Restricted Project, lld
ikudrin committed rG575d9ba107f4: [llvm-dwp] Refuse DWARFv5 input DWP files. (authored by ikudrin).
[llvm-dwp] Refuse DWARFv5 input DWP files.
Apr 25 2020, 5:16 AM
ikudrin closed D78555: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections..
Apr 25 2020, 5:16 AM · debug-info, Restricted Project
ikudrin closed D77143: [llvm-dwp] Refuse DWARFv5 input DWP files..
Apr 25 2020, 5:16 AM · debug-info, Restricted Project
ikudrin added inline comments to D77143: [llvm-dwp] Refuse DWARFv5 input DWP files..
Apr 25 2020, 5:16 AM · debug-info, Restricted Project
ikudrin added inline comments to D78555: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections..
Apr 25 2020, 5:16 AM · debug-info, Restricted Project

Apr 24 2020

ikudrin created D78820: [LLD][ELF] Eliminate symbols of merged .ARM.exidx sections..
Apr 24 2020, 11:20 AM · Restricted Project, lld
ikudrin added a comment to D78736: [DWARF5]: Added support for dumping strx forms in llvm-dwarfdump.

The test should be reduced.

Apr 24 2020, 8:04 AM · Restricted Project, debug-info

Apr 23 2020

ikudrin added inline comments to D78555: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections..
Apr 23 2020, 11:18 PM · debug-info, Restricted Project
ikudrin added inline comments to D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..
Apr 23 2020, 10:47 PM · Restricted Project, lld
ikudrin updated the diff for D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..
  • Combined GC/NOGC checks in the test.
Apr 23 2020, 10:46 PM · Restricted Project, lld
ikudrin added a comment to D77143: [llvm-dwp] Refuse DWARFv5 input DWP files..

Ping.

Apr 23 2020, 10:46 PM · debug-info, Restricted Project
ikudrin added a comment to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.

The function first scans the compilation units and collects their contributions to the string offsets section. Then it scans the collected list of contributions and dumps the section according to them, detecting overlaps and gaps as a bonus.

Apr 23 2020, 5:53 AM · Restricted Project, debug-info
ikudrin updated the diff for D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..
  • Added/improved comments.
  • Added a condition to not execute the scanning if --gc-sections is specified.
  • Added testing of the --emit-relocs --discard-all --gc-sections case.
Apr 23 2020, 3:13 AM · Restricted Project, lld
ikudrin added a comment to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.

And please, reduce the tests.

Briefly stated the reason why they are a bit long, assuming D78555 will address this, I'll be happy to reduce them to bare minimal.

I can't imagine how D78555 can help with that.

Apr 23 2020, 2:41 AM · Restricted Project, debug-info

Apr 22 2020

ikudrin added a comment to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.

I am supporting @dblaikie in that the patch should be split. The part of adding *_strx forms should be separated from adding the support of debug_macro.dwo. The parts look independent of each other and can be added in any order.

Apr 22 2020, 11:18 PM · Restricted Project, debug-info
ikudrin added inline comments to D78500: [DWARF5]:Added support for .debug_macro.dwo section in llvm-dwarfdump.
Apr 22 2020, 6:28 AM · Restricted Project, debug-info
ikudrin updated the diff for D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..
  • Rebased to the tip.
  • Moved the initialization of the field used back to markUsedLocalSymbols(). This makes the handling more local. Made a corresponding note in the comment for that field.
  • Dropped the own test in favor of updating tests from D78389.
Apr 22 2020, 3:12 AM · Restricted Project, lld

Apr 21 2020

ikudrin committed rG1f48e22df802: [DebugInfo] Simplify DWARFUnit::determineStringOffsetsTableContribution(). NFC. (authored by ikudrin).
[DebugInfo] Simplify DWARFUnit::determineStringOffsetsTableContribution(). NFC.
Apr 21 2020, 10:41 PM
ikudrin closed D78482: [DebugInfo] Simplify DWARFUnit::determineStringOffsetsTableContribution(). NFC..
Apr 21 2020, 10:40 PM · debug-info, Restricted Project
ikudrin added inline comments to D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.
Apr 21 2020, 8:37 AM · Restricted Project
ikudrin updated the diff for D78555: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections..
  • Reformatted.
Apr 21 2020, 7:31 AM · debug-info, Restricted Project
ikudrin created D78555: [DebugInfo][DWARF64] Fix dumping pre-standard .debug_str_offsets.dwo sections..
Apr 21 2020, 5:54 AM · debug-info, Restricted Project
ikudrin accepted D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.

LGTM with a couple of nits.

Apr 21 2020, 4:49 AM · Restricted Project

Apr 20 2020

ikudrin updated the diff for D78482: [DebugInfo] Simplify DWARFUnit::determineStringOffsetsTableContribution(). NFC..
  • Added assert(!IsDWO) to determineStringOffsetsTableContribution().
  • Added another assert(IsDWO) to determineStringOffsetsTableContributionDWO() for the completeness.
Apr 20 2020, 6:26 AM · debug-info, Restricted Project
ikudrin created D78482: [DebugInfo] Simplify DWARFUnit::determineStringOffsetsTableContribution(). NFC..
Apr 20 2020, 4:15 AM · debug-info, Restricted Project
ikudrin added inline comments to D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.
Apr 20 2020, 2:38 AM · Restricted Project
ikudrin added inline comments to D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.
Apr 20 2020, 2:38 AM · Restricted Project

Apr 18 2020

ikudrin added inline comments to D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.
Apr 18 2020, 2:08 AM · Restricted Project

Apr 17 2020

ikudrin added a comment to D77807: [LLD][ELF] Implement --discard-* for cases when -r or --emit-relocs are used..

Implement --discard-* for cases when -r or --emit-relocs are used.

The behavior difference should only be about --discard-all + {-r,--emit-relocs}.

For --discard-locals + {-r,--emit-relocs} (.Lunused is stripped in GNU ld), I am not sure we want to adapt GNU ld's rule.

Apr 17 2020, 8:57 PM · Restricted Project, lld
ikudrin added inline comments to D78389: [ELF] Keep local symbols when both --emit-relocs and --discard-all are specified.
Apr 17 2020, 8:44 PM · Restricted Project
ikudrin added a comment to D78208: [DebugInfo] Report the format of the DWARF64 sections..

Everything else in this change looks fine to me. I also don't feel strongly about the above point - nothing actually produces DWARF64 currently that I know of, so maybe it's not worth worrying about too much either way.

Apr 17 2020, 8:39 AM · debug-info, Restricted Project
ikudrin added inline comments to D78208: [DebugInfo] Report the format of the DWARF64 sections..
Apr 17 2020, 8:05 AM · debug-info, Restricted Project