Tidy `modcc` driver, remove optimize flag. (#404)
* 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).
Showing
- CMakeLists.txt 2 additions, 4 deletionsCMakeLists.txt
- mechanisms/CMakeLists.txt 14 additions, 14 deletionsmechanisms/CMakeLists.txt
- modcc/CMakeLists.txt 0 additions, 2 deletionsmodcc/CMakeLists.txt
- modcc/backends/avx2.hpp 4 additions, 5 deletionsmodcc/backends/avx2.hpp
- modcc/backends/avx512.hpp 2 additions, 4 deletionsmodcc/backends/avx512.hpp
- modcc/backends/base.hpp 9 additions, 6 deletionsmodcc/backends/base.hpp
- modcc/constantfolder.cpp 0 additions, 176 deletionsmodcc/constantfolder.cpp
- modcc/constantfolder.hpp 0 additions, 26 deletionsmodcc/constantfolder.hpp
- modcc/cprinter.cpp 8 additions, 167 deletionsmodcc/cprinter.cpp
- modcc/cprinter.hpp 3 additions, 6 deletionsmodcc/cprinter.hpp
- modcc/cudaprinter.cpp 6 additions, 10 deletionsmodcc/cudaprinter.cpp
- modcc/expressionclassifier.cpp 0 additions, 323 deletionsmodcc/expressionclassifier.cpp
- modcc/expressionclassifier.hpp 0 additions, 121 deletionsmodcc/expressionclassifier.hpp
- modcc/io/bulkio.hpp 49 additions, 0 deletionsmodcc/io/bulkio.hpp
- modcc/modcc.cpp 194 additions, 160 deletionsmodcc/modcc.cpp
- modcc/modccutil.hpp 7 additions, 0 deletionsmodcc/modccutil.hpp
- modcc/module.cpp 8 additions, 116 deletionsmodcc/module.cpp
- modcc/module.hpp 37 additions, 20 deletionsmodcc/module.hpp
- modcc/options.hpp 0 additions, 56 deletionsmodcc/options.hpp
- modcc/parser.cpp 2 additions, 3 deletionsmodcc/parser.cpp
Please register or sign in to comment