Page MenuHomePhabricator

v.g.vassilev (Vassil Vassilev)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 21 2016, 7:16 AM (230 w, 3 d)

Recent Activity

Fri, Sep 4

v.g.vassilev committed rG2c9dbcda4f71: [modules] Correctly parse LateParsedTemplates in case of dependent modules. (authored by gargvaibhav64).
[modules] Correctly parse LateParsedTemplates in case of dependent modules.
Fri, Sep 4, 4:40 AM
v.g.vassilev closed D86514: Correctly parse LateParsedTemplates in case of multiple dependent modules.
Fri, Sep 4, 4:39 AM · Restricted Project

Jul 16 2020

v.g.vassilev removed a reviewer for D83174: Teach AttachPreviousImpl to inherit MSInheritanceAttr attribute: aaron.ballman.

Also, I would like to add that the current test present in this diff does not fail in the existing system but it was the best I and Vassil could come up with to replicate our problem.

Is there a way to run something like creduce to come up with a test case that does replicate the issue? I'd like to ensure we have a test case that fails without the patch applied so that we can be sure we don't regress the behavior.

Jul 16 2020, 11:11 AM · Restricted Project

Jun 22 2020

v.g.vassilev committed rG46ea465b5b74: Return false if the identifier is not in the global module index. (authored by v.g.vassilev).
Return false if the identifier is not in the global module index.
Jun 22 2020, 1:34 AM
v.g.vassilev closed D81077: If the identifier is unknown, return false..
Jun 22 2020, 1:34 AM · Restricted Project
v.g.vassilev accepted D82169: Don't install clang-import-test.

Makes sense to me!

Jun 22 2020, 1:01 AM · Restricted Project

Jun 4 2020

v.g.vassilev updated subscribers of D81077: If the identifier is unknown, return false..
Jun 4 2020, 4:18 AM · Restricted Project

Jun 3 2020

v.g.vassilev created D81077: If the identifier is unknown, return false..
Jun 3 2020, 3:48 AM · Restricted Project

May 2 2020

v.g.vassilev added a comment to D79290: Update suffix check and cast non-suffix types.

@hubert.reinterpretcast, this patch is part of our internal forks which we would like to put upstream. The author of the previous patch does not have bandwidth to work on it and @reikdas kindly volunteered to take over. I can close the previous one if that's preferable.

May 2 2020, 10:47 PM · Restricted Project

Apr 7 2020

v.g.vassilev added reviewers for D77598: Integral template argument suffix and cast printing: rsmith, bruno.
Apr 7 2020, 9:12 AM · Restricted Project

Nov 28 2019

v.g.vassilev added a comment to D69309: Support template instantiation in the expression evaluator.

https://reviews.llvm.org/D41416 could be relevant. I am not an expert but I think when reading the DWARF you could only register 'lazy' specializations which will be imported only when really required.

Nov 28 2019, 10:36 PM · Restricted Project

Sep 26 2019

Herald added a project to D36368: Fix type printing of array template args: Restricted Project.

ping...

Sep 26 2019, 10:05 PM · Restricted Project, Restricted Project

Jul 16 2019

v.g.vassilev added a comment to D42026: Allow the llvm bindings to be disabled.

Thanks!

Jul 16 2019, 6:23 AM · Restricted Project

Jul 4 2019

v.g.vassilev committed rG16de81c15850: [modules] Add PP callbacks for entering and leaving a submodule. (authored by v.g.vassilev).
[modules] Add PP callbacks for entering and leaving a submodule.
Jul 4 2019, 12:08 PM
v.g.vassilev closed D62293: [modules] Add PP callbacks for entering and leaving a submodule..

r365153.

Jul 4 2019, 12:08 PM · Restricted Project

Jun 27 2019

v.g.vassilev updated the diff for D62293: [modules] Add PP callbacks for entering and leaving a submodule..

Add comments, add missing callbacks. Thanks Richard!

Jun 27 2019, 12:59 PM · Restricted Project

May 23 2019

v.g.vassilev created D62293: [modules] Add PP callbacks for entering and leaving a submodule..
May 23 2019, 2:08 AM · Restricted Project

Mar 25 2019

v.g.vassilev added a comment to D16761: clang-cl: Support loading plugins on Windows.

Indeed. IIUC, here is no way clang-cl to load plugins if compiled BUILD_SHARED_LIB=0. It is not clear to me if that's a design limitation or something else. I'd love to be able to load plugins on a 'standard' clang-cl instance.

Mar 25 2019, 5:23 AM

Mar 24 2019

v.g.vassilev updated subscribers of D16761: clang-cl: Support loading plugins on Windows.

@chapuni, you have reverted this patch and the commit message says "investigating". Did you come to a conclusion? Can we reland it?

Mar 24 2019, 1:46 PM

Nov 25 2018

