Page MenuHomePhabricator

anton-afanasyev (Anton Afanasyev)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 30 2018, 2:53 PM (67 w, 6 d)

Recent Activity

Thu, Jan 16

anton-afanasyev retitled D72689: [SLP] Revectorize partially vectorized instructions from [SLP] Vectorize partially vectorized instructions to [SLP] Revectorize partially vectorized instructions.
Thu, Jan 16, 1:31 AM · Restricted Project

Tue, Jan 14

anton-afanasyev added a comment to D72689: [SLP] Revectorize partially vectorized instructions.

I saw similar thing in recent research

https://www.nextgenvec.org/slides/revec-cc.pdf

They proposed a new compiler pass to perform revectorization.

Did you look at it? What do you think?

Tue, Jan 14, 6:36 AM · Restricted Project
anton-afanasyev created D72689: [SLP] Revectorize partially vectorized instructions.
Tue, Jan 14, 2:37 AM · Restricted Project

Mon, Jan 6

anton-afanasyev committed rGa79295333005: [Metadata] Add TBAA struct metadata to `AAMDNode` (authored by anton-afanasyev).
[Metadata] Add TBAA struct metadata to `AAMDNode`
Mon, Jan 6, 12:07 AM
anton-afanasyev closed D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Mon, Jan 6, 12:07 AM · Restricted Project

Fri, Jan 3

anton-afanasyev updated the diff for D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Update AAMDNodes constructors

Fri, Jan 3, 11:31 AM · Restricted Project
anton-afanasyev added inline comments to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Fri, Jan 3, 11:31 AM · Restricted Project
anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Ping!

Fri, Jan 3, 3:51 AM · Restricted Project

Fri, Dec 27

anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Gently ping again.

Fri, Dec 27, 10:53 AM · Restricted Project

Fri, Dec 20

anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Gently ping. Is it ok now?

Fri, Dec 20, 12:37 AM · Restricted Project

Dec 18 2019

anton-afanasyev added inline comments to D71060: [LLD][ELF] Add time-trace to ELF LLD (2/2).
Dec 18 2019, 2:16 AM · Restricted Project

Dec 16 2019

anton-afanasyev added inline comments to D71060: [LLD][ELF] Add time-trace to ELF LLD (2/2).
Dec 16 2019, 3:43 AM · Restricted Project
anton-afanasyev added inline comments to D71060: [LLD][ELF] Add time-trace to ELF LLD (2/2).
Dec 16 2019, 3:34 AM · Restricted Project

Dec 12 2019

anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Hi @hfinkel, I've investigated the current state of TBAA support in LLVM. AFAIU (see D40975, but it is still uncommited) the new format of tbaa tag replaces tbaa.struct tag. Does it mean tbaa.struct tag will be deprecated soon?

It might, but it depends on the progress on the new TBAA format. This is not a large change, and I think that we can proceed with this regardless.

Can you please explain what will end up using this information? That should be present in the description.

Dec 12 2019, 12:20 PM · Restricted Project
anton-afanasyev updated the summary of D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Dec 12 2019, 12:19 PM · Restricted Project
anton-afanasyev updated the diff for D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Fix

Dec 12 2019, 10:23 AM · Restricted Project
anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Hi @hfinkel, I've investigated the current state of TBAA support in LLVM. AFAIU (see D40975, but it is still uncommited) the new format of tbaa tag replaces tbaa.struct tag. Does it mean tbaa.struct tag will be deprecated soon?

