Page MenuHomePhabricator

evgeny777 (Eugene Leviant)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 1 2015, 3:36 AM (228 w, 4 d)

Recent Activity

Yesterday

evgeny777 added inline comments to D71913: [LTO/WPD] Enable aggressive WPD under LTO option.
Fri, Jan 17, 11:11 AM · Restricted Project, Restricted Project

Thu, Jan 16

evgeny777 added a comment to D72517: [lld/ELF] PR44498: Support input filename in double quote.

I think that adding extra flag to GlobPattern::create was better idea. Just set it to false by default, so that GlobPattern will still act as glob matcher for all other users:

static static Expected<GlobPattern> create(StringRef Pat, bool IgnoreMetaChars = false);

Than add extra constructor to StringMatcher to which you'll pass GlobPattern and use it from InputSectionDescription constructor.

Thu, Jan 16, 5:45 AM · Restricted Project
evgeny777 added a comment to D71913: [LTO/WPD] Enable aggressive WPD under LTO option.

Thanks, I'm still in process of testing (now fixing issue which however is most likely related to devirtualization itself, not to this patch). Meanwhile some of my comments below.

Thu, Jan 16, 2:17 AM · Restricted Project, Restricted Project
evgeny777 added a comment to D71911: [ThinLTO] Summarize vcall_visibility metadata.

I think this has to be rebased - I see multiple failures when trying to apply

Thu, Jan 16, 1:40 AM · Restricted Project, Restricted Project

Wed, Jan 15

evgeny777 committed rG10cadee5ce86: [ThinLTO] Always import constants (authored by evgeny777).
[ThinLTO] Always import constants
Wed, Jan 15, 8:35 AM
evgeny777 closed D70404: [ThinLTO] Always import constants.
Wed, Jan 15, 8:35 AM · Restricted Project

Tue, Jan 14

evgeny777 accepted D72648: [ThinLTO/WPD] Remove an overly-aggressive assert.

LGTM

Tue, Jan 14, 10:54 AM · Restricted Project
evgeny777 updated the diff for D70404: [ThinLTO] Always import constants.

Ah, sorry, uploaded wrong file.

Tue, Jan 14, 9:27 AM · Restricted Project
evgeny777 added a comment to D70404: [ThinLTO] Always import constants.

Addressed review comments

Tue, Jan 14, 6:45 AM · Restricted Project
evgeny777 updated the diff for D70404: [ThinLTO] Always import constants.
Tue, Jan 14, 6:45 AM · Restricted Project
evgeny777 added inline comments to D70404: [ThinLTO] Always import constants.
Tue, Jan 14, 6:06 AM · Restricted Project

Mon, Jan 13

evgeny777 accepted D71040: [ThinLTO/WPD] Fix index-based WPD for alias vtables.

LGTM

Mon, Jan 13, 10:17 AM · Restricted Project
evgeny777 added inline comments to D71913: [LTO/WPD] Enable aggressive WPD under LTO option.
Mon, Jan 13, 7:16 AM · Restricted Project, Restricted Project
evgeny777 added inline comments to D72517: [lld/ELF] PR44498: Support input filename in double quote.
Mon, Jan 13, 1:30 AM · Restricted Project
evgeny777 added a comment to D70404: [ThinLTO] Always import constants.

Ping

Mon, Jan 13, 1:23 AM · Restricted Project

Fri, Dec 27

evgeny777 added a comment to D71907: [WPD/VFE] Always emit vcall_visibility metadata for -fwhole-program-vtables.

Looks good at first sight. Do you have linker patch for me to try this out?

Fri, Dec 27, 6:18 AM · Restricted Project, Restricted Project
evgeny777 added inline comments to D71911: [ThinLTO] Summarize vcall_visibility metadata.
Fri, Dec 27, 5:51 AM · Restricted Project, Restricted Project

Dec 18 2019

evgeny777 committed rGad364956edb7: [ThinLTO] Show preserved symbols in DOT files (authored by evgeny777).
[ThinLTO] Show preserved symbols in DOT files
Dec 18 2019, 7:35 AM
evgeny777 closed D71608: [ThinLTO] Show preserved symbols in DOT files.
Dec 18 2019, 7:35 AM · Restricted Project

