From edc676cfe8988c62c81b0df224c7fe82583012b1 Mon Sep 17 00:00:00 2001 From: Philip Herron Date: Tue, 23 Aug 2022 16:45:19 +0100 Subject: [PATCH] gccrs: Add README, CONTRIBUTING and compiler logo We still need to write out a documentation section, but these READMEs will help in the meantime. gcc/rust/ * CONTRIBUTING.md: New. * README.md: New. * logo.png: New. --- gcc/rust/CONTRIBUTING.md | 130 +++++++++++++++++++ gcc/rust/README.md | 264 +++++++++++++++++++++++++++++++++++++++ gcc/rust/logo.png | Bin 0 -> 70864 bytes 3 files changed, 394 insertions(+) create mode 100644 gcc/rust/CONTRIBUTING.md create mode 100644 gcc/rust/README.md create mode 100644 gcc/rust/logo.png diff --git a/gcc/rust/CONTRIBUTING.md b/gcc/rust/CONTRIBUTING.md new file mode 100644 index 000000000000..75812a657a30 --- /dev/null +++ b/gcc/rust/CONTRIBUTING.md @@ -0,0 +1,130 @@ +## How to contribute to GCC Rust + +#### **Did you find a bug?** + +* **Ensure the bug was not already reported** by searching on GitHub under [Issues](https://github.com/Rust-GCC/gccrs/issues). + +* If you're unable to find an open issue addressing the problem, [open a new one](https://github.com/Rust-GCC/gccrs/issues/new). + Be sure to include a **title and clear description**, as much relevant information as possible, and a **code sample** + or an **executable test case** demonstrating the expected behavior that is not occurring. + +#### **Do you want to submit a patch?** + +* Open a new GitHub pull request with the patch. + +* Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable. + +* Before submitting, GCC development requires copyright assignment or the Developer's Certificate of Origin sign-off. + Please see the [Contributing to GCC](https://gcc.gnu.org/contribute.html) guide or [Developer's Certificate of Origin (DCO) Sign-off](https://gcc.gnu.org/dco.html) guide. + +* Patches sent to the [`gcc-rust` mailing list](https://gcc.gnu.org/mailman/listinfo/gcc-rust) are likewise welcome. +These will be imported into a GitHub PR to follow the normal review process, +and the link to the GitHub PR sent to the submitter. + +#### **Do you intend to add a new feature or change an existing one?** + +* Suggest your change in the [Zulip](https://gcc-rust.zulipchat.com/) and start writing code. + +* Do not open an issue on GitHub until you have collected positive feedback about the change. + GitHub issues are primarily intended for bug reports and fixes. + +#### **Do you have questions about the source code?** + +* Ask any question about how to use GCCRS in [Zulip](https://gcc-rust.zulipchat.com/). + +### **PR Policy** + +* The PR policy: Everything has to go through a PR + - An exception to this rule will be the merge commits of updating the repo against upstream GCC + +* Reviewers/Maintainers of the project (aka people who have bors rights) should be pinged for reviews/questions. + +* A PR can have one or several commits (split should have a technical/logical reason, ie. no fixup-ish commit) + +* Avoid PR's with merge commit unless there's a good reason + +* Where possible please add test cases to `gcc/testsuite/rust/` for all PRs. + Some issues may not be testable via dejagnu/automation such as debug dump changes. + +* Follow the [GCC coding style](https://gcc.gnu.org/codingconventions.html) (see `clang-format` below). + +* PRs won't be merged until the build and tests pass. + +* Please take the time to create good git commit messages. + See the existing format of them in the git log or refer to something like: https://chris.beams.io/posts/git-commit/ + +#### Running `clang-format` locally + +* on all files using python scripts +... corresponding to what the _Clang Format Lint_ (`.github/workflows/clang-format.yml`) +is doing, with `clang-format-10` being available locally, and avoiding the Docker overhead. + +```shell +$ wget 'https://github.com/DoozyX/clang-format-lint-action/raw/v0.11/run-clang-format.py' +$ cp contrib/clang-format .clang-format +$ python3 run-clang-format.py --clang-format-executable clang-format-10 --recursive --extensions h,cc gcc/rust/ +``` + +* on a given patch using python scripts +See the [clang-format documentation](https://clang.llvm.org/docs/ClangFormat.html#script-for-patch-reformatting) : + + $ git diff -U0 --no-color HEAD^ | clang-format-diff.py -i -p1 + +* using `git` interface + +At least on Debian and its derivative, each `clang-format` packages also comes +with `git-clang-format` command that can be used easily. It applies on staged +changes, and any modification can be seen as unstaged changes: + +```diff +$ git diff --cached +diff --git a/gcc/rust/rust-abi.h b/gcc/rust/rust-abi.h +index bd3043295ce..9559374ce60 100644 +--- a/gcc/rust/rust-abi.h ++++ b/gcc/rust/rust-abi.h +@@ -22,10 +22,10 @@ namespace Rust { + enum ABI + { + UNKNOWN, +- RUST, ++ RUST, + INTRINSIC, + C, +- CDECL, ++ CDECL, + STDCALL, + FASTCALL, + }; + +gccrs/gcc/rust on  dkm/clang_format [$!+?] +❯ git clang-format +changed files: + gcc/rust/rust-abi.h + +gccrs/gcc/rust on  dkm/clang_format [$!+?] +$ git diff rust-abi.h +diff --git a/gcc/rust/rust-abi.h b/gcc/rust/rust-abi.h +index 9559374ce60..bd3043295ce 100644 +--- a/gcc/rust/rust-abi.h ++++ b/gcc/rust/rust-abi.h +@@ -22,10 +22,10 @@ namespace Rust { + enum ABI + { + UNKNOWN, +- RUST, ++ RUST, + INTRINSIC, + C, +- CDECL, ++ CDECL, + STDCALL, + FASTCALL, + }; +``` + +Also note that you can use a given version of `clang-format` by using `git clang-format-10` if you have +installed that particular version. + +Thanks! :heart: :heart: :heart: + +GCCRS Team diff --git a/gcc/rust/README.md b/gcc/rust/README.md new file mode 100644 index 000000000000..1f76bba9f5f0 --- /dev/null +++ b/gcc/rust/README.md @@ -0,0 +1,264 @@ +![C/C++ CI](https://github.com/Rust-GCC/gccrs/workflows/C/C++%20CI/badge.svg) +[![GCC Bootstrap Build](https://github.com/Rust-GCC/gccrs/actions/workflows/bootstrap.yml/badge.svg)](https://github.com/Rust-GCC/gccrs/actions/workflows/bootstrap.yml) +[![Build Docker image](https://github.com/Rust-GCC/gccrs/actions/workflows/docker.yml/badge.svg)](https://github.com/Rust-GCC/gccrs/actions/workflows/docker.yml) +![Docker Pulls](https://img.shields.io/docker/pulls/philberty/gccrs) +[![project chat](https://img.shields.io/badge/zulip-join_chat-brightgreen.svg)](https://gcc-rust.zulipchat.com/) +[![Bors enabled](https://bors.tech/images/badge_small.svg)](https://app.bors.tech/repositories/32890) +# GCC Rust +![GCC Rust](logo.png?raw=true "GCC rust Logo") + +Please note, the compiler is in a very early stage and not usable yet for compiling real Rust programs. + +gccrs is a full alternative implementation of the Rust language ontop of GCC with the goal +to become fully upstream with the GNU toolchain. + +The origin of this project was a community effort several years ago where Rust was still at version 0.9; +the language was subject to so much change that it became difficult for a community effort to play catch up. +Now that the language is stable, it is an excellent time to create alternative compilers. The developers of +the project are keen “Rustaceans” with a desire to give back to the Rust community and to learn what GCC is capable +of when it comes to a modern language. + +## Build Farm Status + +- [Debian i386](https://builder.sourceware.org/buildbot/#/builders/gccrust-debian-i386) [![Debian i386](https://builder.sourceware.org/buildbot/badges/gccrust-debian-i386.svg)](https://builder.sourceware.org/buildbot/#/builders/gccrust-debian-i386) +- [Debian ppc64](https://builder.sourceware.org/buildbot/#/builders/gccrust-debian-ppc64) [![Debian ppc64](https://builder.sourceware.org/buildbot/badges/gccrust-debian-ppc64.svg)](https://builder.sourceware.org/buildbot/#/builders/gccrust-debian-ppc64) +- [Debian testing-x86_64](https://builder.sourceware.org/buildbot/#/builders/146) [![Debian testing-x86_64](https://builder.sourceware.org/buildbot/badges/gccrust-debian-testing-x86_64.svg)](https://builder.sourceware.org/buildbot/#/builders/146) +- [Fedora arm64](https://builder.sourceware.org/buildbot/#/builders/179) [![Fedora arm64](https://builder.sourceware.org/buildbot/badges/gccrust-fedora-arm64.svg)](https://builder.sourceware.org/buildbot/#/builders/179) +- [Fedora ppc64le](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-ppc64le) [![Fedora ppc64le](https://builder.sourceware.org/buildbot/badges/gccrust-fedora-ppc64le.svg)](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-ppc64le) +- [Fedora s390x](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-s390x) [![Fedora s390x](https://builder.sourceware.org/buildbot/badges/gccrust-fedora-s390x.svg)](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-s390x) +- [Fedora X86_64](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-x86_64) [![Fedora X86-64](https://builder.sourceware.org/buildbot/badges/gccrust-fedora-x86_64.svg)](https://builder.sourceware.org/buildbot/#/builders/gccrust-fedora-x86_64) +- [OpenSUSE Leap X86_64](https://builder.sourceware.org/buildbot/#/builders/104) [![OpenSUSE Leap X86_64](https://builder.sourceware.org/buildbot/badges/gccrust-opensuseleap-x86_64.svg)](https://builder.sourceware.org/buildbot/#/builders/104) +- [OpenSUSE tw X86_64](https://builder.sourceware.org/buildbot/#/builders/103) [![OpenSUSE tw X86_64](https://builder.sourceware.org/buildbot/badges/gccrust-opensusetw-x86_64.svg)](https://builder.sourceware.org/buildbot/#/builders/103) +- [Rawhide X86_64](https://builder.sourceware.org/buildbot/#/builders/132) [![Rawhide X86_64](https://builder.sourceware.org/buildbot/badges/gccrust-rawhide-x86_64.svg)](https://builder.sourceware.org/buildbot/#/builders/132) + +## FAQ + +Please find the answers to frequently asked questions over on: https://github.com/Rust-GCC/gccrs/wiki/Frequently-Asked-Questions + +## Development Environment + +### Building + +Fetch dependencies for Ubuntu: + +```bash +$ apt install build-essential libgmp3-dev libmpfr-dev libmpc-dev flex bison autogen gcc-multilib dejagnu +``` + +Clone the repository + +```bash +$ git clone https://github.com/Rust-GCC/gccrs +``` + +#### Linux + +It is important to remember that GNU toolchain projects are designed to be built outside of their source directory +which is why a build directory is created. + +```bash +$ mkdir gccrs-build +$ cd gccrs-build +$ ../gccrs/configure --prefix=$HOME/gccrs-install --disable-bootstrap --enable-multilib --enable-languages=rust +$ make +``` + +#### MacOS + +The path of header dir and sysroot should be specified when you configure the project. +```bash +$ mkdir mac-build +$ cd mac-build +$ ../gccrs/configure --prefix=$HOME/gccrs-install --disable-bootstrap --enable-multilib --enable-languages=rust --with-native-system-header-dir=/usr/include --with-sysroot=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk +$ make + +``` + +#### Running GCC Rust + +Running the compiler itself without make install we can simply invoke the compiler proper: + +```bash +$ ./gcc/rust1 test.rs -frust-debug -frust-dump-parse -Warray-bounds -dumpbase test.rs -mtune=generic -march=x86-64 -O0 -version -fdump-tree-gimple -o test.s -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib64 +``` + +To invoke the compiler driver (gccrs) we need to: + +```bash +$ make install +``` + +Then invoke the compiler from the installation directory: + +```bash +$ $HOME/gccrs-install/gccrs -g -O2 -c test.rs -o test.o +$ $HOME/gccrs-install/gccrs -o test test.o +``` + +You can also setup your shell to automatically find the installed compiler. For example for `bash`, +add the following in your `$HOME/.bashrc`: + +```bash +export PATH=$HOME/gccrs-install/bin:$PATH + +``` + +## Testsuite + +Invoke the full testsuite from the build directory (`gccrs-build` in the previous commands): + +```bash +$ make check-rust +``` + +Invoke a subset of the testsuite. For example, to only run tests that are currently known/expected to fail: + +```bash +$ make check-rust RUNTESTFLAGS="xfail.exp" +``` +There are the following sets of tests: +- `compile.exp` : compilation tests +- `execute.exp` : execution tests +- `xfail.exp` : tests that are currently known/expected to fail + +Invoke only a specific test : + +```bash +$ make check-rust RUNTESTFLAGS="--all compile.exp=continue1.rs" +``` + +Logs (with corresponding commands) can be found in : `gccrs-build/gcc/testsuite/rust/rust.log`. + +See [GCC Testing documentation](https://gcc.gnu.org/install/test.html) for more details. + +Test cases are located within [`gcc/testsuite/rust/`](gcc/testsuite/rust/). +Please contribute your specific +test cases referencing any issues on Github. + +## Debugging + +### Enabling internal checks + +GCC has several internal checks that can be enabled during configuration. In the case of `gccrs`, +you can enable the following: +```bash +$ ../gccrs/configure --prefix=$HOME/gccrs-install --disable-bootstrap --enable-multilib --enable-languages=rust --enable-checking=gimple,tree,types +``` + +### GDB +You can directly invoke `gdb` on the `rust1` compiler process (you can find the +exact command adding `--verbose` to your `gccrs` invocation): +```bash +$ gccrs test.rs -O0 -S -o arithmetic_expressions1.s --verbose +... + /some/path/../../rust1 test.rs -quiet -dumpbase arithmetic_expressions1.rs -dumpbase-ext .rs + -mtune=generic -march=x86-64 -O0 -w -version -fdiagnostics-color=never -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers -fdiagnostics-urls=never -fdiagnostics-path-format=separate-events -o test.s -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu +... +$ gdb --args /some/path/../../rust1 test.rs -quiet -dumpbase arithmetic_expressions1.rs -dumpbase-ext .rs + -mtune=generic -march=x86-64 -O0 -w -version -fdiagnostics-color=never -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers -fdiagnostics-urls=never -fdiagnostics-path-format=separate-events -o test.s -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu +``` + +Or simply add the `-wrapper gdb,--args` option. +This will call each subcommand in `gdb` and you simply have to break/debug in `rust1`: +```bash +$ gccrs test.rs -O0 -S -o arithmetic_expressions1.s -wrapper gdb,--args +``` + +## Docker image + +There is a docker image hosted over on: + +https://hub.docker.com/repository/docker/philberty/gccrs + +```bash +$ docker pull philberty/gccrs +``` + +Or you can build your own image: + +```bash +$ docker build . -t gccrs-dev +``` +If you want to build an object file: + +```bash +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp \ + gccrs-dev:latest gccrs -g -O2 -c \ + gcc/testsuite/rust/compile/torture/type_infer1.rs -o type_infer1.o +``` + +If you want to build an executable file: +```bash +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp \ + gccrs-dev:latest gccrs -g -O2 \ + gcc/testsuite/rust/compile/torture/type_infer1.rs -o type_infer1 +``` + +To emit assembly : +```bash +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp \ + gccrs-dev:latest gccrs -g -O2 \ + gcc/testsuite/rust/compile/torture/type_infer1.rs -S -o type_infer1.s +``` + +To emit Rust front end debug output, you may add options like `-frust-debug`, `-frust-dump-all`. + + +## Contributing + +If you want to contribute to GCC Rust, you can find more information in [CONTRIBUTING.md](https://github.com/Rust-GCC/gccrs/blob/master/CONTRIBUTING.md). + +Please be aware this project is designed to be pushed upstream to GCC when we reach some milestones, +and this means we require copyright assignment or the Developer's Certificate of Origin sign-off. +Please see the [Contributing to GCC](https://gcc.gnu.org/contribute.html) guide or [Developer's Certificate of Origin (DCO) Sign-off](https://gcc.gnu.org/dco.html) guide. + +Not all contributions must be code; we would love to see new test cases or bugs and issues to be reported. +Feel free to add any comments on open PRs + + +## Continuous Integration + +When submitting (or updating) a [GitHub Pull Request](https://github.com/Rust-GCC/gccrs/pull/), +several automated checks are run. +Generally, a "green status" is necessary before merge. + + +### Compiler Diagnostics + +That is, here, diagnostics emitted by the "initial" compiler used to build GCC/Rust. + +If building a native toolchain, +GCC by default does a 3-stage bootstrap build (). +In addition to making sure that GCC is able to reproduce itself bit-by-bit, +this also means that stages 2+ are built with `-Werror` +(turning most _warning_ into _error_ diagnostics; see `--enable-werror`, +possibly enabled by default). +This helps to catch a good number of bugs, because it enforces that GCC compiles without compiler diagnostics; +it's a requirement for upstream patch submission (). + +GCC generally is only expected to be "warning-clean" without `--disable-bootstrap` +(that is, default `--enable-bootstrap` for a native build), +and not for the initial stage where it's using the "initial" compiler -- otherwise +we're at the mercy of whatever "initial" compiler we're using. +Doing a `--disable-bootstrap` build is much faster, of course, so we're often doing that: +for example, per the instructions above, or in the standard CI. +With that, we're missing out on the aspect that _enforces that GCC compiles without compiler diagnostics_. + +To encounter that, the default CI has a [_check for new warnings_ step](https://github.com/Rust-GCC/gccrs/pull/1026) +that verifies in the CI `--disable-bootstrap` build configuration that no new warnings are introduced. +If that step fails, it usually points out a new _warning_ you've introduced erroneously, and should address. +Occasionally it means that simply the `.github/bors_log_expected_warnings` file needs to be updated, +for example if due to any kind of "environmental changes" (for example, CI "initial" compiler changes). +Unless diligently reproducing the CI configuration (in particular "initial" compiler, GCC version), +it's not really feasible to reproduce this check locally. +If in doubt, do a local `--enable-bootstrap` build, or submit your changes, and wait for the CI system's results. + + +## Community + +We can be found on all usual Rust channels such as Zulip, but we also have our own channels: + +* GCC Rust Zulip: https://gcc-rust.zulipchat.com/ +* Twitter: https://twitter.com/gcc_rust +* GCC Mailing List: https://gcc.gnu.org/mailman/listinfo/gcc-rust +* irc: irc.oftc.net - gccrust diff --git a/gcc/rust/logo.png b/gcc/rust/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e5b22ad646f87e9ad00427f891d2f93baaf83520 GIT binary patch literal 70864 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