Dec 12 2019, 4:24 AM · Restricted Project
anton-afanasyev added a reviewer for D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`: kosarev.
Dec 12 2019, 12:44 AM · Restricted Project
anton-afanasyev added a comment to D62067: [Support] Time profiler: support new PassManager.

Starting from D71059 time profiler supports multiple threads, this is a step to support new PassManager.
Regarding note about "why not to use new PM infrastructure for whole time profiler?" The current implementation of time profiler is independent and used by frontend (clang) and ThinLTO (lld). It is rather simple to use by adding just one line at the start of the profiled scope. I'm not sure new PM infrastructure is appropriate for it.

Dec 12 2019, 12:44 AM · Restricted Project

Dec 11 2019

anton-afanasyev closed D68161: [TimeProfiler] Fix "OptModule" section and add new "Backend" sections.

Commited long time ago (https://reviews.llvm.org/rL373142).

Dec 11 2019, 10:53 PM · Restricted Project, Restricted Project
anton-afanasyev updated the diff for D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Fixed

Dec 11 2019, 11:38 AM · Restricted Project
anton-afanasyev added inline comments to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Dec 11 2019, 10:39 AM · Restricted Project
anton-afanasyev updated the diff for D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Updated getAAMetadata() with Merge=true

Dec 11 2019, 10:30 AM · Restricted Project
anton-afanasyev added a comment to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.

Hi @hfinkel, I've investigated the current state of TBAA support in LLVM. AFAIU (see D40975, but it is still uncommited) the new format of tbaa tag replaces tbaa.struct tag. Does it mean tbaa.struct tag will be deprecated soon?

Dec 11 2019, 10:30 AM · Restricted Project
anton-afanasyev accepted D71347: Add TimeTraceScope constructor without detail arg to simplify code where no detail required.

LGTM

Dec 11 2019, 5:16 AM · Restricted Project, Restricted Project

Dec 10 2019

anton-afanasyev accepted D71060: [LLD][ELF] Add time-trace to ELF LLD (2/2).
Dec 10 2019, 12:28 PM · Restricted Project
anton-afanasyev added a comment to D71059: [LLD][ELF] Add time-trace to ELF LLD (1/2).

Btw, is it planned to add test for multithreading?

Thanks for the review.

There are tests for multi-threaded ThinLto using this within LLD in the next review (https://reviews.llvm.org/D71060).

Were you thinking of this, or of unit tests?

Dec 10 2019, 3:35 AM · Restricted Project

Dec 9 2019

anton-afanasyev added a comment to D71059: [LLD][ELF] Add time-trace to ELF LLD (1/2).

Btw, is it planned to add test for multithreading?

Dec 9 2019, 11:03 PM · Restricted Project
anton-afanasyev accepted D71059: [LLD][ELF] Add time-trace to ELF LLD (1/2).

LGTM, thanks!

Dec 9 2019, 1:02 PM · Restricted Project
anton-afanasyev added inline comments to D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Dec 9 2019, 2:30 AM · Restricted Project

Dec 3 2019

anton-afanasyev committed rGa315519c17ab: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates (authored by anton-afanasyev).
[SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates
Dec 3 2019, 8:32 AM
anton-afanasyev closed D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Dec 3 2019, 8:32 AM · Restricted Project
anton-afanasyev updated the summary of D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Dec 3 2019, 7:55 AM · Restricted Project
anton-afanasyev accepted D70950: Add ProcName to TimeTraceProfiler.
Dec 3 2019, 3:27 AM · Restricted Project, Restricted Project

Dec 2 2019

anton-afanasyev updated the diff for D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Fix typo

Dec 2 2019, 10:21 PM · Restricted Project
anton-afanasyev added a comment to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Ping

Dec 2 2019, 2:10 PM · Restricted Project
anton-afanasyev created D70924: [Metadata] Add TBAA struct metadata to `AAMDNode`.
Dec 2 2019, 2:07 PM · Restricted Project
anton-afanasyev accepted D70904: Tidy-ups to TimeProfiler.cpp [NFC].
Dec 2 2019, 9:40 AM · Restricted Project
anton-afanasyev committed rGbd23859f390a: [NFC] Precommit test showing SROA loses `!tbaa.struct` metadata (authored by anton-afanasyev).
[NFC] Precommit test showing SROA loses `!tbaa.struct` metadata
Dec 2 2019, 12:52 AM

Nov 26 2019

anton-afanasyev added inline comments to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 26 2019, 12:15 AM · Restricted Project
anton-afanasyev updated the diff for D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Comment fix

Nov 26 2019, 12:15 AM · Restricted Project

Nov 25 2019

anton-afanasyev updated the diff for D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Fixed

Nov 25 2019, 3:47 AM · Restricted Project
anton-afanasyev added inline comments to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 25 2019, 3:39 AM · Restricted Project
anton-afanasyev updated the diff for D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Fix comment

Nov 25 2019, 3:20 AM · Restricted Project
anton-afanasyev added inline comments to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 25 2019, 3:20 AM · Restricted Project

Nov 22 2019

anton-afanasyev updated the diff for D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Fixed

Nov 22 2019, 9:50 AM · Restricted Project
anton-afanasyev added inline comments to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 22 2019, 9:42 AM · Restricted Project
anton-afanasyev updated the summary of D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 22 2019, 9:22 AM · Restricted Project
anton-afanasyev committed rG80cd6b6e043f: [SLP] Enhance SLPVectorizer to vectorize vector aggregate (authored by anton-afanasyev).
[SLP] Enhance SLPVectorizer to vectorize vector aggregate
Nov 22 2019, 9:13 AM
anton-afanasyev closed D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 22 2019, 9:12 AM · Restricted Project
anton-afanasyev committed rG6d73265ad841: [SLP][Test] Precommit tests for D70068 and D70587. NFC. (authored by anton-afanasyev).
[SLP][Test] Precommit tests for D70068 and D70587. NFC.
Nov 22 2019, 8:54 AM
anton-afanasyev added a comment to D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.

Continuation of https://reviews.llvm.org/D70068. I've merged findBuildVector() and findBuildAggregate() to one findBuildAggregate() function making it recursive to recognize multidimensional aggregates. Aggregates required to be homogeneous.

Nov 22 2019, 1:35 AM · Restricted Project
anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Here is further enhencement considering different combinations of aggregates: https://reviews.llvm.org/D70587

Nov 22 2019, 1:28 AM · Restricted Project
anton-afanasyev created D70587: [SLP] Enhance SLPVectorizer to vectorize different combinations of aggregates.
Nov 22 2019, 1:26 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Updated

Nov 22 2019, 12:52 AM · Restricted Project
anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Please can you pre-commit the tests with current codegen and then rebase to show the diff?

Nov 22 2019, 12:50 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Updated test diff against precommitted tests

Nov 22 2019, 12:50 AM · Restricted Project

Nov 21 2019

anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Is it ok to lgtm for now?

Nov 21 2019, 2:10 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Added test for {{{i16,i16},{i16,i16}},{{i16,i16},{i16,i16}}}.
I'm to process this and other previously added test cases by the following commit.

Nov 21 2019, 2:00 AM · Restricted Project

Nov 16 2019

anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Added several tests

Nov 16 2019, 3:45 AM · Restricted Project
anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

...
But could you also add some more tests to show which of these cases this patch is taking care of. For example, I think {<2 x float>, <2 x float>, <4 x float>} or {<2 x float>, float, float} will not work. Here are some examples:
...

Yes, thanks, I'm to add two test for homogeneous and non-homogeneous cases.

Nov 16 2019, 2:55 AM · Restricted Project
anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Well, ideally we should be able to handle any combination and nesting of scalars, vectors and aggregates in a unified way.
For example:

{float, <2 x float>, float},
{float, float, <2 x float>},
{{float, float}, <4 x float>, <2 x float>},
{{float}, {float}, [2 x float]}, 
{{{float, float}, float}, float}

etc.
This would require some redesign of the code, which is why I think it makes sense to have a single patch for all of them.

But yes, feel free to split them into separate patches.

Nov 16 2019, 2:54 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Update test with shorter one

Nov 16 2019, 2:28 AM · Restricted Project
anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 16 2019, 2:25 AM · Restricted Project

Nov 15 2019

anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

I think we cannot handle several similar cases with aggregates inside aggregates (e.g., [2 x {float, float}], {{float, float}, {float, float}}). Perhaps we could address some of these cases too with this patch? Please see the tests below:
...

Nov 15 2019, 12:38 AM · Restricted Project

Nov 13 2019

anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 13 2019, 8:08 AM · Restricted Project

Nov 11 2019

anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 10:22 AM · Restricted Project
anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 8:13 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Update

Nov 11 2019, 8:13 AM · Restricted Project
anton-afanasyev updated the summary of D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 5:29 AM · Restricted Project
anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 5:20 AM · Restricted Project
anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 5:11 AM · Restricted Project
anton-afanasyev added inline comments to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 4:16 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Update summary

Nov 11 2019, 1:25 AM · Restricted Project
anton-afanasyev updated the diff for D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Add test

Nov 11 2019, 1:25 AM · Restricted Project
anton-afanasyev added a comment to D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.

Oops, missed regression test, I'm to add it.

Nov 11 2019, 1:07 AM · Restricted Project
anton-afanasyev created D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate.
Nov 11 2019, 1:07 AM · Restricted Project

Nov 2 2019

anton-afanasyev accepted D69750: make -ftime-trace also trace time spent creating debug info.

LGTM, thanks!

Nov 2 2019, 9:37 AM · Restricted Project

Oct 16 2019

anton-afanasyev added a reviewer for D69043: [RFC] Adding time-trace to LLD?: aras-p.
Oct 16 2019, 8:27 AM · Restricted Project, Restricted Project

Oct 10 2019

anton-afanasyev accepted D68710: Remove time-trace message as it is inconsistent style.

Yes, I agree. LGTM.

Oct 10 2019, 2:12 AM · Restricted Project

Oct 1 2019

anton-afanasyev accepted D68260: Decrease the verbosity of the -ftime-trace option And move the relevant information in the doc..

I believe it's better solution, LGTM.

Oct 1 2019, 12:48 AM · Restricted Project, Restricted Project

Sep 28 2019

anton-afanasyev committed rGf7a428ecaac9: [TimeProfiler] Fix "OptModule" section and add new "Backend" sections (authored by anton-afanasyev).
[TimeProfiler] Fix "OptModule" section and add new "Backend" sections
Sep 28 2019, 12:14 AM
anton-afanasyev committed rL373142: [TimeProfiler] Fix "OptModule" section and add new "Backend" sections.
[TimeProfiler] Fix "OptModule" section and add new "Backend" sections
Sep 28 2019, 12:13 AM

Sep 27 2019

anton-afanasyev added a comment to D68161: [TimeProfiler] Fix "OptModule" section and add new "Backend" sections.

Oh nice!



I like this.

One more related question - there are two "Frontend" sections, second one appears to consist only of "CodeGen Function"s.
Is that correct? Should they both be in an actual front-end section, and should they be renamed to, i dunno,
"Sema" and "Codegen"? I'm not sure about this, just raising a question.

Sep 27 2019, 11:55 PM · Restricted Project, Restricted Project
anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 27 2019, 2:55 PM · Restricted Project, Restricted Project
anton-afanasyev created D68161: [TimeProfiler] Fix "OptModule" section and add new "Backend" sections.
Sep 27 2019, 2:54 PM · Restricted Project, Restricted Project

Sep 24 2019

anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 24 2019, 11:43 AM · Restricted Project, Restricted Project
anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 24 2019, 9:25 AM · Restricted Project, Restricted Project
anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 24 2019, 8:31 AM · Restricted Project, Restricted Project
anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 24 2019, 8:07 AM · Restricted Project, Restricted Project
anton-afanasyev added inline comments to D58675: [clang] Adds `-ftime-trace` option to clang that produces Chrome `chrome://tracing` compatible JSON profiling output dumps.
Sep 24 2019, 5:35 AM · Restricted Project, Restricted Project