Dec 17 2019

evgeny777 created D71608: [ThinLTO] Show preserved symbols in DOT files.
Dec 17 2019, 6:49 AM · Restricted Project
evgeny777 added a comment to D71040: [ThinLTO/WPD] Fix index-based WPD for alias vtables.

Could you possibly try check-all or check-llvm? This problem was occuring in the LLVM unit tests.

Dec 17 2019, 1:16 AM · Restricted Project

Dec 13 2019

evgeny777 added a comment to D71040: [ThinLTO/WPD] Fix index-based WPD for alias vtables.

Strange this assertion probably means, that there are two summaries with external linkage in VTableVI. I tried reproducer out of curiosity, but it worked fine for me (no assertion on stage2 with ninja clang).

Dec 13 2019, 10:51 AM · Restricted Project

Dec 12 2019

evgeny777 added inline comments to D70404: [ThinLTO] Always import constants.
Dec 12 2019, 7:36 AM · Restricted Project
evgeny777 updated the diff for D70404: [ThinLTO] Always import constants.
  • Added test case for 'readonly' constants (import-ro-constant.ll)
  • Added support for 'Constant' attribute to dot dumper
  • Addressed other comments
Dec 12 2019, 7:36 AM · Restricted Project

Nov 22 2019

evgeny777 added a comment to D70404: [ThinLTO] Always import constants.
Out of curiosity, what problem do you run into when you unify ReadOnly with Constant?
Nov 22 2019, 12:14 AM · Restricted Project

Nov 21 2019

evgeny777 updated the diff for D70404: [ThinLTO] Always import constants.

I reimplemented the patch, now using extra 'Constant' attribute in GlobalVarSummary.

Nov 21 2019, 7:03 AM · Restricted Project
evgeny777 added a comment to D70404: [ThinLTO] Always import constants.

Patch was tested on Firefox and LLVM test suites. Both pass flawlessly

Nov 21 2019, 7:03 AM · Restricted Project
evgeny777 retitled D70404: [ThinLTO] Always import constants from [ThinLTO] Always treat constant objects as readonly to [ThinLTO] Always import constants.
Nov 21 2019, 7:03 AM · Restricted Project

Nov 19 2019

evgeny777 planned changes to D70404: [ThinLTO] Always import constants.

Found a bug, will resubmit after fix and more thorough tests.

Nov 19 2019, 7:56 AM · Restricted Project
evgeny777 committed rGef5e3b85eecc: [ThinLTO] Simplify code. NFC (authored by evgeny777).
[ThinLTO] Simplify code. NFC
Nov 19 2019, 5:15 AM
evgeny777 committed rG4ef9315c4be0: [ThinLTO] Make ValueInfo::operator bool() explicit (authored by evgeny777).
[ThinLTO] Make ValueInfo::operator bool() explicit
Nov 19 2019, 2:08 AM
evgeny777 closed D70383: [ThinLTO] Make ValueInfo::operator bool() explicit.
Nov 19 2019, 2:08 AM · Restricted Project

Nov 18 2019

evgeny777 accepted D70327: [ThinLTO] Promotion handling cleanup (NFC).

LGTM

Nov 18 2019, 9:47 AM · Restricted Project
evgeny777 created D70404: [ThinLTO] Always import constants.
Nov 18 2019, 9:38 AM · Restricted Project
evgeny777 created D70383: [ThinLTO] Make ValueInfo::operator bool() explicit.
Nov 18 2019, 3:25 AM · Restricted Project
evgeny777 accepted D70337: [ThinLTO] Avoid extra index lookup during promotion.

LGTM. BTW, do you have any data on performance improvement?

Nov 18 2019, 12:10 AM · Restricted Project
evgeny777 added inline comments to D70327: [ThinLTO] Promotion handling cleanup (NFC).
Nov 18 2019, 12:10 AM · Restricted Project

Nov 15 2019

