Dear everyone,
First of all, I would like to thank all Chairs, organizers, speakers and the community for making LLVM DEVELOPERS’ MEETING such an amazing event.
I’m a beginner to clang libtooling so basically i’m building a tool using RecursiveAstVistor and i have a couple questions (please correct me if i’m not on the right way or not using the right library) to detect some bugs reaching a program point (given as entry for the analysis) and include some reasoning about the potential exploit using an smt solver such z3 :
- Is there a way to track the possible values that a variable can take on each program’s point execution ? (open source)
I got an answer during the “Round Table - Clang Static Analyzer” about the new google’s dataflow framework as well as some details in the mailing list but the framework is not yet accessible.
- is there a way to get possible substitutions of a variable at a specific program point as shown in the following example :
void foo(){
v1=expr1;
if(cond1){
v1=expr2;
}
bar(v1); // v1 == expr1 || expr2
}
- Does Clang Static Analyzer consider any specific target (X86, arm, …etc) during the analysis :
-
only the machine’s target in which the analysis is performed?
-
no specific target is considered?
-
the target can be customized?
- Is there any document/ressource that helps newcomers/beginners to map the right tool/lib or possible alternatives for any specific need whether for (optimizations, bug detection, etc).
Best regards.
Salim .Y Kissi