Page MenuHomePhabricator

danlark (Danila Kutenin)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 10 2017, 11:52 PM (179 w, 5 d)

Recent Activity

Feb 19 2021

danlark abandoned D97000: [clang] Increase the bitness of data length in ASTDeclContextNameLookup.

Thanks!

Feb 19 2021, 12:17 AM · Restricted Project

Feb 18 2021

danlark updated the summary of D97000: [clang] Increase the bitness of data length in ASTDeclContextNameLookup.
Feb 18 2021, 2:57 PM · Restricted Project
danlark requested review of D97000: [clang] Increase the bitness of data length in ASTDeclContextNameLookup.
Feb 18 2021, 2:53 PM · Restricted Project
danlark added a comment to D96946: [libcxx][RFC] Unspecified behavior randomization in libcxx.

First of all, thanks for writing a design document and explaining the purpose of your patch. Let me try to understand the use case a bit better.

So basically, let's say you're trying to adopt a new implementation of std::sort internally. You change that, but then you realize that a bunch of tests break because they were relying on the exact order of equal elements after std::sort, which is really unspecified. But since those tests are failing, you can't use the new std::sort implementation until all the tests have been fixed. So, in order to make that transition easier and allow fixing tests one by one, you add this feature. You then turn it on locally for some projects/tests inside your organization, and you fix them one by one. Once you're done, you can switch the algorithm implementation, and turn off the randomization. Is that the idea?

Feb 18 2021, 9:23 AM · Restricted Project
danlark updated the diff for D96946: [libcxx][RFC] Unspecified behavior randomization in libcxx.

Address comments

Feb 18 2021, 9:23 AM · Restricted Project
danlark updated the diff for D96946: [libcxx][RFC] Unspecified behavior randomization in libcxx.

Fix unused parameters

Feb 18 2021, 3:27 AM · Restricted Project
danlark updated the summary of D96946: [libcxx][RFC] Unspecified behavior randomization in libcxx.
Feb 18 2021, 2:28 AM · Restricted Project
danlark requested review of D96946: [libcxx][RFC] Unspecified behavior randomization in libcxx.
Feb 18 2021, 2:25 AM · Restricted Project

Feb 4 2021

danlark added inline comments to D93661: [libc++] [P0879] constexpr std::sort, and add new tests for it.
Feb 4 2021, 11:27 AM · Restricted Project
danlark added inline comments to D93661: [libc++] [P0879] constexpr std::sort, and add new tests for it.
Feb 4 2021, 9:28 AM · Restricted Project

Jul 24 2020

danlark updated the diff for D84497: [builtins][NFC] Replace the constants better matching readability in udivmodti4.

Correctness

Jul 24 2020, 1:03 AM · Restricted Project
Herald added a project to D84497: [builtins][NFC] Replace the constants better matching readability in udivmodti4: Restricted Project.
Jul 24 2020, 12:58 AM · Restricted Project

Jul 10 2020

danlark planned changes to D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper.

I need to double check the cold cache performance, it may happen that it is slower in that case

Jul 10 2020, 6:38 AM · Restricted Project
danlark added a reviewer for D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper: howard.hinnant.
Jul 10 2020, 5:57 AM · Restricted Project
danlark updated the diff for D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper.

Provide better names than in paper

Jul 10 2020, 5:55 AM · Restricted Project
danlark added a comment to D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper.

I have no idea what the policy is WRT size for compiler-rt. How big is the diff if you take code size into consideration ?

Jul 10 2020, 5:46 AM · Restricted Project
danlark updated the summary of D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper.
Jul 10 2020, 5:35 AM · Restricted Project
Herald added a project to D83547: [builtins] Optimize the 128-bit division according to "Improved division by invariant integers" paper: Restricted Project.
Jul 10 2020, 5:34 AM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix clang format

Jul 10 2020, 12:55 AM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix comments

Jul 10 2020, 12:43 AM · Restricted Project

Jul 9 2020

danlark added a comment to D81809: [builtins] Optimize udivmodti4 for many platforms..

Please, take a look

Jul 9 2020, 2:06 PM · Restricted Project

Jul 8 2020

danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Update the real reference

Jul 8 2020, 11:45 AM · Restricted Project
danlark closed D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

879f4962e83f98863c83e385e956d579e131791f

Jul 8 2020, 12:56 AM

Jul 7 2020

danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix comments

Jul 7 2020, 11:33 PM · Restricted Project
danlark updated the diff for D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

Fix

Jul 7 2020, 5:25 PM
danlark added inline comments to D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.
Jul 7 2020, 10:14 AM
danlark updated the diff for D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