evgeny777 committed rG3d708bf5c267: Recommit "[ThinLTO] Add correctness check for RO/WO variable import" (authored by evgeny777).
Recommit "[ThinLTO] Add correctness check for RO/WO variable import"
Nov 15 2019, 5:37 AM

Nov 14 2019

evgeny777 committed rGa2292cc537b5: [ThinLTO] Add correctness check for RO/WO variable import (authored by evgeny777).
[ThinLTO] Add correctness check for RO/WO variable import
Nov 14 2019, 1:29 AM
evgeny777 closed D70128: [ThinLTO] Add correctness check for RO/WO variable import.
Nov 14 2019, 1:29 AM · Restricted Project

Nov 13 2019

evgeny777 updated the diff for D70128: [ThinLTO] Add correctness check for RO/WO variable import.

This also makes me think it might be a good idea to consider changing the ExportLists to hold the ValueInfos rather than GUIDs

Nov 13 2019, 2:33 AM · Restricted Project

Nov 12 2019

evgeny777 created D70128: [ThinLTO] Add correctness check for RO/WO variable import.
Nov 12 2019, 8:46 AM · Restricted Project

Nov 8 2019

evgeny777 committed rG7f92d66f3785: [ThinLTO] Fix bug when importing writeonly variables (authored by evgeny777).
[ThinLTO] Fix bug when importing writeonly variables
Nov 8 2019, 10:08 AM
evgeny777 closed D70006: [ThinLTO] Fix bug when importing writeonly variables.
Nov 8 2019, 10:08 AM · Restricted Project
evgeny777 added a comment to D70006: [ThinLTO] Fix bug when importing writeonly variables.

But please send a follow on patch soon to do the assertion checking I suggested in my earlier comment

Nov 8 2019, 10:08 AM · Restricted Project
evgeny777 updated the diff for D70006: [ThinLTO] Fix bug when importing writeonly variables.

Addressed

Nov 8 2019, 9:31 AM · Restricted Project
evgeny777 updated the diff for D70006: [ThinLTO] Fix bug when importing writeonly variables.

Addressed

Nov 8 2019, 8:17 AM · Restricted Project
evgeny777 added a comment to D70006: [ThinLTO] Fix bug when importing writeonly variables.
Nov 8 2019, 8:07 AM · Restricted Project
evgeny777 added a comment to D70006: [ThinLTO] Fix bug when importing writeonly variables.

I'm a little confused about what causes the original failure mode

Nov 8 2019, 7:58 AM · Restricted Project
evgeny777 created D70006: [ThinLTO] Fix bug when importing writeonly variables.
Nov 8 2019, 6:06 AM · Restricted Project

Nov 7 2019

evgeny777 updated the summary of D69947: [ThinLTO] Simplify attribute propagation.
Nov 7 2019, 6:55 AM · Restricted Project
evgeny777 created D69947: [ThinLTO] Simplify attribute propagation.
Nov 7 2019, 6:55 AM · Restricted Project
evgeny777 committed rGdde589389fcb: [ThinLTO] Import readonly vars with refs (authored by evgeny777).
[ThinLTO] Import readonly vars with refs
Nov 7 2019, 4:28 AM
evgeny777 closed D69561: [ThinLTO] Import readonly vars with refs.
Nov 7 2019, 4:28 AM · Restricted Project

Nov 5 2019

evgeny777 updated the diff for D69331: [LegacyPM] Port CGProfile pass.

Rebased

Nov 5 2019, 7:23 AM · Restricted Project
evgeny777 updated the diff for D69561: [ThinLTO] Import readonly vars with refs.

Addressed and rebased

Nov 5 2019, 5:42 AM · Restricted Project
evgeny777 added inline comments to D69561: [ThinLTO] Import readonly vars with refs.
Nov 5 2019, 1:59 AM · Restricted Project

Nov 1 2019

evgeny777 added inline comments to D69561: [ThinLTO] Import readonly vars with refs.
Nov 1 2019, 9:04 AM · Restricted Project
evgeny777 committed rG87eac7ef6a6f: [LegacyPM] Fix pass structure dumping (authored by evgeny777).
[LegacyPM] Fix pass structure dumping
Nov 1 2019, 5:06 AM
evgeny777 closed D69315: [LegacyPM] Fix structure dumper.
Nov 1 2019, 5:05 AM · Restricted Project