v.g.vassilev created D54880: Ignore gcc's stack-clash-protection flag.
Nov 25 2018, 1:03 PM · Restricted Project

Nov 20 2018

v.g.vassilev added a comment to D35559: [CMake][Modules] Tweak Modules-unfriendly builds.

Is this change still relevant?

Nov 20 2018, 2:01 AM
v.g.vassilev added a comment to D43871: [modules] No longer include stdlib.h from mm_malloc.h..

ping...

Nov 20 2018, 1:59 AM

Nov 17 2018

v.g.vassilev added a comment to D54097: Save memory in ASTReader by using DenseMap instead of vector.

Ping...

Nov 17 2018, 1:13 PM

Oct 31 2018

v.g.vassilev added a reviewer for D53925: [modules] Defer emission of inline key functions.: rjmccall.
Oct 31 2018, 3:48 AM
v.g.vassilev added a comment to D53925: [modules] Defer emission of inline key functions..

@rsmith, @bruno could you verify this patch on your codebases?

Oct 31 2018, 3:47 AM
v.g.vassilev created D53925: [modules] Defer emission of inline key functions..
Oct 31 2018, 3:47 AM

Aug 27 2018

v.g.vassilev updated the diff for D51295: Allow resetting of NumCreatedFIDsForFileID.

Add parens.

Aug 27 2018, 5:35 AM
v.g.vassilev created D51295: Allow resetting of NumCreatedFIDsForFileID.
Aug 27 2018, 4:48 AM

Jun 28 2018

v.g.vassilev added a comment to D47118: [modules] Print input files when -module-file-info file switch is passed..

It looks like the diagnostic options and few others were moved out from the control block in r297655 by Manman Ren. The header files are still part of the control block. The best I can do is buffer that information and print it out last. Is that what we want?

Jun 28 2018, 8:30 AM
v.g.vassilev retitled D48524: [ODRHash] Do not rely on Type* when computing the hash. from [ODRHash] Rip out the registration of Type* in TypeMap to [ODRHash] Do not rely on Type* when computing the hash..
Jun 28 2018, 12:51 AM

Jun 27 2018

v.g.vassilev added a comment to D48524: [ODRHash] Do not rely on Type* when computing the hash..

@rtrieu, your comment was along the lines of what I was thinking of. I have updated the patch. Without testing it on large scale, I the current change seems to work for us.

Jun 27 2018, 7:30 AM
v.g.vassilev updated the diff for D48524: [ODRHash] Do not rely on Type* when computing the hash..

Remove the TypeMap

Jun 27 2018, 7:29 AM

Jun 23 2018

v.g.vassilev created D48524: [ODRHash] Do not rely on Type* when computing the hash..
Jun 23 2018, 2:26 PM

May 22 2018

v.g.vassilev accepted D47247: Fix unaligned memory access when reading INPUT_FILE_OFFSETS data.

LGTM!

May 22 2018, 11:55 PM

May 20 2018

v.g.vassilev created D47118: [modules] Print input files when -module-file-info file switch is passed..
May 20 2018, 8:04 AM
v.g.vassilev added a comment to D42026: Allow the llvm bindings to be disabled.

r332816.

May 20 2018, 1:43 AM · Restricted Project

Apr 19 2018

v.g.vassilev added reviewers for D37475: Make MultiplexASTDeserializationListener part of the API [NFC]: v.g.vassilev, rsmith, bruno.
Apr 19 2018, 1:56 AM

Apr 11 2018

v.g.vassilev added inline comments to D43871: [modules] No longer include stdlib.h from mm_malloc.h..
Apr 11 2018, 12:35 AM

Mar 24 2018

v.g.vassilev abandoned D43696: Reduce hash collisions for reference and pointer types.

Ok, that's great! Sorry for the delay and thanks for landing a similar patch. Btw, we should probably find a more terse way to test the ODRHash, eg. with unittests.

Mar 24 2018, 2:55 PM

Mar 14 2018

v.g.vassilev added inline comments to D44435: CUDA ctor/dtor Module-Unique Symbol Name.
Mar 14 2018, 2:35 PM

Mar 10 2018

v.g.vassilev added a comment to D40731: Integrate CHash into CLang.

I am not sure if this is the right time but maybe testing and comparing the behavior of this patch against something such as the ODRHash will help you, me (and probably others) to understand the current patch better.

Mar 10 2018, 2:41 AM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Add sanity check.

Mar 10 2018, 2:31 AM

Feb 24 2018

v.g.vassilev added inline comments to D43696: Reduce hash collisions for reference and pointer types.
Feb 24 2018, 2:36 AM

Feb 23 2018

v.g.vassilev created D43696: Reduce hash collisions for reference and pointer types.
Feb 23 2018, 2:15 PM
v.g.vassilev added a comment to D42026: Allow the llvm bindings to be disabled.

