https://github.com/tum-ei-eda/etiss-arch-plugins
Out-ouf-tree ArchImpl plugins for ETISS
https://github.com/tum-ei-eda/etiss-arch-plugins
Last synced: about 2 months ago
JSON representation
Out-ouf-tree ArchImpl plugins for ETISS
- Host: GitHub
- URL: https://github.com/tum-ei-eda/etiss-arch-plugins
- Owner: tum-ei-eda
- Created: 2025-03-20T23:51:10.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-09-01T14:30:57.000Z (2 months ago)
- Last Synced: 2025-09-01T15:23:45.456Z (2 months ago)
- Language: C++
- Size: 1.31 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ETISS ArchImpl Plugins
This repository contains plugins for custom ArchImpl support in [ETISS](https://github.com/tum-ei-eda/etiss).
## Contents
- `RV32IMACFDK`: TODO: Description
## Building Instructions
### Integrated ETISS Build
1. Clone ETISS repository
2. Copy (or symlink) the plugin directory (i.e. `RV32IMACFDK`) into the `PluginImpl` directory of the ETISS source tree.
3. Build ETISS as usual (following the instructions in the README)
### Out-of-Tree Build
1. Clone, build and install ETISS according to the README.
2. Enter one plugin directory, i.e. `cd RV32IMACFDK`
3. Build plugin with CMake, passing it `ETISS_DIR` to find the relevant CMake configuration
```sh
cmake -S . -B build -DETISS_DIR=/path/to/etiss/install/lib/CMake/ETISS -DCMAKE_INSTALL_PREFIX=$(pwd)/build/install
cmake --build build -j$(nproc)
cmake --install build
```
## Running Instructions
### Integrated ETISS Build
### Out-of-Tree Build
#### Option A (`etiss_wd`)
1. Create a directory: `mkdir ./temp/`
2. Create INI file with following contents:
```ini
# Filename: custom.ini
[StringConfigurations]
etiss_wd=/path/to/temp/
```
3. Create `PluginImpl` subdirectory: `mkdir ./temp/PluginImpl`
4. Copy installed files into this subdir: `cp -r ./build/install/* ./temp/PluginImpl`
5. Run ETISS via `run_helper.sh` script (or calling `bare_etiss_processor` directly)
```sh
/path/to/etiss/install/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:
```sh
mkdir ./PluginImpl
cp -r ./build/install/* PluginImpl/
/path/to/etiss/install/bin/run_helper.sh /path/to/program --arch.cpu=RV32IMACFDK --jit.external_header_paths="$(pwd)/PluginImpl/;"
```
#### Option B (`list.txt`)
1. Append a line to the `list.txt` file located in `/path/to/etiss/install/lib/plugins/`
```sh
cat $(pwd)/build/install/lib/plugins/list.txt >> /path/to/etiss/install/lib/plugins/list.txt
```
2. Run ETISS: `/path/to/etiss/install/bin/run_helper.sh /path/to/program --arch.cpu=RV32IMACFDK`
**Warning**: These changes will be overwritten, when ETISS is being rebuilt!