Oct 31 2019

evgeny777 updated the diff for D69561: [ThinLTO] Import readonly vars with refs.

Adding new flag to summary index allowed better handling cases when actual dead symbol computation was skipped for some reason. See modifications in processGlobalForThinLTO and updated test cases.

Oct 31 2019, 9:05 AM · Restricted Project

Oct 30 2019

evgeny777 added a reviewer for D69315: [LegacyPM] Fix structure dumper: chandlerc.
Oct 30 2019, 11:34 PM · Restricted Project
evgeny777 abandoned D58116: [llvm-objcopy] Improve section removal.
Oct 30 2019, 9:43 AM
evgeny777 updated the diff for D69561: [ThinLTO] Import readonly vars with refs.

Addressed. See comment above for performance insights

Oct 30 2019, 7:58 AM · Restricted Project
evgeny777 added a comment to D69561: [ThinLTO] Import readonly vars with refs.

I can see why this is a good idea, but do you have numbers for this optimization? How much code can be inlined?

This patch doesn't directly affect inlining, though it can reduce number of IR instructions and make inline cost of a function lower.
LLVM test suite shows noticeable code size reduction of Bullet test case (~1%), because deallocation function pointer sFreeFunc is imported with initializer
and load instruction gets eliminated in few destructors (indirect call is converted to direct call). On the whole the change introduced by this patch is quite small
and I wouldn't expect much from it. It would probably work better for C programs, where function pointers in structures is common OO pattern.

Oct 30 2019, 6:24 AM · Restricted Project

Oct 29 2019

evgeny777 accepted D69452: [ThinLTO/WPD] Fix index-based WPD for available_externally vtables.

LGTM

Oct 29 2019, 11:44 PM · Restricted Project
evgeny777 created D69561: [ThinLTO] Import readonly vars with refs.
Oct 29 2019, 6:17 AM · Restricted Project

Oct 28 2019

evgeny777 added a comment to D69315: [LegacyPM] Fix structure dumper.

Ping

Oct 28 2019, 11:50 PM · Restricted Project
evgeny777 added inline comments to D69452: [ThinLTO/WPD] Fix index-based WPD for available_externally vtables.
Oct 28 2019, 11:07 AM · Restricted Project
evgeny777 updated the diff for D69331: [LegacyPM] Port CGProfile pass.

Addressed comments.

Oct 28 2019, 9:18 AM · Restricted Project
evgeny777 added inline comments to D69331: [LegacyPM] Port CGProfile pass.
Oct 28 2019, 9:11 AM · Restricted Project

Oct 26 2019

evgeny777 added inline comments to D69452: [ThinLTO/WPD] Fix index-based WPD for available_externally vtables.
Oct 26 2019, 9:11 AM · Restricted Project

Oct 25 2019

evgeny777 added a comment to D69428: [GlobalOpt] Remove valgrind specific hacks (revert r160529).

Well, I found the original discussion here: http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20120625/145646.html
Added @baldrick and @nlopes

Oct 25 2019, 11:03 AM
evgeny777 added reviewers for D69428: [GlobalOpt] Remove valgrind specific hacks (revert r160529): nlopes, baldrick.
Oct 25 2019, 11:02 AM
evgeny777 added a reviewer for D69315: [LegacyPM] Fix structure dumper: tejohnson.
Oct 25 2019, 5:31 AM · Restricted Project
evgeny777 created D69428: [GlobalOpt] Remove valgrind specific hacks (revert r160529).
Oct 25 2019, 4:01 AM

Oct 24 2019

evgeny777 added a comment to D69331: [LegacyPM] Port CGProfile pass.

This was originally not added to the legacy pass manager because it leaks memory under it due to fundamental issues with the old pass manager. See https://reviews.llvm.org/D48105#1140299 .

@Bigcheese @chandlerc Can you please elaborate? I've run llvm, clang and lld test suites with lsan and everything seems good. What's the problem exactly?

