[cfe-dev] distributed clang patch
kremenek at apple.com
Thu Jul 10 10:18:11 PDT 2008
On Jul 10, 2008, at 9:53 AM, Chris Lattner wrote:
>> There is one more requirement if we follow this. Most of
>> ASTConsumers have one output stream or file, but there is
>> StaticAnalysis what is make a couple of HTML files and because
>> distcc static analysis is a big speedup, we must support this
>> astconsumer, so we have to capture its output somehow.
> I would worry about this one later. I think it would be good to focus
> on distributing the other ASTConsumers before the static analysis one.
I think the solution for the AnalysisConsumer is two steps:
1) Factor out the creation of the HTMLDiagnostics object used for HTML
rendering out of AnalysisConsumer. Instead, the ctor for
AnalysisConsumer takes a PathDiagnosticClient* (which in the regular
driver is an HTMLDiagnostics object). I planned on doing this anyway.
2) In the distcc client, instead of creating an HTMLDiagnostics
object, create a different PathDiagnosticClient object that just
batches the diagnostics (this doesn't exist yet, but is easy to
implement). The distcc client can then send the diagnostics back to
the original client, and not have to worry about HTML rendering.
There will also probably be some ugly details, but ultimately the
distcc client shouldn't care how the final analysis results are
consumed by the end-user.
More information about the cfe-dev