Page MenuHomePhabricator

kpdev42 (Pavel Kosov)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 19 2019, 4:12 AM (66 w, 6 d)

Recent Activity

Sep 14 2020

kpdev42 added a comment to D86890: [compiler-rt] Remove copy of InstrProfData.inc.

I would love to have a single source of truth, but this basically makes it
impossible to just build compiler-rt by itself, no?

That path is also “very non portable”, given that our cmake build system
can find/be directed to the source for the projects in different places.

Thank you,
Filipe

Sep 14 2020, 1:12 AM · Unknown Object (Project), Restricted Project

Sep 13 2020

kpdev42 updated subscribers of D86890: [compiler-rt] Remove copy of InstrProfData.inc.

Gentle ping about removing this unnecessary copy. Please share your thoughts here about it @yamauchi @davidxl @rnk

Sep 13 2020, 12:34 PM · Unknown Object (Project), Restricted Project

Aug 31 2020

kpdev42 requested review of D86890: [compiler-rt] Remove copy of InstrProfData.inc.
Aug 31 2020, 12:47 PM · Unknown Object (Project), Restricted Project

Aug 17 2020

kpdev42 added inline comments to D84261: [PGO] Supporting code for always instrumenting entry block.
Aug 17 2020, 1:17 PM · Restricted Project, Unknown Object (Project)

Jun 16 2020

kpdev42 added inline comments to D81580: [ADT] Add Bitfield utilities - design #1.
Jun 16 2020, 11:57 PM · Unknown Object (Project)

Apr 18 2020

kpdev42 committed rG1b0436cd4b7e: [scudo] Silent warning for u64 -> u32 convertion (authored by kpdev42).
[scudo] Silent warning for u64 -> u32 convertion
Apr 18 2020, 1:28 PM

Mar 7 2020

kpdev42 committed rG0dfcb23b0507: [NFC][Test commit] Remove redundant point in docs (authored by kpdev42).
[NFC][Test commit] Remove redundant point in docs
Mar 7 2020, 1:33 PM

Feb 27 2020

kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Ok, thanks a lot )

Feb 27 2020, 11:34 AM · Unknown Object (Project)
kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Thank you. Should I close this revision?

Feb 27 2020, 3:43 AM · Unknown Object (Project)

Feb 26 2020

kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Yep, those are the instructions to request commit access, which might be good to request if you plan to do more llvm work. I guess that will probably take a few days. And if you're not in a hurry with getting this committed, you could wait for your commit access and then commit this yourself. But I would of course be happy to commit this on your behalf, which I will then do tomorrow morning, just let me know what you prefer.

Feb 26 2020, 11:38 PM · Unknown Object (Project)
kpdev42 added inline comments to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.
Feb 26 2020, 11:31 PM · Unknown Object (Project)
kpdev42 updated the diff for D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Change formatting in AArch64ISelDAGToDAG.cpp according to codestyle

Feb 26 2020, 11:30 PM · Unknown Object (Project)
kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Thank you for the review. (All of you)
Unfortunately I don't have commit access, would you please submit this change on my behalf? )

Feb 26 2020, 11:50 AM · Unknown Object (Project)
kpdev42 added inline comments to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.
Feb 26 2020, 4:19 AM · Unknown Object (Project)
kpdev42 updated the diff for D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Update test with two uses of AND

Feb 26 2020, 4:15 AM · Unknown Object (Project)
kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

All commentaries are resolved, patch is ready for review )

Feb 26 2020, 12:06 AM · Unknown Object (Project)

Feb 25 2020

kpdev42 updated the diff for D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Add a test case with two uses of AND instruction
Plus make some simplification of code in AArch64ISelLowering

Feb 25 2020, 11:58 PM · Unknown Object (Project)
kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Please take a look at this patch )

Feb 25 2020, 12:15 AM · Unknown Object (Project)

Feb 20 2020

kpdev42 updated the diff for D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

All changes are moved from InstrInfo to ISelLowering

Feb 20 2020, 6:04 AM · Unknown Object (Project)

Jan 29 2020

