Page MenuHomePhabricator

avl (Alexey Lapshin)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 17 2017, 6:34 AM (87 w, 6 d)

Recent Activity

Mon, Apr 22

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I find a previous discussion at https://bugs.llvm.org/show_bug.cgi?id=37212 and https://reviews.llvm.org/D46502

Mon, Apr 22, 7:25 AM · lld, Restricted Project

Sun, Apr 21

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

ping.

Sun, Apr 21, 11:05 PM · lld, Restricted Project

Mon, Apr 15

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

Existing tools have learned various heuristics to avoid 0 DW_AT_low_pc collision, but I am not sure what they'd do if those relocations resolve to -1. llvm-symbolizer is certainly good (I have checked a few >examples - I'm learning it recently), but what about other tools?

Mon, Apr 15, 11:26 PM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

@ruiu What do you think about using UINT64_MAX-1 as address to which relocations for deleted sections would be resolved ? Does it make sense ?

Mon, Apr 15, 10:50 PM · lld, Restricted Project
avl requested review of D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mon, Apr 15, 2:01 PM · lld, Restricted Project

Fri, Apr 12

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

@MaskRay Hi, Since you changed status of review into "Needs Revision" - What changes do you think should be done ?

Fri, Apr 12, 12:46 AM · lld, Restricted Project

Wed, Apr 10

avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Wed, Apr 10, 3:20 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
In D59553#1459554, @avl wrote:
  1. on some platforms 0 is a valid address. i.e. image base starts from 0. In that case no way to differentiate valid address from invalid one just by checking for 0.

But this is also true to UINT64_MAX-2 because you can put your code or data there, no?

Wed, Apr 10, 3:12 AM · lld, Restricted Project

Tue, Apr 9

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

__libc_csu_init is in libc.a(elf-init.o) and has no debug info. It should symbolize to ?? but not_used.cpp is incorrectly returned. ?? -> not_used.cpp

Tue, Apr 9, 12:32 PM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I'm not sure if making zero DW_AT_low_pc special for executable/DSO in DWARFDebugAranges is a good idea.

Tue, Apr 9, 4:33 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I think the current handling in lld is quite good, no need to special case on if (!Sym.getOutputSection()). The same problem can be reproduced for ld.bfd and gold.

Tue, Apr 9, 4:09 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I thought that address 0 is a good candidate to represent an invalid address, as nullptr is usually represented by address 0. I wonder why we want to use UINT64_MAX-2 instead of 0.

Tue, Apr 9, 4:00 AM · lld, Restricted Project

Mon, Apr 8

avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mon, Apr 8, 11:55 PM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mon, Apr 8, 11:42 PM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

ping

Mon, Apr 8, 11:19 PM · lld, Restricted Project

Wed, Apr 3

avl added a comment to D54747: Discard debuginfo for object files empty after GC.

@rocallahan Would you mind to share the performance results of that patch, please ? Similar to above table for rusoto test, but with timings ...

Wed, Apr 3, 4:46 AM · Restricted Project, lld

Tue, Apr 2

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

ping.

Tue, Apr 2, 11:10 PM · lld, Restricted Project

Fri, Mar 29

avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

added indentation and corrected sections string.

Fri, Mar 29, 4:58 AM · lld, Restricted Project

Thu, Mar 28

avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

addressed all comments, except indentation one, which I did not understand yet.

Thu, Mar 28, 11:35 AM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Thu, Mar 28, 10:27 AM · lld, Restricted Project
avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

addressed all comments.

Thu, Mar 28, 9:27 AM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Thu, Mar 28, 6:35 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

@probinson

I think at this point the "debug info cabal" is more in favor of fragmenting the DWARF emitted by the compiler, so that it can be gc'd in tandem with the related functions.

Thu, Mar 28, 5:31 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

ping.

Thu, Mar 28, 3:35 AM · lld, Restricted Project

Mar 25 2019

avl abandoned D58959: [DebugInfo][ExecutionEngine] follow up for "add SectionedAddress to DebugInfo interfaces".

