Clang based PGAS checker
This is currently experimental
Although this is checker is meant for static analysis of an OpenShmem source, the ultimate goal of the project is to extend it to any library following one-sided(Fire and Forget) communication semantics.
Extending for libraries following One Sided Communication
Most routines would be categorized into one the above categories. The developer would add an entry to the map with the routine name as the
key of the map and the value being a pair of
The library developers need to implement their handler for
The checker identifies if a variable is a symmetric variable.
clang/lib/StaticAnalyzer/Checkers
directory.CMakeLists.txt
file.include/clang/StaticAnalyzer/Checkers/Checkers.td
```
HelpText<"Checks correctness of a OpenShmem program">,
DescFile<"OpenShmemChecker.cpp">;
make clang -j CORES_NUM
cd tests
clang -Xanalyzer -analyzer-checker=core.OpenSHMEMChecker --analyze PROGRAM_TO_TEST open_shmem.c