Welcome to the SafeLLVM project! We appreciate your interest in contributing to SafeLLVM, a wrapper around llvm-sys designed to serve as the backend for the Simple Instructional C99 Compiler (SICC).
Before contributing, please make sure to familiarize yourself with the project structure and the goals of both SafeLLVM and SICC. This understanding will help you make meaningful contributions that align with the project's objectives.
-
Install the prerequisites found in README.md
-
Fork and clone the repository: Start by cloning the SafeLLVM repository to your local machine.
git clone git@github.com:UnionCompilerDesign/safe_llvm.git -
Build and test the project:
cd safe_llvm cargo build --all cargo test --all
If you find a bug, please report it by opening a new issue on GitHub. Include as much detail as possible and please use the template found in safe_llvm/.github/ISSUE_TEMPLATE.
We welcome suggestions for improvements! If you have an idea to enhance SafeLLVM, please create an issue to discuss so we can discuss it.
We actively welcome your pull requests:
- Fork the repo and create your branch from
main. - If you've added code that should be tested, add tests.
- Ensure your code lints (use
cargo clippy). - Issue the pull request!
- Follow the Rust style guide.
- Write clean, readable code and include comments where necessary.
- Ensure that all tests pass before you make a pull request.
Contributors who make significant improvements will be recognized as "Contributors" in the project README.
Thank you for your interest in contributing to SafeLLVM! We look forward to your contributions and are excited to see how the project grows and evolves with your help.