abandon revision because of already integrated duplicated revision https://reviews.llvm.org/D59490

Mar 25 2019, 11:34 AM · Restricted Project

Mar 23 2019

avl closed D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..
Mar 23 2019, 3:02 AM · debug-info, Restricted Project
avl closed D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 23 2019, 2:41 AM · Restricted Project
avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

@MaskRay

It seems you indented the description by 2. That may be why the revision is not automatically closed..

Mar 23 2019, 2:39 AM · Restricted Project
avl committed rGb2c4b8bded3f: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces" (authored by avl).
[DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces"
Mar 23 2019, 1:09 AM
avl committed rL356829: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
[DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces"
Mar 23 2019, 1:08 AM

Mar 22 2019

avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

Thank you!

Mar 22 2019, 3:01 PM · Restricted Project
avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

Please move this down at least far enough that it doesn't involve separately
computing the file name and opening the file. Where it's a "well, if you didn't
specify a section index, we'll use the first section that covers this address".

Mar 22 2019, 2:43 PM · Restricted Project
avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

updated tests as requested.

Mar 22 2019, 10:43 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

@bd1976llvm

What does GDB make of -1/-2???

Mar 22 2019, 6:59 AM · lld, Restricted Project
avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

updated tests and addressed comments.

Mar 22 2019, 3:31 AM · lld, Restricted Project

Mar 21 2019

avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

ping.

Mar 21 2019, 1:32 PM · Restricted Project
avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

addressed comments. added tests for 32 bit.

Mar 21 2019, 7:39 AM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mar 21 2019, 2:43 AM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mar 21 2019, 2:34 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

Does this do the right thing for a 32-bit target? 64-bit is common, but not universal.

Mar 21 2019, 2:09 AM · lld, Restricted Project

Mar 20 2019

avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mar 20 2019, 11:58 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

This seems like it might be worth a broader discussion about these sort of cases - probably llvm-dev,
maybe with some DWARF folks (though the usual LLVM debug info cabal (myself, @aprantl, @probinson,
@JDevlieghere, and @echristo) is probably sufficient to get a rough idea of what might be a good general approach).

Mar 20 2019, 11:51 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

Is this logically correct? I wonder what is the point of emitting a relocation section pointing to a nonexistent section.

Mar 20 2019, 11:11 AM · lld, Restricted Project
avl updated the diff for D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
  • used UINT_MAX-1 as value for relocations referenced deleted section
  • changed title of review
  • updated tests
Mar 20 2019, 10:48 AM · lld, Restricted Project
avl added inline comments to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mar 20 2019, 6:51 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
  1. I tried to use UINT64_MAX-1 as a address value for lost debug info :
Mar 20 2019, 6:51 AM · lld, Restricted Project
avl accepted D59490: [DebugInfo] IntelJitEventListener follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 20 2019, 3:01 AM · Restricted Project
avl added a comment to D59490: [DebugInfo] IntelJitEventListener follow up for "add SectionedAddress to DebugInfo interfaces".

LGTM. Thanks!

Mar 20 2019, 3:01 AM · Restricted Project

Mar 19 2019

avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

What do other linkers (gold and gnu binutils, for instance) do in this case?

Mar 19 2019, 1:34 PM · lld, Restricted Project
avl added a project to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used: lld.
Mar 19 2019, 10:51 AM · lld, Restricted Project
avl added a comment to D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.

I am not sure about using grep and sed in the test. I see it used in other parts of llvm but not inside lld.

Mar 19 2019, 10:36 AM · lld, Restricted Project
avl created D59553: [LLD][ELF][DebugInfo] llvm-symbolizer shows incorrect source line info if --gc-sections used.
Mar 19 2019, 10:34 AM · lld, Restricted Project
avl added inline comments to D59490: [DebugInfo] IntelJitEventListener follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 19 2019, 8:23 AM · Restricted Project
avl added a comment to D59490: [DebugInfo] IntelJitEventListener follow up for "add SectionedAddress to DebugInfo interfaces".

Thanks for fixing this! Please check comments.

Mar 19 2019, 3:57 AM · Restricted Project

Mar 16 2019

avl added a comment to D59189: [perf][DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

Since that is compile time issue - not neccessary to delay it for long time. LGTM.

Mar 16 2019, 8:19 AM · Restricted Project
avl accepted D59189: [perf][DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 16 2019, 8:19 AM · Restricted Project

Mar 15 2019

avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

David, there is a connected review - https://reviews.llvm.org/D59189 It cures compilation error after D58194 Could you take a look on it please ?
I think that change is OK and it is good to do in spite of decision made in this review.

Mar 15 2019, 12:19 AM · Restricted Project

Mar 14 2019

avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

In case Undef specified then there could be several sections with matching address ranges.
It seems to me that DWARFDebugLineTable improper place to make such a decision - which of them should be taken as a result.
This in fact high level decision, not low level.

Mar 14 2019, 4:26 PM · Restricted Project
avl updated the diff for D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

I moved handling Undef case from Symbolizer into SymbolizableObjectFile. Please check whether it is proper place.

Mar 14 2019, 3:07 PM · Restricted Project

Mar 13 2019

avl added a comment to D59189: [perf][DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

This looks OK for me(taking into account the comment). Let final approve would be done by David, since He reviewed original patch.
David, Is it OK for you ?

Mar 13 2019, 1:00 PM · Restricted Project
avl updated the diff for D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

addressed all comments.

Mar 13 2019, 8:44 AM · Restricted Project

Mar 12 2019

avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 12 2019, 11:40 AM · Restricted Project
avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

David, Could you also review https://reviews.llvm.org/D58959 please ? It seems not depending on decision discussed here. So it looks like it could already be integrated.

Mar 12 2019, 2:52 AM · Restricted Project
avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 12 2019, 2:50 AM · Restricted Project

Mar 11 2019

avl added a comment to D59162: Fix Perf build failure due to getLineInfoForAddress API change.

There is a duplicated review https://reviews.llvm.org/D59189 , I`ve already commented there ...

Mar 11 2019, 4:07 AM · Restricted Project
avl added a comment to D59189: [perf][DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

Oh I missed perf jit case, excuse me...

Mar 11 2019, 3:58 AM · Restricted Project

Mar 10 2019

avl added a comment to D58959: [DebugInfo][ExecutionEngine] follow up for "add SectionedAddress to DebugInfo interfaces".

ping.

Mar 10 2019, 10:11 PM · Restricted Project

Mar 9 2019

avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 9 2019, 10:49 AM · Restricted Project

Mar 8 2019

avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 8 2019, 2:26 PM · Restricted Project
avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 8 2019, 11:46 AM · Restricted Project

Mar 5 2019

avl updated the diff for D58959: [DebugInfo][ExecutionEngine] follow up for "add SectionedAddress to DebugInfo interfaces".

added check for section_end()

Mar 5 2019, 9:30 PM · Restricted Project
avl added inline comments to D58959: [DebugInfo][ExecutionEngine] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 5 2019, 9:27 PM · Restricted Project
avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

I separated ExecutionEngine into another review - https://reviews.llvm.org/D58959

Mar 5 2019, 4:19 AM · Restricted Project
avl created D58959: [DebugInfo][ExecutionEngine] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 5 2019, 4:18 AM · Restricted Project
avl added inline comments to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 5 2019, 3:40 AM · Restricted Project

Mar 4 2019

avl closed D58357: [LLD] add test for line number info related to differrent .text sections.
Mar 4 2019, 7:41 AM · Restricted Project, lld
avl committed rGded118079b62: [LLD] add test for line number info related to differrent .text sections (authored by avl).
[LLD] add test for line number info related to differrent .text sections
Mar 4 2019, 2:44 AM
avl committed rLLD355306: [LLD] add test for line number info related to differrent .text sections.
[LLD] add test for line number info related to differrent .text sections
Mar 4 2019, 2:42 AM
avl committed rL355306: [LLD] add test for line number info related to differrent .text sections.
[LLD] add test for line number info related to differrent .text sections
Mar 4 2019, 2:42 AM

Mar 2 2019

avl added a comment to D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".

David, Thank you for the comments! I skipped code style issues for the moment. please check the comments for allowing setting SectionIndex into Undef state and for the necessity of getModuleSectionIndexForAddress() routine. After we will decide on these questions I will handle code style issues.

Mar 2 2019, 7:52 AM · Restricted Project

Mar 1 2019

avl created D58848: [DebugInfo] follow up for "add SectionedAddress to DebugInfo interfaces".
Mar 1 2019, 2:13 PM · Restricted Project
avl added inline comments to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..
Mar 1 2019, 2:33 AM · debug-info, Restricted Project
avl committed rGb0224b1f1d06: Attempt to fix buildbot after r354972 [#2]. NFCI. (authored by avl).
Attempt to fix buildbot after r354972 [#2]. NFCI.
Mar 1 2019, 2:15 AM
avl committed rL355192: Attempt to fix buildbot after r354972 [#2]. NFCI..
Attempt to fix buildbot after r354972 [#2]. NFCI.
Mar 1 2019, 2:14 AM

Feb 28 2019

avl added inline comments to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..
Feb 28 2019, 2:24 PM · debug-info, Restricted Project
avl added inline comments to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..
Feb 28 2019, 9:08 AM · debug-info, Restricted Project

Feb 27 2019

avl committed rGd89d6380558f: Attempt to fix buildbot after r354972 [#1]. NFCI. (authored by avl).
Attempt to fix buildbot after r354972 [#1]. NFCI.
Feb 27 2019, 10:38 AM
avl committed rL355013: Attempt to fix buildbot after r354972 [#1]. NFCI..
Attempt to fix buildbot after r354972 [#1]. NFCI.
Feb 27 2019, 10:37 AM
avl committed rCRT355013: Attempt to fix buildbot after r354972 [#1]. NFCI..
Attempt to fix buildbot after r354972 [#1]. NFCI.
Feb 27 2019, 10:37 AM
avl added a comment to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..

Thank you.

Feb 27 2019, 6:04 AM · debug-info, Restricted Project
avl committed rG77fc1f6049a7: [DebugInfo] add SectionedAddress to DebugInfo interfaces. (authored by avl).
[DebugInfo] add SectionedAddress to DebugInfo interfaces.
Feb 27 2019, 5:19 AM

Feb 26 2019

avl updated the diff for D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..

addressed latest comments.

Feb 26 2019, 8:44 AM · debug-info, Restricted Project
avl added inline comments to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..
Feb 26 2019, 5:20 AM · debug-info, Restricted Project
avl added a comment to D58357: [LLD] add test for line number info related to differrent .text sections.

ping...

Feb 26 2019, 1:34 AM · Restricted Project, lld

Feb 24 2019

avl added a comment to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..

ping...

Feb 24 2019, 10:12 PM · debug-info, Restricted Project

Feb 19 2019

avl updated the diff for D58357: [LLD] add test for line number info related to differrent .text sections.

George, Thank you for the comments. I should not rely on context and needed to put detailed description from the scratch. I changed test description and used your compacted asm now.

Feb 19 2019, 5:13 AM · Restricted Project, lld

Feb 18 2019

avl created D58357: [LLD] add test for line number info related to differrent .text sections.
Feb 18 2019, 10:56 AM · Restricted Project, lld
avl updated the diff for D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..

deleted LLD test as it was requested. Modified llvm-objdump test to not to use clang.

Feb 18 2019, 6:17 AM · debug-info, Restricted Project
avl added a reviewer for D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces.: dblaikie.
Feb 18 2019, 2:03 AM · debug-info, Restricted Project

Feb 15 2019

avl added a comment to D58194: [DebugInfo] add SectionedAddress to DebugInfo interfaces..

George, I added test for LLD. But.... It already pass for LLD without this fix. The reason for that is following quickfix :

Feb 15 2019, 1:51 PM · debug-info, Restricted Project