This repository contains plugins for custom ArchImpl support in ETISS.
RV32IMACFDK
: TODO: Description
- Clone ETISS repository
- Copy (or symlink) the plugin directory (i.e.
RV32IMACFDK
) into thePluginImpl
directory of the ETISS source tree. - Build ETISS as usual (following the instructions in the README)
- Clone, build and install ETISS according to the README.
- Enter one plugin directory, i.e.
cd
- Build plugin with CMake, passing it
ETISS_DIR
to find the relevant CMake configuration
cmake -B ./build -S . -DETISS_DIR=/path/to/etiss/install/etiss/lib/CMake/ETISS
cmake --build build -j$(nproc)
- Create a directory:
mkdir ./temp/
- Create INI file with following contents:
# Filename: custom.ini
[StringConfigurations]
etiss_wd=/path/to/temp
- Create
PluginImpl
subdirectory:mkdir ./temp/PluginImpl
- Copy
./build/libRV32IMACFDK.so
(or other plugin) into this subdir:cp ./build/libRV32IMACFDK.so ./temp/PluginImpl
- Run EISS via
run_helper.sh
script (or callingbare_etiss_processor
directly)
/path/to/etiss/install/etiss/bin/run_helper.sh /path/to/program --arch.cpu=RV32IMACFDK -icustom.ini
Hint: Steps 1.-3. can be skipped if executing ETISS in the same path where the PluginImpl
directory is located. This yields to this more simple procedure:
mkdir ./PluginImpl
cp ./build/libRV32IMACFDK.so ./PluginImpl
/path/to/etiss/install/etiss/bin/run_helper.sh /path/to/program --arch.cpu=RV32IMACFDK
- Edit the
list.txt
file located in/path/to/etiss/install/etiss/lib/plugins/
echo "RV32IMACFDK,$(pwd)/build/,RV32IMACFDK" >> /path/to/etiss/install/etiss/lib/plugins/list.txt
- Run ETISS:
/path/to/etiss/install/etiss/bin/run_helper.sh /path/to/program --arch.cpu=RV32IMACFDK
Warning: These changes will be overwritten, when ETISS is being rebuilt!