kpdev42 updated the diff for D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Update patch: move all changes to AArch64InstrInfo::optimizeCondBranch(MachineInstr &MI) as it was planned.
But I do not know if it will be the latest version, because as I see from the discussion - moving this functionality to ISel is more preferable.
So, do I need to create another patch with ISel implementation (I mean - create another differential revision), or it is better to change this patch?

Jan 29 2020, 5:13 AM · Unknown Object (Project)

Jan 28 2020

kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

I don't mind taking a look.

First question about where this should live. With AArch64InstrInfo::mergeInstructions(MachineFunction& MF) you're iterating of all blocks/instructions, which is typically not something that belongs in AArch64InstrInfo because that works on instructions. The generic peephole class does exactly this, which makes calls to e.g. optimizeCondBranch. As Eli suggested in the email thread on llvm dev, can you implement and do this in AArch64InstrInfo::optimizeCondBranch(MachineInstr &MI)?

Jan 28 2020, 11:02 PM · Unknown Object (Project)

Jan 27 2020

kpdev42 added a comment to D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.

Ping. I would be grateful for your commentaries about this patch. Maybe this code should be changed in some way?

Jan 27 2020, 1:33 AM · Unknown Object (Project)

Dec 20 2019

kpdev42 updated the diff for D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

I have added check for additional instructions which will be generated after select lowering (In lambda IsWorthwile in mergeConditionalStoreToAddress)
Update test.

Dec 20 2019, 2:54 AM · Unknown Object (Project)

Dec 19 2019

kpdev42 created D71701: [AArch64] Peephole optimization. Merge AND and TST instructions.
Dec 19 2019, 5:46 AM · Unknown Object (Project)

Nov 25 2019

kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

On X86 branch misprediction is ~10..~20 cycles,

Nov 25 2019, 1:00 AM · Unknown Object (Project)

Nov 22 2019

kpdev42 updated the diff for D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Fix formatting in SimplifyCFG.cpp and remaster testcase (I reduced it more accurately to avoid overreducing)
Please @lebedev.ri take a look

Nov 22 2019, 2:28 AM · Unknown Object (Project)

Nov 20 2019

kpdev42 updated the diff for D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

I changed my patch, now before merging blocks it calculates existing instructions in DomBB,
just to be sure that this block is not too big already
Maybe instead of using phi-node-folding threshold it is needed to use some other separate threshold.

Nov 20 2019, 5:24 AM · Unknown Object (Project)
kpdev42 reclaimed D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.
Nov 20 2019, 5:00 AM · Unknown Object (Project)

Sep 16 2019

kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Yes, I think it is possible, that this code should be changed later in backend. It needs more investigation )

Sep 16 2019, 6:54 AM · Unknown Object (Project)

Sep 12 2019

kpdev42 abandoned D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

I need to change my patch entirely, it needs discussion in mailing list and it will take time, so at the moment I will close this revision and after some time create another one.
Thanks to all.

Sep 12 2019, 6:56 AM · Unknown Object (Project)

Sep 11 2019

kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Yes, sure, will upload it in 24 hours, thank you!

Sep 11 2019, 1:00 PM · Unknown Object (Project)

Sep 10 2019

kpdev42 updated the diff for D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Rework patch. Allow merge store but bring additional check to FoldTwoEntryPHINode: before hoisting all instructions from IfBlock0 and IfBlock1 to DomBlock we check number of instructions in this DomBlock.

Sep 10 2019, 10:06 AM · Unknown Object (Project)
kpdev42 updated the diff for D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Simplify test case. Relevant C code is:

Sep 10 2019, 12:08 AM · Unknown Object (Project)

Sep 9 2019

kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

I checked D67315 , unfortunately it does not help, generated code is the same.

Sep 9 2019, 8:12 AM · Unknown Object (Project)
kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Thank you for detailed answer.

Sep 9 2019, 3:55 AM · Unknown Object (Project)

Sep 6 2019

kpdev42 added a comment to D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.

Maybe the reason of this regression is not here and I worked in wrong direction. If so - I will really appreciate any clarifications about it

Sep 6 2019, 8:45 AM · Unknown Object (Project)
kpdev42 created D67281: [AArch64][SimplifyCFG] Add additional cost for instructions in mergeConditionalStoreToAddress.
Sep 6 2019, 8:38 AM · Unknown Object (Project)