[PATCH] D34444: Teach codegen to work in incremental processing mode.

2022-06-27 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev abandoned this revision. v.g.vassilev added a comment. Herald added a project: All. This landed slightly modified here: https://github.com/llvm/llvm-project/commit/4d54e543abd5d0a8b0a321f8c292252f4895693a CHANGES SINCE LAST ACTION https://reviews.llvm.org/D3/new/

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-08-27 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. 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). https://reviews.llvm.org/D3 ___

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-08-27 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev updated this revision to Diff 112813. v.g.vassilev added a comment. Type& name -> Type https://reviews.llvm.org/D3 Files: include/clang/CodeGen/ModuleBuilder.h lib/CodeGen/ModuleBuilder.cpp Index: lib/CodeGen/ModuleBuilder.cpp

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-08-27 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev updated this revision to Diff 112812. v.g.vassilev marked an inline comment as done. v.g.vassilev added a comment. std::string& -> llvm::StringRef. https://reviews.llvm.org/D3 Files: include/clang/CodeGen/ModuleBuilder.h lib/CodeGen/ModuleBuilder.cpp Index:

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-22 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. In https://reviews.llvm.org/D3#818047, @v.g.vassilev wrote: > >> I am open to changing this code as well. That should probably be another > >> review. > > > > I agree. Are you comfortable with blocking this review until that lands? > > It seems like it would

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-22 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. In https://reviews.llvm.org/D3#818030, @rjmccall wrote: > In https://reviews.llvm.org/D3#812836, @v.g.vassilev wrote: > > > In https://reviews.llvm.org/D3#812418, @rjmccall wrote: > > > > > In https://reviews.llvm.org/D3#795175, @v.g.vassilev wrote:

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-21 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. In https://reviews.llvm.org/D3#812836, @v.g.vassilev wrote: > In https://reviews.llvm.org/D3#812418, @rjmccall wrote: > > > In https://reviews.llvm.org/D3#795175, @v.g.vassilev wrote: > > > > > @rjmccall, thanks for the prompt and thorough reply. > > > > > >

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-18 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. In https://reviews.llvm.org/D3#812418, @rjmccall wrote: > In https://reviews.llvm.org/D3#795175, @v.g.vassilev wrote: > > > @rjmccall, thanks for the prompt and thorough reply. > > > > In https://reviews.llvm.org/D3#793311, @rjmccall wrote: > > > > >

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-17 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. In https://reviews.llvm.org/D3#795175, @v.g.vassilev wrote: > @rjmccall, thanks for the prompt and thorough reply. > > In https://reviews.llvm.org/D3#793311, @rjmccall wrote: > > > Okay. In that case, I see two problems, one major and one potentially > >

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-07-05 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. ping... Repository: rL LLVM https://reviews.llvm.org/D3 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-29 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a subscriber: karies. v.g.vassilev added a comment. @rjmccall, thanks for the prompt and thorough reply. In https://reviews.llvm.org/D3#793311, @rjmccall wrote: > Okay. In that case, I see two problems, one major and one potentially major. This is a very accurate

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-27 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. Okay. In that case, I see two problems, one major and one potentially major. The major problem is that, as Richard alludes to, you need to make sure you emit any on-demand definitions that Sema registered with CodeGen during the initial CGM's lifetime but used in

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-27 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev added a comment. We use them as separate translation units due to the fact that we need to survive multiple calls to `HandleEndOfTranslationUnit`. This 'finalizes' the module, and we cannot write to it anymore. Even though we could write to it (this was the case when we were using

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-27 Thread John McCall via Phabricator via cfe-commits
rjmccall added a comment. What's the relationship between these llvm::Modules that you want to generate? Are you imagining them as separate translation units, or are the subsequent modules more like addenda to the original? Repository: rL LLVM https://reviews.llvm.org/D3

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-26 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. This makes sense to me, but I'd like John's input on whether this is a reasonable facility for CodeGen to have, and whether this is sufficient for (for example) inline function definitions to be emitted at the right times into the right `Module`s. (The tests for this

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-22 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev updated this revision to Diff 103565. v.g.vassilev added a comment. Bring back the initial state of this patch. I accidentally uploaded a wrong patch here, instead of its dependee... https://reviews.llvm.org/D3 Files: include/clang/CodeGen/ModuleBuilder.h

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-22 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev updated this revision to Diff 103560. v.g.vassilev added a comment. Herald added a subscriber: mgorny. Add a test. Patch by Axel Naumann! https://reviews.llvm.org/D3 Files: lib/CodeGen/CGDeclCXX.cpp unittests/CodeGen/CMakeLists.txt

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-21 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev updated this revision to Diff 103360. v.g.vassilev added a comment. Fix compilation issue. https://reviews.llvm.org/D3 Files: include/clang/CodeGen/ModuleBuilder.h lib/CodeGen/ModuleBuilder.cpp Index: lib/CodeGen/ModuleBuilder.cpp

[PATCH] D34444: Teach codegen to work in incremental processing mode.

2017-06-21 Thread Vassil Vassilev via Phabricator via cfe-commits
v.g.vassilev created this revision. When `isIncrementalProcessingEnabled` is on we might call multiple times `HandleEndOfTranslationUnit`. This would complete the `llvm::Module` CodeGen is writing to. This patch allows the clients to start a new `llvm::Module`, allowing CodeGen to continue