Reading back the patch, we are turning on the bindings by default ;)

Feb 23 2018, 2:02 PM · Restricted Project
v.g.vassilev added a comment to D37797: Fix crash in Sema when wrongly assuming VarDecl init is not value dependent..

Could you double-check if we can add this to an existing test? Would test/SemaCXX/pr25181-crash-on-invalid.cpp fit and potentially rename it.

Feb 23 2018, 2:00 PM
v.g.vassilev updated subscribers of D32111: [modules] Attempt to fix PR31905 - #include "stddef.h" breaks module map search paths; causes redefinitions..
Feb 23 2018, 1:52 PM

Feb 21 2018

v.g.vassilev added a comment to D42026: Allow the llvm bindings to be disabled.

ping...

Feb 21 2018, 2:17 AM · Restricted Project
v.g.vassilev added a comment to D34464: lit: Make sure testnames are unicode strings.

ping2...

Feb 21 2018, 2:02 AM

Jan 13 2018

v.g.vassilev created D42026: Allow the llvm bindings to be disabled.
Jan 13 2018, 2:39 AM · Restricted Project

Jan 12 2018

v.g.vassilev accepted D42001: [Driver] Add "did you mean?" suggestions to -cc1as.

LGTM!

Jan 12 2018, 10:53 AM

Jan 10 2018

v.g.vassilev accepted D41912: [Driver] Test for correct '--version' suggestion.

LGMT! We can rely on post-commit reviews for changes like this one.

Jan 10 2018, 11:36 AM

Jan 9 2018

v.g.vassilev accepted D41867: [Frontend] Remove unused FileMgr in pp arg parse.

LGTM!

Jan 9 2018, 12:21 PM

Jan 5 2018

v.g.vassilev added a comment to D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Finer grained clang stats can be seen here.

Jan 5 2018, 2:49 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Reduce further the deserializations from 451 to 449 by providing a more complete implementation of ODRHash::AddTemplateArgument.

Jan 5 2018, 2:32 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Reduce hash collisions for template specializations.

Jan 5 2018, 2:27 PM
v.g.vassilev created D41785: Print the qualified name when dumping deserialized decls..
Jan 5 2018, 2:03 PM
v.g.vassilev added inline comments to D41733: [Driver] Suggest correctly spelled driver options.
Jan 5 2018, 4:46 AM
v.g.vassilev added a comment to D41732: [Option] Add 'findNearest' method to catch typos.

+1 Thanks for working on this. Great to see this happening!

Jan 5 2018, 4:43 AM

Jan 4 2018

v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Reverse template specialization order.

Jan 4 2018, 2:58 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Zero IsPartial and improve comments in assert and free text.

Jan 4 2018, 2:44 PM
v.g.vassilev added a comment to D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

I have created a simple (-ish) benchmark targeted to stress test modules with a good number of template specializations. I use the mp11 library from boost. I am building two modules which contain around 1K specializations (mostly full specializations). The example can be found here. I use a small fraction of them. This patch deserializes (only) 1117 specializations for around 0.2 seconds whereas without it clang deserializes 1905 specializations for 0.4 s.

Jan 4 2018, 2:42 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Loading of lazy partial template specializations should not trigger loading of full template specializations.

Jan 4 2018, 1:21 PM

Jan 3 2018

v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Address comments:

  • Fix style;
  • Do not potentially deserialize a specialization in debug mode.
Jan 3 2018, 3:18 PM

Jan 2 2018

v.g.vassilev added inline comments to D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..
Jan 2 2018, 1:55 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Teach ASTReader::CompleteRedeclChain to load only the template specializations with the same template argument list.

Jan 2 2018, 1:54 PM
v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Address inline comments: order the read operations.

Jan 2 2018, 1:46 PM

Dec 19 2017

v.g.vassilev updated the diff for D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..

Fixed a comment typo.

Dec 19 2017, 2:58 PM
v.g.vassilev created D41416: [modules] [pch] Do not deserialize all lazy template specializations when looking for one..
Dec 19 2017, 2:55 PM

Dec 14 2017

v.g.vassilev closed D40901: Refactor lazy loading of template specializations. NFC.

Thanks! Landed in r320763.

Dec 14 2017, 3:31 PM

Dec 6 2017

v.g.vassilev updated the diff for D40901: Refactor lazy loading of template specializations. NFC.

Fix preexisting comment typo.

Dec 6 2017, 8:41 AM
v.g.vassilev created D40901: Refactor lazy loading of template specializations. NFC.
Dec 6 2017, 8:17 AM

Nov 21 2017

v.g.vassilev added a comment to D29951: Load lazily the template specialization in multi-module setups..

For the record: relanded in r306903.

Nov 21 2017, 2:20 PM

Oct 31 2017

v.g.vassilev accepted D39416: [modules] Correctly overload getModule in the MultiplexExternalSemaSource.

