Hello, David! 
 
It's so excited to receive a reply from you directedly. My name is Beenle, an 
undergraduate student in Beijing, China. 
 
I've read the analyzer internal documentation, but I'm not sure I understood 
well. The following are my thoughts about the analyzer and I’m not sure they 
are right or feasible. Would it be possible for you to give me some advice? 
 
For the detecting part, the core is the state machine. But it's working on the 
gimple-SSA representation, it’s more complex. According to the graphs and the 
state machine, we detect the problem. I wonder that since I know little about 
gimple and ssa, should I read the 12 gimple internal and 13 analysis and 
optimization of gimple tuples internal firstly so that I can understand the 
approach of the analyzer well and maybe produce some new ideas?  And the reason 
why we build the supergraph is that the gimple-SSA representation gives us the 
callgraph and CFGs of the program.
And there is a problem derived from the graph--since we have to represent the 
graph to the user (is there any other reason?), we have to simplify the graph. 
So how to prune and merge is an important part.
The last is how to represent the problem to the users. How to find a simplest 
and feasible way is important too.
For the GSoC, I would like to extend the analyzer for C++ and optimize the 
pruning and merging algorithm. I’m also interested in optimizing the region 
model, but not sure if time permitted. This is just my first thought, and I’m 
eager for your suggestion, such as on the time limitation and the urgent need 
for the project.
 
It's still a bit difficult for me to read the codes after reading the internal 
documentation. Is there any way that I can understand easier? 
 
And when I try to test the analyzer, I got a 404 when I try to open  
https://gcc.gnu.org/git/gcc even without the firewall. How can I solve this 
problem?

Thank you very much for your patience! I’m looking forward to your reply.

Best wishes!



Beenle Yi
 
From: David Malcolm
Date: 2020-02-28 10:01
To: y...@bupt.edu.cn; gcc
Subject: Re: GSoC: some questions about the static analyzer pass
On Fri, 2020-02-28 at 09:31 +0800, y...@bupt.edu.cn wrote:
> Hello everybody! I've learned about the projects in Google summer of
> code, and I'm so interested in the static analyzer pass. I wonder
> that where I can read the code of the static analyzer pass and how to
> contact with the mental David Malcolm. Can anyone help me please?
> Thank you so much.
 
Hi!
 
The code is in the gcc/analyzer subdirectory of the GCC source tree:
  https://gcc.gnu.org/git/?p=gcc.git;a=tree;f=gcc/analyzer
 
Internal documentation is here:
  https://gcc.gnu.org/onlinedocs/gccint/Static-Analyzer.html
 
Some other notes can be seen at:
  https://gcc.gnu.org/wiki/DavidMalcolm/StaticAnalyzer
 
 
Hope this is helpful
David
 
 
 

Reply via email to