[cfe-dev] [analyzer] Summary IPA thoughts +code
Aleksei Sidorin via cfe-dev
cfe-dev at lists.llvm.org
Wed Mar 2 06:38:52 PST 2016
You can find a mail archive page discussing this topic here:
If you have any questions, feel free to ask.
02.03.2016 17:25, David Come пишет:
> Dear sir,
> My name is David Come and I'm a French Phd student working on formal
> methods for C++.
> Your work about IPA seems interesting but I recently subscribed to the
> mailing list so I don't know the specifics.
> Do you have a web page explaining your work, or if not, could you tell
> me more ?
> On 02/03/2016 14:42, Aleksei Sidorin via cfe-dev wrote:
>> Hello Gabor,
>> We still use a file-by-file approach so we don't build a full AST but
>> merging ASTs of analyzed callees only where possible. We build a
>> mapping showing what file contains required functions. Then, we
>> analyze a project file-by-file. During analysis, we import this
>> definition to our TU if we meet a call with a callee definition in
>> another file, and continue analysis as usually.
>> This approach seems to work. It should get much better performance
>> after implementation of summary serialization due to summary inter-TU
>> reusage. We don't build a full project AST but this is not a memory
>> bottleneck: a real bottleneck currently is function summaries.
>> Currently we're working on upstreaming our ASTImporter work. This
>> work is slow enough because it requires massive test writing
>> (ASTImporter lacks tests now). But we hope, it will become available
>> for all clang users who needs it.
>>> Do you have some updates? I checked the repository, and there are
>>> scripts indicating cross TU analysis support (and there were also some
>>> ASTImporter work). I was wondering what is the state of this? What
>>> is the
>>> approach you are using? Does that approach work, when the unified AST
>>> possibly not fit into the memory?
IMSWL-IMCG, SRR, Samsung Electronics
More information about the cfe-dev