LGTM!

Oct 31 2017, 7:37 AM

Oct 27 2017

v.g.vassilev added inline comments to D39342: [Bash-autocompletion] Pass all flags in shell command-line to Clang.
Oct 27 2017, 12:30 PM

Oct 20 2017

v.g.vassilev added a comment to D39002: [cmake] Use find_package to discover zlib.

Reverted in r316153...

Oct 20 2017, 8:29 AM

Oct 19 2017

v.g.vassilev added a comment to D39002: [cmake] Use find_package to discover zlib.

Revised patch landed in r316150.

Oct 19 2017, 1:05 AM

Oct 17 2017

v.g.vassilev added a comment to D39002: [cmake] Use find_package to discover zlib.

I assume this would fix it:

Oct 17 2017, 2:11 PM
v.g.vassilev added a comment to D39002: [cmake] Use find_package to discover zlib.

Reverted in r316029 because the bots got angry at me:

Oct 17 2017, 2:02 PM
v.g.vassilev closed D39002: [cmake] Use find_package to discover zlib.

Landed in r316025.

Oct 17 2017, 1:32 PM
v.g.vassilev added inline comments to D39002: [cmake] Use find_package to discover zlib.
Oct 17 2017, 12:15 PM
v.g.vassilev updated the diff for D39002: [cmake] Use find_package to discover zlib.

Address comments.

Oct 17 2017, 12:15 PM
v.g.vassilev updated subscribers of D39002: [cmake] Use find_package to discover zlib.
Oct 17 2017, 8:00 AM
v.g.vassilev created D39002: [cmake] Use find_package to discover zlib.
Oct 17 2017, 7:57 AM

Sep 11 2017

v.g.vassilev accepted D37416: Use the VFS from the CompilerInvocation by default.

This patch can rely on a post commit review if necessary.

Sep 11 2017, 1:56 AM

Sep 4 2017

v.g.vassilev added a comment to D37416: Use the VFS from the CompilerInvocation by default.

You should probably update the code creating the vfs before the call to createFileManager in lib/Frontend/FrontendAction.cpp.

Sep 4 2017, 12:22 PM

Aug 27 2017

v.g.vassilev updated the diff for D34984: Store token literal data in PCH. Avoids disk read on PreProc expansion..

Add a test case.

Aug 27 2017, 1:23 PM
v.g.vassilev added a comment to D22638: Module: add debug_type to dump debugging messages related to modules being out of date.

@bruno, what's the fate of this?

Aug 27 2017, 11:56 AM
v.g.vassilev accepted D33657: Allow libraries to be loaded with RTLD_LOCAL on Unix..
Aug 27 2017, 11:54 AM
v.g.vassilev added a comment to D34912: Handle cases where the value is too large to fit into the underlying type..

@rsmith ping...

Aug 27 2017, 11:49 AM
v.g.vassilev added a comment to D34912: Handle cases where the value is too large to fit into the underlying type..

ping...

Aug 27 2017, 11:48 AM
v.g.vassilev added a comment to D34912: Handle cases where the value is too large to fit into the underlying type..

Sorry, undo ping... we have a test case.

Aug 27 2017, 11:48 AM
v.g.vassilev accepted D37180: [modules] Add test for using declaration in classes..

LGTM! I'd reword the commit message, saying that we intended to add a fast path in DeclContext::removeDecl which checks if the decl is hidden to avoid addition in the lookup tables. That caused problems with modules, because the modules system extends the definition of visibility and this is a test making sure we do not reintroduce such an issue.

Aug 27 2017, 6:56 AM
v.g.vassilev added a comment to D34464: lit: Make sure testnames are unicode strings.

ping...

Aug 27 2017, 4:30 AM
v.g.vassilev accepted D36820: [Bash-autocompletion] Add support for -std=.

LGTM +ping!

Aug 27 2017, 4:29 AM
v.g.vassilev closed D34059: Get the file name for the symbol from the Module, not the SourceManager..

Landed in r311844.

Aug 27 2017, 4:29 AM
v.g.vassilev added a comment to D34444: Teach codegen to work in incremental processing mode..

A version of this landed in r311843. I am keeping in mind this discussion and I'd like to follow up with @rjmccall once I open the more major review item (libInterpreter).

Aug 27 2017, 4:00 AM
v.g.vassilev updated the diff for D34444: Teach codegen to work in incremental processing mode..

Type& name -> Type &name.

Aug 27 2017, 3:21 AM
v.g.vassilev updated the diff for D34444: Teach codegen to work in incremental processing mode..

std::string& -> llvm::StringRef.

Aug 27 2017, 3:16 AM

Aug 23 2017

v.g.vassilev updated the diff for D34984: Store token literal data in PCH. Avoids disk read on PreProc expansion..

Fix StringRef allocation.

Aug 23 2017, 1:26 AM