Skip to content

IMPACTPolyhedral Extraction Tool

Sven Verdoolaege, Tobias Grosser, 2012

We present a new library for extracting a polyhedral model from C source. The library is based on clang, the LLVM C frontend, and isl, a library for manipulating quasi-affine sets and relations. The use of clang for parsing the C code brings advanced diagnostics and full support for C99. The use of isl allows for an easy construction and a powerful and compact representation of the polyhedral model. Besides allowing arbitrary piecewise quasi-affine index expressions and con-ditions, the library also supports some data dependent con-structs and has special treatment for unsigned integers. The library has been successfully used to obtain polyhedral mod-els for use in an equivalence checker, a tool for constructing polyhedral process networks, a parallelizer targeting GPUs and an interactive polyhedral environment.

Cite
@inproceedings{verdoolaege2012polyhedral,
  author = {Verdoolaege, Sven and Grosser, Tobias},
  title = {Polyhedral Extraction Tool},
  booktitle = {Second International Workshop on Polyhedral Compilation Techniques},
  series = {IMPACT},
  year = {2012}
}