Fix comments

Jul 7 2020, 10:14 AM
danlark added a comment to D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

Could you submit it for me? I don't have commit rights for now. danilak@google.com

Jul 7 2020, 7:55 AM
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix clang-tidy readability warnings more

Jul 7 2020, 3:15 AM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

clang-format

Jul 7 2020, 3:11 AM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix non x86-mode

Jul 7 2020, 3:10 AM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Fix clang-tidy warnings

Jul 7 2020, 3:08 AM · Restricted Project
danlark added a comment to D81809: [builtins] Optimize udivmodti4 for many platforms..

Ping

Jul 7 2020, 2:36 AM · Restricted Project

Jul 2 2020

danlark updated the diff for D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

Fix comments

Jul 2 2020, 3:43 AM
danlark added inline comments to D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.
Jul 2 2020, 3:43 AM
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jul 2 2020, 2:38 AM · Restricted Project
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jul 2 2020, 2:38 AM · Restricted Project
danlark updated the diff for D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.

Remove unnecessary header

Jul 2 2020, 2:38 AM
danlark added a comment to D81809: [builtins] Optimize udivmodti4 for many platforms..

Nice. I have not looked at the code yet, but I think it would make sense to add your benchmark to the compiler-rt unit tests.

Jul 2 2020, 2:38 AM · Restricted Project
danlark created D83027: Add benchmarks for 128 bit division and create a directory for all builtins benchmarks.
Jul 2 2020, 2:38 AM

Jul 1 2020

danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jul 1 2020, 4:13 PM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

CHAR_BIT instead of 8

Jul 1 2020, 3:40 PM · Restricted Project
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jul 1 2020, 3:09 PM · Restricted Project
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jul 1 2020, 3:09 PM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Style

Jul 1 2020, 3:09 PM · Restricted Project
danlark added a reviewer for D81809: [builtins] Optimize udivmodti4 for many platforms.: MaskRay.
Jul 1 2020, 2:36 PM · Restricted Project
danlark added a comment to D81809: [builtins] Optimize udivmodti4 for many platforms..

Ping and maybe I need some help in introducing benchmarks (if we really need to) for this because I don't quite understand how and where it should be best located.

Jul 1 2020, 2:36 PM · Restricted Project

Jun 15 2020

danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Style

Jun 15 2020, 1:36 AM · Restricted Project

Jun 14 2020

danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Clang format

Jun 14 2020, 11:58 PM · Restricted Project
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jun 14 2020, 11:58 PM · Restricted Project
danlark updated the diff for D81809: [builtins] Optimize udivmodti4 for many platforms..

Use native division when high is zero.

Jun 14 2020, 3:28 PM · Restricted Project
danlark updated the summary of D81809: [builtins] Optimize udivmodti4 for many platforms..
Jun 14 2020, 10:08 AM · Restricted Project
danlark retitled D81809: [builtins] Optimize udivmodti4 for many platforms. from Optimize udivmodti4 for many platforms. to [builtins] Optimize udivmodti4 for many platforms..
Jun 14 2020, 10:08 AM · Restricted Project
danlark created D81809: [builtins] Optimize udivmodti4 for many platforms..
Jun 14 2020, 10:08 AM · Restricted Project
danlark added a reviewer for D81809: [builtins] Optimize udivmodti4 for many platforms.: courbet.
Jun 14 2020, 10:08 AM · Restricted Project

May 28 2020

danlark abandoned D58025: [libcxx] MSVC fails to compile `operator valarray<template>`.
May 28 2020, 7:34 AM
danlark abandoned D58021: Win32 does not have popcnt64 function and fix bug with defines in ctz function.
May 28 2020, 7:34 AM
danlark abandoned D58022: __builtin_strlen is not supported for MSVC e.g and it is not correct to use it without knowledge of this "builtin" in advance.
May 28 2020, 7:34 AM
danlark abandoned D44823: [libcxx] Improving std::vector<char> and std::deque<char> perfomance.
May 28 2020, 7:34 AM

May 27 2020

danlark added inline comments to D44823: [libcxx] Improving std::vector<char> and std::deque<char> perfomance.
May 27 2020, 2:46 PM

Jan 20 2020

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

@spatel @lebedev.ri Ping

Jan 20 2020, 4:07 AM · Restricted Project

Jan 14 2020

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

@lebedev.ri Friendly ping and see message from spatel@ above :)

Jan 14 2020, 9:55 AM · Restricted Project

Jan 9 2020

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

