The directory contains genericapp.hpp/cpp & cli.hpp/cpp.
genericapp.hpp contains mimium::app::GenericApp class and some option structs for compiler and runtime. This can be used for creating customizable apps in C++.
cli.hpp contains mimium::app::cl::CliApp class. This class contains simple argument parser classes and GenericApp instance.
Now, main.cpp is implemented with this class in just one line like below.
Most options like --emit-ast and --emit-mir used in previous versions can be used.
New options:
--backend : specifies audio driver backend. Currently, only rtaudio can be used but other choices like file & pipe will be added in the future.
--engine : specifies execution engine. Currently, only llvm can be used ut other choices like interpreter & wasm will be added in the future.
CMake target mimium_llloader which can load llvm IR file exported from --emit-llvm option was removed (it was mainly used for debugging) because now we can load llvm IR(xxx.ll) files with the same CliApp class.
genericapp.hpp/cpp
&cli.hpp/cpp
.mimium::app::GenericApp
class and some option structs for compiler and runtime. This can be used for creating customizable apps in C++.mimium::app::cl::CliApp
class. This class contains simple argument parser classes and GenericApp instance.Now,
main.cpp
is implemented with this class in just one line like below.--emit-ast
and--emit-mir
used in previous versions can be used.--backend
: specifies audio driver backend. Currently, onlyrtaudio
can be used but other choices likefile
&pipe
will be added in the future.--engine
: specifies execution engine. Currently, onlyllvm
can be used ut other choices likeinterpreter
&wasm
will be added in the future.mimium_llloader
which can load llvm IR file exported from--emit-llvm
option was removed (it was mainly used for debugging) because now we can load llvm IR(xxx.ll) files with the sameCliApp
class.