Page MenuHomePhabricator

vsapsai (Volodymyr Sapsai)
User

Projects

User does not belong to any projects.

User Details

User Since
May 27 2014, 6:39 AM (243 w, 1 d)

Recent Activity

Yesterday

vsapsai updated the diff for D57076: [ObjC generics] Fix applying `__kindof` to the type parameter..
  • Add a test that __kindof works with type sugar such as typedef.
  • Use early return to reduce nesting. Also it's consistent with the previous early returns.
Wed, Jan 23, 5:14 PM
vsapsai updated the diff for D57076: [ObjC generics] Fix applying `__kindof` to the type parameter..

Update diff to ignore parent patch.

Wed, Jan 23, 5:14 PM
vsapsai added a comment to D57076: [ObjC generics] Fix applying `__kindof` to the type parameter..

I think this is reasonable but Doug was the one who worked on this. I wonder if it also helps with the test cases in rdar://problem/24619481.

Wed, Jan 23, 5:10 PM
vsapsai added a comment to D56561: [Preprocessor] For missing file in framework add note about framework location..

Ping.

Wed, Jan 23, 12:05 PM

Tue, Jan 22

vsapsai added a parent revision for D57076: [ObjC generics] Fix applying `__kindof` to the type parameter.: D57075: [ObjC] For type substitution in generics use a regular recursive type visitor..
Tue, Jan 22, 6:20 PM
vsapsai added a child revision for D57075: [ObjC] For type substitution in generics use a regular recursive type visitor.: D57076: [ObjC generics] Fix applying `__kindof` to the type parameter..
Tue, Jan 22, 6:20 PM
vsapsai created D57076: [ObjC generics] Fix applying `__kindof` to the type parameter..
Tue, Jan 22, 6:19 PM
vsapsai created D57075: [ObjC] For type substitution in generics use a regular recursive type visitor..
Tue, Jan 22, 6:18 PM

Wed, Jan 16

