Skip to content
Snippets Groups Projects
  • Sam Yates's avatar
    Tidy `modcc` driver, remove optimize flag. (#404) · 998ee724
    Sam Yates authored
    * Remove optimization option (use SIMD options for vectorization).
    * Remove arbor utility library dependencies from modcc (pending separation of utility lib from arbor lib source).
    * Split target (cpu, gpu) specification from vectorization architecture (avx2, avx512).
    * Remove `Options` singleton; replace with structure local to `modcc.cpp`.
    * Tidy `modcc` option parsing and main function; allow a single invocation of `modcc` to generate code for multiple backends.
    * Rename generated sources to include backend target in filename.
    * Always run a constant simplification pass on generated procedures.
    * Remove file i/o code from `Module` and `modcc` main function; move functionality to new functions in `io` namespace. (Note: in on-going mechanism revamp, other i/o utility code will reside in the `io` namespace and subdirectory.)
    * Remove classes `ConstantFolderVisitor` and `ExpressionClassifierVisitor` that are no longer used.
    * Modify CMakeLists.txt files, `backends/*/fvm.cpp` to reflect the new filenames of generated sources.
    * Small formatting changes in `modcc` source to reflect coding guidelines (incomplete).
    998ee724