There's a lot going on here, and the patch doesn't apply cleanly to current source. Can you pre-commit any NFC changes/tests to make this patch smaller? For example, the udiv change/tests are not affected by the mul code?

Sorry - I didn't see earlier that this patch is part of a sequence.
I'm a bit skeptical about the need to extend the "udiv action" machine. Are the motivating cases really that complicated or could we get away with a simpler pattern match of mul(select...)?

I am not sure but I just reused the code for both division and multiplication -- from my perspective the idea is the same.

Also, I rebased a bit and made the patch smaller as you asked.

Jan 9 2020, 10:14 AM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

There's a lot going on here, and the patch doesn't apply cleanly to current source. Can you pre-commit any NFC changes/tests to make this patch smaller? For example, the udiv change/tests are not affected by the mul code?

Sorry - I didn't see earlier that this patch is part of a sequence.
I'm a bit skeptical about the need to extend the "udiv action" machine. Are the motivating cases really that complicated or could we get away with a simpler pattern match of mul(select...)?

Jan 9 2020, 9:45 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Rebase and make tests committed before

Jan 9 2020, 9:36 AM · Restricted Project
danlark updated the diff for D71567: [InstCombine] Add tests for `select + mul` for power of twos. NFC.

Rebase

Jan 9 2020, 9:36 AM · Restricted Project
danlark updated the diff for D71567: [InstCombine] Add tests for `select + mul` for power of twos. NFC.

Update tests

Jan 9 2020, 9:36 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Removing div tests, we don't need them

Jan 9 2020, 9:36 AM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

@spatel You are doing a lot of stuff around this code, PTAL.

Jan 9 2020, 7:34 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Applying m_ZExtOrSelf

Jan 9 2020, 7:34 AM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

@lebedev.ri Can you please take a look and possibly submit?

Jan 9 2020, 2:54 AM · Restricted Project

Jan 4 2020

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Ping

Jan 4 2020, 5:00 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Replace finally everything with asserts

Jan 4 2020, 4:57 AM · Restricted Project

Jan 1 2020

danlark added a reviewer for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos.: nikic.
Jan 1 2020, 6:34 AM · Restricted Project

Dec 30 2019

danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Remove nullptr assignment

Dec 30 2019, 8:22 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Fix asserts

Dec 30 2019, 8:22 AM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Another hopeless ping before NY

Dec 30 2019, 6:57 AM · Restricted Project

Dec 25 2019

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Ping

Dec 25 2019, 8:13 AM · Restricted Project

Dec 22 2019

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Ping.

Dec 22 2019, 11:26 AM · Restricted Project

Dec 19 2019

danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Ping

Dec 19 2019, 3:30 PM · Restricted Project

Dec 18 2019

danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Don't add zero

Dec 18 2019, 8:47 AM · Restricted Project

Dec 17 2019

danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Also add NUW

Dec 17 2019, 5:29 PM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Thank you for working on this.

Dec 17 2019, 5:09 PM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Fix overflow in shifting and further propagation

Dec 17 2019, 5:09 PM · Restricted Project
danlark added inline comments to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..
Dec 17 2019, 5:09 PM · Restricted Project
danlark added a comment to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Now I think review is in a good shape

Dec 17 2019, 10:24 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Rebase and style

Dec 17 2019, 3:00 AM · Restricted Project
danlark added inline comments to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..
Dec 17 2019, 2:32 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Update vector test

Dec 17 2019, 2:32 AM · Restricted Project
danlark added inline comments to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..
Dec 17 2019, 1:54 AM · Restricted Project
danlark added inline comments to D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..
Dec 17 2019, 1:54 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

undef should return zero in select+shl

Dec 17 2019, 1:54 AM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Correct INT_MIN test

Dec 17 2019, 12:57 AM · Restricted Project
danlark updated the diff for D71567: [InstCombine] Add tests for `select + mul` for power of twos. NFC.

Correct INT_MIN test

Dec 17 2019, 12:57 AM · Restricted Project

Dec 16 2019

danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Rebase

Dec 16 2019, 4:53 PM · Restricted Project
danlark updated the diff for D71567: [InstCombine] Add tests for `select + mul` for power of twos. NFC.

More robust zext tests

Dec 16 2019, 4:53 PM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Even more robust tests

Dec 16 2019, 4:44 PM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

More robust zext tests

Dec 16 2019, 4:44 PM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Add zext test

Dec 16 2019, 4:34 PM · Restricted Project
danlark updated the diff for D71568: [InstCombine] `select + mul` -> `select + shl` with power of twos..

Add simple min integer test

Dec 16 2019, 4:07 PM · Restricted Project