vsapsai added a comment to D56766: [Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction..

Thanks for the review.

Wed, Jan 16, 4:26 PM
vsapsai committed rL351402: [Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction..
[Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction.
Wed, Jan 16, 4:25 PM
vsapsai committed rC351402: [Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction..
[Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction.
Wed, Jan 16, 4:25 PM
vsapsai closed D56766: [Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction..
Wed, Jan 16, 4:24 PM

Tue, Jan 15

vsapsai created D56766: [Frontend] Make WrapperFrontendAction call WrappedAction.PrepareToExecuteAction..
Tue, Jan 15, 5:27 PM
vsapsai committed rC351232: [MSVC Compat] Fix typo correction for inclusion directives..
[MSVC Compat] Fix typo correction for inclusion directives.
Tue, Jan 15, 12:13 PM
vsapsai committed rL351232: [MSVC Compat] Fix typo correction for inclusion directives..
[MSVC Compat] Fix typo correction for inclusion directives.
Tue, Jan 15, 12:13 PM
vsapsai closed D56631: [MSVC Compat] Fix typo correction for inclusion directives..
Tue, Jan 15, 12:13 PM
vsapsai added a comment to D56631: [MSVC Compat] Fix typo correction for inclusion directives..

Thanks for the review.

Tue, Jan 15, 12:13 PM

Fri, Jan 11

vsapsai created D56631: [MSVC Compat] Fix typo correction for inclusion directives..
Fri, Jan 11, 7:05 PM

Thu, Jan 10

vsapsai added inline comments to D56561: [Preprocessor] For missing file in framework add note about framework location..
Thu, Jan 10, 2:40 PM
vsapsai created D56561: [Preprocessor] For missing file in framework add note about framework location..
Thu, Jan 10, 2:38 PM

Mon, Jan 7

vsapsai added inline comments to D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
Mon, Jan 7, 4:09 PM
vsapsai committed rCXX350583: [libcxx] Optimize vectors construction of trivial types from an iterator range….
[libcxx] Optimize vectors construction of trivial types from an iterator range…
Mon, Jan 7, 4:07 PM
vsapsai committed rL350583: [libcxx] Optimize vectors construction of trivial types from an iterator range….
[libcxx] Optimize vectors construction of trivial types from an iterator range…
Mon, Jan 7, 4:07 PM
vsapsai closed D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
Mon, Jan 7, 4:07 PM
vsapsai updated the diff for D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
  • Test initializing vector of pointers with array of pointers of convertible type.
Mon, Jan 7, 3:20 PM
vsapsai added inline comments to D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
Mon, Jan 7, 1:59 PM
vsapsai added inline comments to D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
Mon, Jan 7, 1:57 PM
vsapsai updated the diff for D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
  • Test initializing vector of unsigned int with array of int.
Mon, Jan 7, 1:49 PM

Fri, Jan 4

vsapsai added inline comments to D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
Fri, Jan 4, 1:58 PM
vsapsai updated the diff for D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..
  • Tweak the test.
  • Use for __construct_range_forward approach recommended by @ldionne (it works with C++03).
  • Use __is_default_allocator for __construct_forward and __construct_backward.
Fri, Jan 4, 1:48 PM

Dec 20 2018

vsapsai accepted D47757: [Sema] Produce diagnostics when unavailable aligned allocation/deallocation functions are called.

The change itself looks correct. Cannot really tell if you need to make changes in other places. For that I rely on Richard's opinion.

Dec 20 2018, 5:08 PM
vsapsai committed rC349853: [CodeGen] Fix a test from r349848 by replacing `objc_` with `llvm.objc.`.
[CodeGen] Fix a test from r349848 by replacing `objc_` with `llvm.objc.`
Dec 20 2018, 3:30 PM
vsapsai committed rL349853: [CodeGen] Fix a test from r349848 by replacing `objc_` with `llvm.objc.`.
[CodeGen] Fix a test from r349848 by replacing `objc_` with `llvm.objc.`
Dec 20 2018, 3:29 PM
vsapsai added a comment to D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..

Thanks for the review, John. Committed the change and will watch the buildbots on non-Darwin platform.

Dec 20 2018, 2:48 PM
vsapsai committed rL349848: [CodeGen] Fix assertion on emitting cleanup for object with inlined inherited….
[CodeGen] Fix assertion on emitting cleanup for object with inlined inherited…
Dec 20 2018, 2:47 PM
vsapsai committed rC349848: [CodeGen] Fix assertion on emitting cleanup for object with inlined inherited….
[CodeGen] Fix assertion on emitting cleanup for object with inlined inherited…
Dec 20 2018, 2:46 PM
vsapsai closed D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
Dec 20 2018, 2:46 PM

Dec 19 2018

vsapsai committed rCXX349676: [libcxx] Use custom allocator's `construct` in C++03 when available..
[libcxx] Use custom allocator's `construct` in C++03 when available.
Dec 19 2018, 12:12 PM
vsapsai committed rL349676: [libcxx] Use custom allocator's `construct` in C++03 when available..
[libcxx] Use custom allocator's `construct` in C++03 when available.
Dec 19 2018, 12:12 PM
vsapsai closed D48753: [libcxx] Use custom allocator's `construct` in C++03 when available..
Dec 19 2018, 12:11 PM
vsapsai added a comment to D48753: [libcxx] Use custom allocator's `construct` in C++03 when available..

Ping.

Dec 19 2018, 11:12 AM
vsapsai updated the diff for D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
  • [ObjC++] Verify there are no unexpected calls.
Dec 19 2018, 10:57 AM

Dec 18 2018

vsapsai updated the diff for D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
  • [ObjC++] Pass struct with __strong field as a value, not as a reference.
Dec 18 2018, 11:42 AM

Dec 17 2018

vsapsai updated the diff for D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
  • Test order of destroying parameters to inlined inherited constructor.
  • [ObjC++] Add test using struct with __strong field as a parameter for inlined inherited constructor.
Dec 17 2018, 4:58 PM

Dec 14 2018

vsapsai added a comment to D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..

Nice catch. This also fixes problems where there might be cleanups entered by EmitParmDecl, e.g. in ObjC++ with a parameter of type struct A { __strong id x; }; could you please add a test for that and verify that the parameter is destroyed at an appropriate point in the inlined call?

Aha, I see we have at least EHStack.pushCleanup<ConsumeARCParameter> in EmitParmDecl. Will make sure to add a test that executes this code path.

Dec 14 2018, 6:16 PM

Dec 12 2018

vsapsai planned changes to D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
Dec 12 2018, 7:48 PM
vsapsai added a comment to D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..

I'd tried this exact same patch back in https://reviews.llvm.org/D44619, but I was running into a bunch of check-clang failures with it, and I was never able to figure them out. It looks like it works now though, so I'm glad :) Richard's comment from that diff might still be relevant:

Please add a test to ensure that we still destroy function parameters in the right order and at the right times (for both the exceptional and non-exceptional cleanup cases).

This will also resolve https://bugs.llvm.org/show_bug.cgi?id=36748

Dec 12 2018, 7:47 PM
vsapsai added a comment to D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..

Nice catch. This also fixes problems where there might be cleanups entered by EmitParmDecl, e.g. in ObjC++ with a parameter of type struct A { __strong id x; }; could you please add a test for that and verify that the parameter is destroyed at an appropriate point in the inlined call?

Dec 12 2018, 7:46 PM

Dec 11 2018

vsapsai added a comment to D48753: [libcxx] Use custom allocator's `construct` in C++03 when available..
  1. Also, before this patch, the allocator's construct and destroy were NEVER called in C++03, but were called when available in C++11. After this patch, they are called when available in C++03 and in C++11. Is this correct?

    If (2) is true, then I believe this patch is a worthwhile improvement in terms of quality-of-implementation, even though it's not mandated by the spec. People do have custom allocators, and this behavior change between C++03 and C++11 is quite subtle and surprising.
Dec 11 2018, 5:32 PM
vsapsai added a comment to D48753: [libcxx] Use custom allocator's `construct` in C++03 when available..

Regarding the tests. I've moved most of new tests for custom allocators to test/libcxx/*. And in destroy.pass.cpp I'm just checking _LIBCPP_VERSION to avoid copying the test to a different file.

Dec 11 2018, 5:19 PM
vsapsai updated the diff for D48753: [libcxx] Use custom allocator's `construct` in C++03 when available..
  • Update __has_construct, __has_destroy according to review comments.
  • Tighten tests: custom allocators aren't mandated by C++03 but libc++ has the support.
Dec 11 2018, 5:11 PM

Dec 10 2018

vsapsai created D55543: [CodeGen] Fix assertion on throwing object with inlined inherited constructor and non-trivial destructor..
Dec 10 2018, 7:38 PM

Dec 7 2018

vsapsai committed rC348641: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
[Preprocessor] Don't avoid entering included files after hitting a fatal error.
Dec 7 2018, 12:33 PM
vsapsai committed rL348641: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
[Preprocessor] Don't avoid entering included files after hitting a fatal error.
Dec 7 2018, 12:33 PM
vsapsai closed D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
Dec 7 2018, 12:33 PM
vsapsai added a comment to D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..

Thanks for the review, Erik.

Dec 7 2018, 12:29 PM
vsapsai added a comment to D48342: [libcxx] Optimize vectors construction of trivial types from an iterator range with const-ness mismatch..

Thanks for the feedback. Answered one simple question, the rest needs more time.

Dec 7 2018, 11:35 AM

Dec 6 2018

vsapsai updated the diff for D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
  • Remove now unnecessary #include "llvm/ADT/DenseSet.h"
Dec 6 2018, 2:26 PM
vsapsai updated the diff for D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
  • Different approach: don't enter already processed files after reaching max include depth.
Dec 6 2018, 2:13 PM
vsapsai updated the diff for D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
  • Keep indexing after include cycle.
Dec 6 2018, 2:12 PM

Dec 4 2018

vsapsai added inline comments to D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
Dec 4 2018, 5:44 PM

Nov 29 2018

vsapsai created D55095: [Preprocessor] Don't avoid entering included files after hitting a fatal error..
Nov 29 2018, 4:59 PM

Nov 16 2018

vsapsai added a comment to D49736: [Basic] Emit warning flag suggestion only in case there's existing flag *similar* to the unknown one.

Have you considered the same approach as typo correction? I.e. for the max allowed edit distance use percentage of the input size. For example, something similar to TypoCorrectionConsumer::addName.

Nov 16 2018, 1:30 PM

Nov 15 2018

vsapsai committed rL347016: [VFS] Update unittest to fix Windows buildbot..
[VFS] Update unittest to fix Windows buildbot.
Nov 15 2018, 6:23 PM
vsapsai committed rL347012: [VFS] Implement `RedirectingFileSystem::getRealPath`..
[VFS] Implement `RedirectingFileSystem::getRealPath`.
Nov 15 2018, 5:21 PM
vsapsai committed rC347012: [VFS] Implement `RedirectingFileSystem::getRealPath`..
[VFS] Implement `RedirectingFileSystem::getRealPath`.
Nov 15 2018, 5:21 PM
vsapsai committed rL347009: [VFS] Implement `RedirectingFileSystem::getRealPath`..
[VFS] Implement `RedirectingFileSystem::getRealPath`.
Nov 15 2018, 5:18 PM
vsapsai closed D54245: [VFS] Implement `RedirectingFileSystem::getRealPath`..
Nov 15 2018, 5:18 PM

Nov 13 2018

vsapsai added a comment to D53522: [Frontend] Include module map header declaration in dependency file output.

The test case I've promised is

Nov 13 2018, 12:06 PM
vsapsai added a comment to D54245: [VFS] Implement `RedirectingFileSystem::getRealPath`..

Ping.

Nov 13 2018, 10:43 AM

Nov 9 2018

vsapsai added inline comments to D53522: [Frontend] Include module map header declaration in dependency file output.
Nov 9 2018, 7:38 PM
vsapsai added a comment to D54277: Move RedirectingFileSystem interface into header..

How do you want it to work with symlinks? Would getRealPath be sufficient for your purpose?

I'm not sure how those two are related, other than the confusing name. As far as I can tell this only wraps the realpath(3) call, which is definitely much too expensive to do in the "real" file system case. For symlinks I wouldn't really care, it's up to the user to resolve them if they matter.

Nov 9 2018, 5:57 PM

Nov 8 2018

vsapsai added a comment to D54277: Move RedirectingFileSystem interface into header..

How do you want it to work with symlinks? Would getRealPath be sufficient for your purpose?

Nov 8 2018, 3:05 PM
vsapsai added a comment to D54245: [VFS] Implement `RedirectingFileSystem::getRealPath`..

Hi Volodymyr. Does this behavior changed after your VFS fallback change?

Nov 8 2018, 12:18 PM

Nov 7 2018

vsapsai added inline comments to D53522: [Frontend] Include module map header declaration in dependency file output.
Nov 7 2018, 7:28 PM
vsapsai added inline comments to D53522: [Frontend] Include module map header declaration in dependency file output.
Nov 7 2018, 6:33 PM
vsapsai created D54245: [VFS] Implement `RedirectingFileSystem::getRealPath`..
Nov 7 2018, 5:21 PM
vsapsai added a comment to D54127: Extend virtual file system with `isLocal` method..

Depending on isLocal usage, it can be worth implementing it for RedirectingFileSystem.

Nov 7 2018, 3:43 PM

Nov 6 2018

vsapsai added a comment to D47687: [Sema] Missing -Wlogical-op-parentheses warnings in macros (PR18971).

OK. Good to know you are still working on it.

Nov 6 2018, 6:14 PM

Nov 5 2018

vsapsai added a comment to D47687: [Sema] Missing -Wlogical-op-parentheses warnings in macros (PR18971).

Sorry, you've decided to abandon the patch, it took a lot of good work. Xing, are you sure you don't want to see this change finished? I agree that delays in code review can be frustrating and I think it is something we can improve.

Nov 5 2018, 7:22 PM
vsapsai committed rL346200: [CodeGenCXX] XFAIL test for ASAN on Darwin..
[CodeGenCXX] XFAIL test for ASAN on Darwin.
Nov 5 2018, 6:19 PM
vsapsai committed rC346200: [CodeGenCXX] XFAIL test for ASAN on Darwin..
[CodeGenCXX] XFAIL test for ASAN on Darwin.
Nov 5 2018, 6:18 PM
vsapsai closed D54132: [CodeGenCXX] XFAIL test for ASAN on Darwin..
Nov 5 2018, 6:18 PM
vsapsai added inline comments to D54132: [CodeGenCXX] XFAIL test for ASAN on Darwin..
Nov 5 2018, 6:07 PM
vsapsai added a comment to D50050: [AST] CastExpr: BasePathSize is not large enough..

Disabling test in D54132.

Nov 5 2018, 5:49 PM
vsapsai created D54132: [CodeGenCXX] XFAIL test for ASAN on Darwin..
Nov 5 2018, 5:49 PM

Nov 1 2018

vsapsai committed rC345903: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..
[CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC.
Nov 1 2018, 3:52 PM
vsapsai committed rL345903: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..
[CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC.
Nov 1 2018, 3:52 PM
vsapsai closed D53674: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..
Nov 1 2018, 3:52 PM
vsapsai added a comment to D53674: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..

Thanks for the review, John. I'll update the comment with TODO and commit.

Nov 1 2018, 3:01 PM
vsapsai committed rC345897: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..
[CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC.
Nov 1 2018, 2:59 PM
vsapsai committed rL345897: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..
[CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC.
Nov 1 2018, 2:59 PM
vsapsai closed D53725: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..
Nov 1 2018, 2:59 PM

Oct 31 2018

vsapsai added a comment to D53725: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..

Can you please check https://reviews.llvm.org/D53674 ? It builds on top of this change and I plan to commit them together.

Oct 31 2018, 4:42 PM
vsapsai updated the diff for D53674: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..

Exclude commits tracked in a different review.

Oct 31 2018, 4:39 PM
vsapsai updated the diff for D53674: [CodeGen] Fix assertion on referencing constexpr Obj-C object with ARC..
  • Rename EmitConstant to emitScalarConstant.
  • Tweak comment to be explicitly about intended IR code, not about Obj-C++ code.
Oct 31 2018, 4:36 PM
vsapsai updated the diff for D53725: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..
  • Switch to camelCase.
Oct 31 2018, 4:25 PM
vsapsai accepted D53465: [VFS] Add support for "no_push" to VFS recursive iterators..

Looks good to me.

Oct 31 2018, 4:03 PM

Oct 30 2018

vsapsai added a comment to D53725: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..

This should at least be named emitScalarConstant.

Oct 30 2018, 11:50 AM
vsapsai updated the diff for D53725: [CodeGen] Move `emitConstant` from ScalarExprEmitter to CodeGenFunction. NFC..
  • Rename EmitConstant to EmitScalarConstant.
Oct 30 2018, 11:48 AM