Page MenuHomePhabricator

alexshap (Alexander Shaposhnikov)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 22 2016, 3:32 PM (124 w, 5 d)

Recent Activity

Yesterday

alexshap accepted D55564: [lit]Add llvm-readelf to tool substitutions.

oh, i see.

Tue, Dec 11, 9:37 AM

Fri, Dec 7

alexshap planned changes to D54674: [llvm-objcopy] First bits for MachO .

will address the comments and update this diff, huge thanks for the review

Fri, Dec 7, 11:17 AM

Thu, Dec 6

alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

Hey! I've recently pinged multiple people via e-mail (sorry about the disturbance, I apologize for all the inconveniences and I do understand that people are probably very busy given that it's the end of the half),
@mtrent, @beanz , @ributzka @lhames, @echristo, @compnerd - just give me an idea if any of you will eventually have a look at it (imo it'd be good to have people from Apple involved in the code review since this code is for MachO, who knows - maybe you will find it useful at some point - i.e. as a potential replacement/replacements for cctools in the future). If it's not super-interesting - then it's okay...., let's just make some decision if there is a way to move forward here (which you would be comfortable with) or not. (The main reason why I'm bothering you & asking this question - this diff has been around for 3+ weeks without much visible progress)

Thu, Dec 6, 3:52 PM
alexshap added inline comments to D54674: [llvm-objcopy] First bits for MachO .
Thu, Dec 6, 3:43 PM

Mon, Dec 3

alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

@beanz Chris, would you have a minute to have a look at this diff ? (though this is just the beginning, so things will change)

Mon, Dec 3, 10:33 AM
alexshap added a reviewer for D54674: [llvm-objcopy] First bits for MachO : beanz.
Mon, Dec 3, 10:28 AM
alexshap added inline comments to D54939: [llvm-objcopy] Initial COFF support.
Mon, Dec 3, 10:20 AM

Thu, Nov 29

alexshap committed rL347958: [llvm-objcopy] Move elf-specific tests into subfolder.
[llvm-objcopy] Move elf-specific tests into subfolder
Thu, Nov 29, 9:48 PM
alexshap added a comment to D54939: [llvm-objcopy] Initial COFF support.

i will get to this diff early next week, sorry about the delay. A small side note - probably the simple changes to include/llvm/Object/COFF.h can be factored out from this diff and reviewed separately (and probably much faster).

Thu, Nov 29, 9:23 PM
alexshap updated subscribers of D54939: [llvm-objcopy] Initial COFF support.
Thu, Nov 29, 9:20 PM
alexshap added inline comments to D54674: [llvm-objcopy] First bits for MachO .
Thu, Nov 29, 8:30 PM
alexshap added inline comments to D54674: [llvm-objcopy] First bits for MachO .
Thu, Nov 29, 7:58 PM
alexshap added inline comments to D54674: [llvm-objcopy] First bits for MachO .
Thu, Nov 29, 7:53 PM

Wed, Nov 28

alexshap accepted D55040: [llvm-objcopy] Delete redundant !Config.xx.empty() when followed by positive is_contained() check.

Thanks for cleaning this up.

Wed, Nov 28, 9:28 PM

Mon, Nov 26

alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

Ping @echristo Eric, could you please help review this patch / or add smb else ?

Mon, Nov 26, 2:10 PM

Mon, Nov 19

alexshap added a reviewer for D54674: [llvm-objcopy] First bits for MachO : echristo.
Mon, Nov 19, 8:06 PM
alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

ok, no worries, if smb has a look at it next week - that will be wonderful. Many thanks.

Mon, Nov 19, 2:28 PM
alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

@mstorsjo, no, I'm not working on COFF, i have a fe

Mon, Nov 19, 1:45 PM
alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

also, @jakehehrlich, @jhenderson, @rupprecht - what would you say to moving the existing tests (llvm/test/tools/llvm-objcopy) into the subfolder ELF (llvm/test/tools/llvm-objcopy/ELF) ? if it's ok - i can do that on a separate diff.

Mon, Nov 19, 11:58 AM
alexshap updated the diff for D54674: [llvm-objcopy] First bits for MachO .

one more typo fixed

Mon, Nov 19, 11:54 AM
alexshap updated subscribers of D54674: [llvm-objcopy] First bits for MachO .
Mon, Nov 19, 11:45 AM
alexshap added a comment to D54674: [llvm-objcopy] First bits for MachO .

@jhenderson, yeah, this is the minimal amount of code i was able to come up with for coping over MachO object files without modifications, so essentially the only useful (hopefully) things here are serialization/deserialization. The "intermediate" model is a stub and will change in the future. However, even with this minimal capabilities we can do smth useful (in the nearest future), in particular, in a follow-up patch i was planning to add support for "fat" (universal) binaries, and as soon as it is done (together with this patch) we will be able to build an llvm-based drop-in replacement for the tool "lipo".

Mon, Nov 19, 11:45 AM
alexshap updated the diff for D54674: [llvm-objcopy] First bits for MachO .

Address comments, improve the tests, fix some typos.

Mon, Nov 19, 11:37 AM

Sat, Nov 17

alexshap updated the diff for D54674: [llvm-objcopy] First bits for MachO .

typo fixed

Sat, Nov 17, 7:08 PM
alexshap changed the visibility for D54674: [llvm-objcopy] First bits for MachO .
Sat, Nov 17, 6:59 PM
alexshap created D54674: [llvm-objcopy] First bits for MachO .
Sat, Nov 17, 6:53 PM

Wed, Nov 14

alexshap accepted D54384: [llvm-objcopy] Add --build-id-link-dir flag.

I would probably use more detailed help messages for the new options (i.e. what exactly the last two options mean (name's suffix) and how exactly the path is constructed from the build-id),
so that users can understand what's going on without looking at the actual implementation.
other than that - LGTM

Wed, Nov 14, 8:53 PM

Tue, Nov 13

alexshap added inline comments to D54384: [llvm-objcopy] Add --build-id-link-dir flag.
Tue, Nov 13, 11:28 PM

Nov 10 2018

alexshap added inline comments to D54384: [llvm-objcopy] Add --build-id-link-dir flag.
Nov 10 2018, 6:05 PM
alexshap added inline comments to D54384: [llvm-objcopy] Add --build-id-link-dir flag.
Nov 10 2018, 5:48 PM

Oct 31 2018

alexshap accepted D53954: [llvm-strip] Support --keep and --strip-all-gnu from llvm-objcopy.
Oct 31 2018, 6:38 PM

Oct 29 2018

alexshap committed rL345558: [analyzer] Allow padding checker to traverse simple class hierarchies.
[analyzer] Allow padding checker to traverse simple class hierarchies
Oct 29 2018, 6:23 PM
alexshap committed rC345558: [analyzer] Allow padding checker to traverse simple class hierarchies.
[analyzer] Allow padding checker to traverse simple class hierarchies
Oct 29 2018, 6:23 PM
alexshap closed D53206: Allow padding checker to traverse simple class hierarchies.
Oct 29 2018, 6:23 PM · Restricted Project
alexshap committed rL345544: [llvm-objcopy] Move elf-specific code into subfolder.
[llvm-objcopy] Move elf-specific code into subfolder
Oct 29 2018, 2:25 PM

Oct 26 2018

alexshap accepted D53782: [llvm-objcopy] Don't apply --localize flags to common symbols.
Oct 26 2018, 6:10 PM
alexshap added a reviewer for D53051: [llvm-tapi] initial commit, supports ELF text stubs: alexshap.
Oct 26 2018, 9:44 AM

Oct 25 2018

alexshap added inline comments to D53667: [llvm-objcopy] Handle -O <format> flag..
Oct 25 2018, 11:34 AM

Oct 24 2018

alexshap committed rL345217: [llvm-objcopy] Introduce dispatch mechanism based on the input.
[llvm-objcopy] Introduce dispatch mechanism based on the input
Oct 24 2018, 3:51 PM
alexshap added a comment to D53667: [llvm-objcopy] Handle -O <format> flag..

@rupprecht Jordan, if you don't mind I will commit my patch https://reviews.llvm.org/D53311 (this probably will cause some minor rebase for you), and then I will cherry-pick your changes (locally) and send my future patch (to move elf-specific things into a separate file and subfolder) on top of yours

Oct 24 2018, 3:12 PM

Oct 18 2018

alexshap added a comment to D52296: [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option..

Ping

Oct 18 2018, 6:28 PM
alexshap added a comment to D52296: [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option..

I talked to David @dblaikie offline about this diff yesterday, if I understood correctly this change is reasonable in general, @echristo Eric, would you mind having a look at this diff ?

Oct 18 2018, 6:28 PM

Oct 15 2018

alexshap committed rL344585: [llvm-objcopy] Factor out Buffer.
[llvm-objcopy] Factor out Buffer
Oct 15 2018, 10:42 PM
alexshap added a comment to D52296: [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option..

I see, many thanks. I've cherry-picked this patch locally and played with GDB - it appears to work fine with it.
I'm also interested and support this change since this would simplify the adoption of Fission by some build systems.
@dblaikie, @echristo - are there any particular concerns with moving this forward ?

Oct 15 2018, 7:38 PM

Oct 11 2018

alexshap accepted D53029: [llvm-objcopy] Add -F|--target compatibility.

thanks, sorry for causing you to rebase

Oct 11 2018, 4:40 PM
alexshap committed rL344307: [llvm-objcopy] Factor out CopyConfig.
[llvm-objcopy] Factor out CopyConfig
Oct 11 2018, 3:36 PM

Oct 9 2018

alexshap added a comment to D52296: [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option..

@grimar, this is an interesting observation which I've had on my mind for quite some time as well; a couple of things which I have not double-checked yet - just in case - do both gold and lld completely ignore dwo-related sections ? (did you check that ?), and another small question - just wondering if the debuggers (GDB and LLDB) are okay with it / or smth needs to be adjusted or fixed on their side. I guess everything should be fine, but asking just in case.

Oct 9 2018, 3:40 AM
alexshap updated subscribers of D52296: [Clang] - Add '-gsplit-dwarf[=split,=single]' version for '-gsplit-dwarf' option..
Oct 9 2018, 3:27 AM

Sep 21 2018

alexshap accepted D51841: [llvm-objcopy] Dwarf decompression support. .

but, pls, also wait for Jake or James

Sep 21 2018, 3:35 PM

Sep 20 2018

alexshap accepted D52328: [llvm-objcopy/llvm-strip]: handle --version.

I've just had a look at LLD - it does smth similar, so to me this looks good. Pls, wait for Jake as well.

Sep 20 2018, 3:43 PM
alexshap added a comment to D52182: [llvm-objcopy] Make -S an alias for --strip-all.

@jakehehrlich Jake, would you mind committing this ?

Sep 20 2018, 1:09 PM

Sep 17 2018

alexshap accepted D52180: [llvm-objcopy] Change --only-keep to --only-sections.
Sep 17 2018, 12:42 PM
alexshap accepted D52182: [llvm-objcopy] Make -S an alias for --strip-all.
Sep 17 2018, 12:41 PM
alexshap committed rL342364: [llvm-objcopy] Add missing alias for --strip-all-gnu.
[llvm-objcopy] Add missing alias for --strip-all-gnu
Sep 17 2018, 2:46 AM
alexshap closed D52163: -S as an alias for --strip-all-gnu.
Sep 17 2018, 2:46 AM
alexshap added a comment to D52163: -S as an alias for --strip-all-gnu.

LG, thx. @tpimh, do you have commit access to LLVM or do you need me or @srhines commit this patch on behalf of you ?

Sep 17 2018, 2:12 AM
alexshap accepted D52163: -S as an alias for --strip-all-gnu.
Sep 17 2018, 2:06 AM
alexshap requested changes to D52163: -S as an alias for --strip-all-gnu.
Sep 17 2018, 1:35 AM
alexshap added a comment to D52163: -S as an alias for --strip-all-gnu.

also, pls, include the full context into the patch https://llvm.org/docs/Phabricator.html
svn diff --diff-cmd=diff -x -U999999

Sep 17 2018, 1:34 AM
alexshap added a comment to D52163: -S as an alias for --strip-all-gnu.

the change looks fine, but it needs a test - simply have a look at the existing ones and add one more invocation of the tool (with this alias).
To run the tests there are special targets: check-llvm-tools, check-all, etc

Sep 17 2018, 1:22 AM

Sep 14 2018

alexshap added inline comments to D51841: [llvm-objcopy] Dwarf decompression support. .
Sep 14 2018, 2:21 PM

Sep 13 2018

alexshap added a comment to D51841: [llvm-objcopy] Dwarf decompression support. .

@plotfi , oh, sorry, i should have added more context. The thing is, that I've been thinking about this patch more and more, and it seems to me, that it's possible to eliminate DecompressableSection by making the class CompressedSection a bit more robust (probably what you mentioned at some point). For example (not insisting on this approach, but just one potential option): CompressedSection can store (internally) either the original content, or the already compressed content + you can add one more constructor to that class etc. In this case the full picture will probably look a bit nicer and easier to perceive: we will have two classes: DecompressedSection and CompressedSection which are responsible for managing this sort of transformation (replacing a given section with the "compressed" version of it or, instead, with the "decompressed" version of it).

Sep 13 2018, 8:52 PM
alexshap added a comment to D51841: [llvm-objcopy] Dwarf decompression support. .

although I'd probably try to make the implementation more symmetric (i mean "compression" and "decompression"). Would that be possible ?

Sep 13 2018, 7:06 PM
alexshap added a comment to D51841: [llvm-objcopy] Dwarf decompression support. .

this version looks much cleaner to me than the previous one!

Sep 13 2018, 12:32 PM
alexshap added inline comments to D51841: [llvm-objcopy] Dwarf decompression support. .
Sep 13 2018, 1:35 AM

Sep 11 2018

alexshap committed rL341998: [object] Improve the performance of getSymbols used by ArchiveWriter.
[object] Improve the performance of getSymbols used by ArchiveWriter
Sep 11 2018, 3:03 PM

Sep 10 2018

alexshap added inline comments to D51841: [llvm-objcopy] Dwarf decompression support. .
Sep 10 2018, 12:45 PM
alexshap added inline comments to D51841: [llvm-objcopy] Dwarf decompression support. .
Sep 10 2018, 12:39 PM
alexshap added inline comments to D51841: [llvm-objcopy] Dwarf decompression support. .
Sep 10 2018, 12:32 PM

Sep 6 2018

alexshap added a comment to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..

Side note: I would double check that nothing shady is going on with the comparator struct SectionCompare used by std::set. If it's broken or gets broken along the way a bunch of things can blow up

Sep 6 2018, 9:15 PM

Sep 4 2018

alexshap accepted D51660: [llvm-strip] Support stripping multiple input files.

To me looks good, but please wait for Jake.

Sep 4 2018, 7:42 PM
alexshap added inline comments to D51660: [llvm-strip] Support stripping multiple input files.
Sep 4 2018, 4:27 PM
alexshap added inline comments to D51660: [llvm-strip] Support stripping multiple input files.
Sep 4 2018, 4:03 PM
alexshap accepted D51493: [llvm-strip] Allow copying relocation sections without symbol tables..

LG, thanks

Sep 4 2018, 1:32 PM

Aug 31 2018

alexshap added inline comments to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..
Aug 31 2018, 2:29 AM
alexshap added inline comments to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..
Aug 31 2018, 2:27 AM

Aug 30 2018

alexshap added inline comments to D51493: [llvm-strip] Allow copying relocation sections without symbol tables..
Aug 30 2018, 6:04 PM
alexshap accepted D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..

okay, I agree with James' and Jake's comments (except the comment regarding the enum, although maybe i'm missing smth), but to me this otherwise looks good. Hopefully those comments can be addressed + please, wait for the approval from Jake and James.

Aug 30 2018, 5:00 PM
alexshap added inline comments to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..
Aug 30 2018, 11:31 AM

Aug 27 2018

alexshap added a comment to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..

I've added a couple of inline comments, but I'm really glad to see this is moving forward and to me this looks very close to smth committable, many thanks for working on this and many thanks for your patience! Please, also address the remaining comments by Jake and James, I really hope we can wrap it up in the nearest future (~days) assuming that the decompression will be implemented in a follow-up patch.

Aug 27 2018, 5:10 PM

Aug 21 2018

alexshap updated subscribers of D51004: [llvm-strip] Allow only one input.

James, as for me, I think (though, don't insist) we might add a test for
it, but in this particular case it's not critical / long-term beneficial.
This is a temporary solution anyway. The thing is, that llvm-strip doesn't
support multiple inputs while binutils strip does.
So as soon as we fix it (add proper support for multiple input files), the
test would be gone / replaced with a meaningful test for multiple files.

Aug 21 2018, 7:53 AM

Aug 20 2018

alexshap accepted D51004: [llvm-strip] Allow only one input.

Thanks!

Aug 20 2018, 4:00 PM

Aug 16 2018

alexshap added a comment to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..

Hi, I'm back from vacation and trying to catch up on all this stuff.
I'm also interested in this feature since I have a few places where binutils objcopy is called with these flags.

Aug 16 2018, 4:36 PM

Aug 3 2018

alexshap accepted D50206: [lit, python] Always add quotes around the python path in lit.

Thanks!

Aug 3 2018, 6:00 PM

Aug 2 2018

alexshap added inline comments to D50117: [llvm-objcopy] NFC: Refactor main objcopy method that takes an ELFReader to a generic Reader..
Aug 2 2018, 2:31 PM

Aug 1 2018

alexshap requested changes to D50117: [llvm-objcopy] NFC: Refactor main objcopy method that takes an ELFReader to a generic Reader..
Aug 1 2018, 4:44 PM
alexshap added inline comments to D50117: [llvm-objcopy] NFC: Refactor main objcopy method that takes an ELFReader to a generic Reader..
Aug 1 2018, 4:16 PM
alexshap added inline comments to D50117: [llvm-objcopy] NFC: Refactor main objcopy method that takes an ELFReader to a generic Reader..
Aug 1 2018, 2:39 PM
alexshap added inline comments to D49979: [llvm-objcopy] Add --dump-section.
Aug 1 2018, 3:04 AM

Jul 31 2018

alexshap added inline comments to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..
Jul 31 2018, 6:00 PM
alexshap accepted D50100: [llvm-objcopy] Make --strip-debug strip .gdb_index.

LG

Jul 31 2018, 1:43 PM
alexshap added reviewers for D50100: [llvm-objcopy] Make --strip-debug strip .gdb_index: jakehehrlich, jhenderson.
Jul 31 2018, 1:21 PM

Jul 27 2018

alexshap added inline comments to D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.
Jul 27 2018, 4:10 PM
alexshap accepted D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.

I've added some inline comments, but otherwise this looks ok to me,
please, wait for James as well.

Jul 27 2018, 4:07 PM
alexshap added inline comments to D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.
Jul 27 2018, 3:56 PM

Jul 26 2018

alexshap added inline comments to D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.
Jul 26 2018, 5:03 PM
alexshap added a reviewer for D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy: jhenderson.
Jul 26 2018, 5:02 PM
alexshap added inline comments to D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.
Jul 26 2018, 5:02 PM
alexshap added inline comments to D49870: [llvm-objcopy] Add support for --rename-section flags from gnu objcopy.
Jul 26 2018, 4:57 PM
alexshap added a comment to D49534: Handle the lack of a symbol table correctly..

@srhines - is there anything blocking this diff ?

Jul 26 2018, 1:00 PM