Sep 18 2019

anton-afanasyev added a comment to D62067: [Support] Time profiler: support new PassManager.

With new-pm soon being the default, i'm curious what's the plan with -ftime-trace?
Will it simply turn into a pumpkin? Is there an upcoming patch (along the lines of D62067#1511128)?

Sep 18 2019, 6:19 AM · Restricted Project

Aug 28 2019

anton-afanasyev committed rG101aca0484bc: [Test][Time profiler] Fix test for python3 (authored by anton-afanasyev).
[Test][Time profiler] Fix test for python3
Aug 28 2019, 11:51 PM
anton-afanasyev committed rL370300: [Test][Time profiler] Fix test for python3.
[Test][Time profiler] Fix test for python3
Aug 28 2019, 11:48 PM
anton-afanasyev closed D66873: [Test][Time profiler] Fix test for python3.
Aug 28 2019, 11:48 PM · Restricted Project, Restricted Project
anton-afanasyev added a comment to D66873: [Test][Time profiler] Fix test for python3.

Could you please give LGTM?

Aug 28 2019, 2:26 PM · Restricted Project, Restricted Project
anton-afanasyev added a comment to D63325: [Support][Time profiler] Make FE codegen blocks to be inside frontend blocks.

Hi @nathanchance, @mgehre, fixed here: https://reviews.llvm.org/D66873, please, look at it to commit.

Aug 28 2019, 5:26 AM · Restricted Project, Restricted Project
anton-afanasyev created D66873: [Test][Time profiler] Fix test for python3.
Aug 28 2019, 5:24 AM · Restricted Project, Restricted Project
anton-afanasyev added a comment to D63325: [Support][Time profiler] Make FE codegen blocks to be inside frontend blocks.

I'm seeing the same issue Not all CodeGen sections are inside any Frontend section! with python 3.7.1. Json:

Aug 28 2019, 3:07 AM · Restricted Project, Restricted Project

Aug 23 2019

anton-afanasyev added a comment to D63325: [Support][Time profiler] Make FE codegen blocks to be inside frontend blocks.

Done, thanks for looking into this!

Aug 23 2019, 11:37 AM · Restricted Project, Restricted Project