[cfe-dev] What is the status of clang-based service architecture?

Douglas Gregor dgregor at apple.com
Mon Dec 10 11:04:03 PST 2012


On Dec 10, 2012, at 9:34 AM, Kosztka Imre Dávid <kosztkaid at gmail.com> wrote:

> Is this all information we have now https://github.com/chandlerc/llvm-designs/blob/master/ClangService.rst?
> Or are there other places where we can find more info?

Unfortunately, that's basically it for now. 

> 
> I'm just trying to figure out where can I help.
>  
> 
> 
> 2012/12/8 Douglas Gregor <dgregor at apple.com>
>> 
>> On Dec 7, 2012, at 2:07 PM, Sean Silva <silvas at purdue.edu> wrote:
>> 
>> >> Right. We need a virtual file system that can be shared among the various
>> >> Clang instances executing within the service. All of Clang's filesystem
>> >> operations should go through that virtual file system, which (obviously)
>> >> needs to provide thread-safe access.
>> >
>> > Out of curiosity, is it feasible for clangd to just shepherd separate
>> > processes for each instance that needs a different view of the
>> > filesystem? Implementing a whole VFS just to run independent instances
>> > inside the same process doesn't seem to make sense. I mean, the
>> > separate instances aren't communicating, right?
>> 
>> 
>> It's feasible, but it's necessarily useful. We want all of the compilation/syntax checking/etc. jobs to go into the same clangd server process so that we can start sharing resources, e.g., the underlying buffers for header files that are read by many different translation units. And we want to know when those buffers no longer reflect what's in disk or in the user's IDE, which may invalidate certain results that are cached in the service.
>> 
>> clangd isn't about compiling a bunch of different translation units to object code through a server rather than separate processes, it's about having a stateful server that can answer questions like "what code completions are valid at foo.cpp:55:4?" efficiently from relatively dumb clients.
>> 
>>         - Doug
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> 
> 
> 
> -- 
> Name : Kosztka Imre Dávid
> E-mail: kosztkaid at gmail.com
> Phone number: +36309213462
> Mailing address: H-3700, Hungary Kazincbarcika Szeder utca 2.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20121210/223e69b1/attachment.html>


More information about the cfe-dev mailing list