Oct 24 2019, 8:00 AM · Restricted Project
evgeny777 committed rG1ae8e8d25fd8: Don't add -fsplit-lto-unit for thin LTO builds with PS4 and Darwin toolchains (authored by evgeny777).
Don't add -fsplit-lto-unit for thin LTO builds with PS4 and Darwin toolchains
Oct 24 2019, 4:18 AM
evgeny777 closed D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.
Oct 24 2019, 4:18 AM · Restricted Project

Oct 23 2019

evgeny777 added a comment to D69331: [LegacyPM] Port CGProfile pass.

Thanks for looking at it, Teresa!

Oct 23 2019, 8:14 AM · Restricted Project
evgeny777 created D69331: [LegacyPM] Port CGProfile pass.
Oct 23 2019, 3:04 AM · Restricted Project

Oct 22 2019

evgeny777 created D69315: [LegacyPM] Fix structure dumper.
Oct 22 2019, 11:10 AM · Restricted Project
evgeny777 updated the diff for D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.

Addressed

Oct 22 2019, 8:09 AM · Restricted Project
evgeny777 added inline comments to D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.
Oct 22 2019, 8:03 AM · Restricted Project
evgeny777 committed rGe5dd30f77e10: [ThinLTO] Add code comment. NFC (authored by evgeny777).
[ThinLTO] Add code comment. NFC
Oct 22 2019, 6:02 AM
evgeny777 committed rL375500: [ThinLTO] Add code comment. NFC.
[ThinLTO] Add code comment. NFC
Oct 22 2019, 6:01 AM
evgeny777 committed rG0f4186779e04: [ThinLTO] Don't internalize during promotion (authored by evgeny777).
[ThinLTO] Don't internalize during promotion
Oct 22 2019, 2:31 AM
evgeny777 committed rL375494: Added evgeny777.
Added evgeny777
Oct 22 2019, 2:30 AM
evgeny777 closed D69107: [ThinLTO] Don't internalize during promotion.
Oct 22 2019, 2:30 AM · Restricted Project
evgeny777 committed rL375493: [ThinLTO] Don't internalize during promotion.
[ThinLTO] Don't internalize during promotion
Oct 22 2019, 2:21 AM

Oct 21 2019

evgeny777 added a comment to D69107: [ThinLTO] Don't internalize during promotion.

@tejohnson Teresa, are you ok with it?

Oct 21 2019, 10:55 AM · Restricted Project
evgeny777 added inline comments to D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.
Oct 21 2019, 6:16 AM · Restricted Project
evgeny777 updated the diff for D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.

Addressed

Oct 21 2019, 6:08 AM · Restricted Project
evgeny777 updated the diff for D69107: [ThinLTO] Don't internalize during promotion.

Added test case

Oct 21 2019, 3:20 AM · Restricted Project

Oct 18 2019

evgeny777 created D69173: [clang][ThinLTO][Legacy] Don't add -fsplit-lto-unit for legacy thin LTO builds.
Oct 18 2019, 8:47 AM · Restricted Project
evgeny777 committed rGbe78734371e9: One more attempt to fix PS4 buildbot after r375219 (authored by evgeny777).
One more attempt to fix PS4 buildbot after r375219
Oct 18 2019, 7:14 AM
evgeny777 committed rL375237: One more attempt to fix PS4 buildbot after r375219.
One more attempt to fix PS4 buildbot after r375219
Oct 18 2019, 7:14 AM
evgeny777 committed rG7e8f79cdc1ef: Attempt to fix PS4 buildbot after r375219 (authored by evgeny777).
Attempt to fix PS4 buildbot after r375219
Oct 18 2019, 6:55 AM
evgeny777 committed rL375235: Attempt to fix PS4 buildbot after r375219.
Attempt to fix PS4 buildbot after r375219
Oct 18 2019, 6:55 AM
evgeny777 committed rGbc887a8d4a37: [ThinLTOCodeGenerator] Add support for index-based WPD (authored by evgeny777).
[ThinLTOCodeGenerator] Add support for index-based WPD
Oct 18 2019, 4:58 AM