[cfe-dev] Adding more analysis algorithms to Clang?
kremenek at apple.com
Mon Oct 3 20:11:16 PDT 2011
Additions to libAnalysis have largely been demand-driven. I think we are fine with general contributions to this library that meeting the following criteria:
(1) Meet the Clang coding conventions and quality expectations.
(2) Are testable ("make test"), and tests are included in clang/test.
(3) Performance is acceptable and measurable, or at least documented when algorithms are known to be expensive.
(4) APIs are well-documented, which can come in the form of good doxygen comments.
Source-to-source transformations are welcome, and the Clang codebase does contains tools that are source-to-source rewriters. For example, libRewrite provides low-level functionality for doing textual rewrites of source files using Clang SourceLocations. Other analysis algorithms are useful as well; we just prefer that they can be regression tested, and the APIs are well-documented (especially if they don't have any real clients in the codebase at present).
On Oct 3, 2011, at 2:40 PM, Guoping Long wrote:
> There are some program analysis algorithms in clang/lib/Analysis directory. I am wandering if there are more algorithms to come or not. Are there some people working on this? What kind of algorithms are welcome to be part of Clang?
> I am asking this because I want to help on this part. But I am not sure if source-to-source transformation algorithms are welcome in this community, since many optimization work is done in the LLVM backend. Currently I have implemented to CFG analysis algorithms (building the dominance tree and finding the strong connected components in CFG). I plan to implement more data flow analysis or even pointer analysis algorithms. If these algorithms are useful to people in this community, I would love to submit a patch.
> I am new to Clang and this community. Hopefully these questions are not naive to you.
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
More information about the cfe-dev