[PATCH] D96033: [clang-repl] Land initial infrastructure for incremental parsing
Vassil Vassilev via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 16 13:10:11 PDT 2021
v.g.vassilev added a comment.
In D96033#2695748 <https://reviews.llvm.org/D96033#2695748>, @rjmccall wrote:
> In D96033#2695622 <https://reviews.llvm.org/D96033#2695622>, @v.g.vassilev wrote:
>
>> Would it make sense to have each `Decl` point to its owning PTU, similarly to what we do for the owning module (`Decl::getOwningModule`)?
>
> I think that's the interface we want, but actually storing the PTU in every `Decl` that way is probably prohibitive in memory overhead; we need some more compact way to recover it. But maybe it's okay to do something like that if we can spare a bit in `Decl`. Richard, thoughts here?
Ha, each `Decl` has a `getTranslationUnitDecl()` which may be rewired to point to the PTU...
>> In terms of future steps, do you prefer to try implementing what you suggested as part of this patch? I would prefer to land this patch and then add what we discussed here rather than keep piling to this already bulky patch.
>
> It depends on how much you think your patch is working towards that architecture. Since this is just infrastructure without much in the way of Sema/IRGen changes, it's probably fine. I haven't reviewed it yet, though, sorry.
If you could skim through the patch it'd be great! I think the only bit that remotely touches on the new architecture is the `Transaction` class -- it is a pair of vector of decls and an llvm::Module. I think the vector of Decls would become a PTU in future.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D96033/new/
https://reviews.llvm.org/D96033
More information about the cfe-commits
mailing list