* adding scalaFix to the projecting, using two make targets, `scala-lint` and `scala-lint-check`
* adding documentation
Co-authored-by: David Biancolin <david.biancolin@sifive.com>
This PR adds a new make target, `clang-tidy` to run clang-tidy on all C++ sources.
Only a dummy check is enabled, as this patch applies the minimal number of fixes
to compile headers and sources with clang without the header. In a subsequent PR,
more checks will be enabled and the files will be formatted.
`clang-tidy` can be executed using `make -C sim clang-tidy`. It will automatically
apply fixes to known issues.
* firesim infrasetup now puts the contents into a tarball before deploy
* the supported formats are .tar .tar.gz and the other formats that GNU tar can autodetect
* updated documentation
* `driver_tar` key added to `config_hwdb.yaml` which allows the tarball to be built elsewhere but still deployed in the same manner
This PR will be followed up by another to package the library into static archives.
* Core utilities and interfaces are now in `core/`
* Base widgets and bridges reside in `bridges/`
* All shared emulator files were moved to `emul`
* Moved systematic_scheduler to core
* Removed the headers of simulation top-level files (containing `main`) as they are not open for extension/re-use
Added a UART test in a new group of tests, 'bridges'.
This test group includes the bridges from firesim-lib, which rely on more external dependencies.
The previous `midasexamples` test suite is limited to simple tests with no dependencies.
In order to set up bridges, introduced a single "constructor.h" header file to instantiate everything in a design.
This de-duplicates logic across multiple tests and the FireSim driver.
Removed the header-based testing logic and introduced `.cc` files for each test instead.
use fsspec to enable xclbin's to be one of any URI protocol
supported by the library or an installed add-on
Co-authored-by: Tim Snyder <snyder.tim@gmail.com>
Co-authored-by: Filip Stamenkovic <92741622+filipstamenkovic-sifive@users.noreply.github.com>
Co-authored-by: Abraham Gonzalez <abe.j.gonza@gmail.com>
* Enabled clang-format on C++ sources
Ran clang-format on sources committed to the repository and added a CI job to ensure sources are properly formatted on each commit.
Clang-format can be installed using Linux package managers and the `git clang-format` command can be used to format all files that change with a commit.
* Update docs/Developer-Docs/GoldenGate-and-Driver-Development.rst
Co-authored-by: Tim Snyder <timothy.snyder@sifive.com>
* Update scripts/machine-launch-script.sh
Co-authored-by: Tim Snyder <timothy.snyder@sifive.com>
Co-authored-by: David Biancolin <david.biancolin@sifive.com>
Co-authored-by: Tim Snyder <timothy.snyder@sifive.com>
Now that printf statements are named, and thus annotatable
remove a long-standing hack that has the PrintfAnnotation label
the parameters to the statement instead of the statement itself
Implementation that used warn(DeprecationWarning) wasn't printing to output or being logged
implement it with more straightforward logging messages and by changing taskname to buildbitstream
conda is linux distro agnostic (provided that you are using glibc
newer than what the packages are built with, currently centos6-7)
conda also enables non-root users to install prereqs using
./scripts/machine-launch-script.sh --prefix $HOME/conda
conda also encapsulates dependencies and enables you to test
new versions of things with:
* edit dependencies in script
* ./scripts/machine-launch-script.sh --env trythis
* conda activate trythis
Co-authored-by: David Biancolin <biancolin@berkeley.edu>
Co-authored-by: Abraham Gonzalez <abe.j.gonza@gmail.com>
* Check for tagged release in build-setup
* Bump CI to work with tag validate
* Autogen tag for docs | Misc. updates
* Forgot a n
* [ci skip] update comments
* Small update to comment [ci skip]