|
1 | | -# Policy of Merge Pull Request |
| 1 | +# Policy for Merging Pull Request |
2 | 2 |
|
3 | | -Each type of modification require different policy, the policy is based on |
4 | | -following rules: |
| 3 | +Each type of modification has a different policy, based on the following rules: |
5 | 4 |
|
6 | | -- Changes require linker change. |
7 | | - - Require an open source PoC implmenation for `binutils` or `LLD` |
8 | | - - Available on either mailing list, phabricator or github repo is acceptable. |
| 5 | +- Changes requiring linker changes |
| 6 | + - Require an open source PoC implementation for binutils or LLD, either as a |
| 7 | + patch on the mailing list/Phabricator as appropriate or in a GitHub fork |
9 | 8 | - Require at least one binutils developer **_AND_** one LLD developer to |
10 | | - approve. |
| 9 | + approve |
11 | 10 |
|
12 | | -- Changes require compiler change. |
13 | | - - Require an open source PoC implmenation for `GCC` or `LLVM` |
14 | | - - Available on either mailing list, phabricator or github repo is acceptable. |
15 | | - - Require at least one GCC developer **_AND_** one LLVM developer to approve. |
| 11 | +- Changes requiring compiler changes |
| 12 | + - Require an open source PoC implementation for GCC or LLVM, either as a |
| 13 | + patch on the mailing list/Phabricator as appropriate or in a GitHub fork |
| 14 | + - Require at least one GCC developer **_AND_** one LLVM developer to approve |
16 | 15 |
|
17 | | -- Clarification on current implmenation behavior. |
18 | | - - Require approve from a developer of corresponding component. |
| 16 | +- Clarifications for currently-implemented behaviour |
| 17 | + - Require approval from a developer of the corresponding component |
| 18 | + (binutils/LLD or GCC/LLVM) |
19 | 19 |
|
20 | | -- General document improvement and clarification. |
| 20 | +- General improvements and clarification |
21 | 21 | - One of the psABI TG chair or co-chair. |
22 | 22 |
|
23 | | -- Do **_NOT_** make incompatible change. |
24 | | - - Incompatible are generally unacceptable. |
25 | | - - In case, it's a ABI bug fix or a very conner case, it require all |
26 | | - psABI TG chair or co-chair to approve. |
| 23 | +- Do **_NOT_** make incompatible changes |
| 24 | + - Changes that break compatibility are generally not acceptable |
| 25 | + - In the rare case there is a bug in the ABI that needs fixing and that |
| 26 | + cannot be done in a backwards-compatible way, or possibly for some |
| 27 | + edge-case behaviour that is not currently relied upon, breaking the ABI can |
| 28 | + be considered, but will require both the psABI TG chair and co-chair to |
| 29 | + approve, and is subject to the above requirements as appropriate |
27 | 30 |
|
28 | 31 | # FAQ |
29 | 32 |
|
30 | | -- Could I leave comment, LGTM or approve the PR even if I am not a toolchain developer or chair/co-chair? |
31 | | - - Don't hesitate to leave your comment, we are encourage anyone who intend |
32 | | - to contribute to the RISC-V community. |
33 | | - |
34 | | -- When do I need to modify compiler and/or linker? |
35 | | - - Change or add new stuffs to the ELF format require linker |
36 | | - change, e.g. new relocation type, new flags for e_flags field. |
37 | | - - Change or add new ABI, new calling convention or new code model require compiler |
38 | | - change. |
39 | | - |
40 | | -- Who is psABI TG chair/co-chair |
41 | | - - psABI TG chair and co-chair are election by RISC-V international, |
42 | | - current chair is Kito Cheng ([@kito-cheng](https://github.com/kito-cheng)) and |
43 | | - co-chair is Jessica Clarke ([@jrtc27](https://github.com/jrtc27)). |
44 | | - |
45 | | -- Where can I find a RISC-V GCC/LLVM/binutils/LLD developers to review my PR? |
46 | | - - psABI TG chair/co-chair will contact right people to review generally, but in |
47 | | - case you want to reach out those developer you could found an incomplete list |
48 | | - from [RISC-V International's wiki page](https://wiki.riscv.org/display/TECH/Toolchain+Projects). |
| 33 | +- Can I leave a comment, LGTM or approve the PR even if I am not a toolchain |
| 34 | + developer or chair/co-chair? |
| 35 | + - Don't hesitate to leave your comment, we encourage anyone who intends |
| 36 | + to contribute to the RISC-V community to participate in discussion. |
| 37 | + |
| 38 | +- When do I need to modify the compiler and/or linker? |
| 39 | + - Changes and additions to the ELF format itself generally require linker |
| 40 | + changes, e.g. new relocation types, new flags in the `e_flags` field, new |
| 41 | + sections and new symbol flags. |
| 42 | + - Changes and additions to calling conventions and code models generally |
| 43 | + require compiler changes. |
| 44 | + |
| 45 | +- Who are the psABI TG chair and co-chair? |
| 46 | + - The current chair is Kito Cheng ([@kito-cheng]) and the current co-chair is |
| 47 | + Jessica Clarke ([@jrtc27]). |
| 48 | + |
| 49 | +- Where can I find a RISC-V GCC/LLVM/binutils/LLD developer to review my PR? |
| 50 | + - The psABI TG chair or co-chair will generally contact the right people as |
| 51 | + needed for reviews, but in case you want to reach out yourself you can find |
| 52 | + an incomplete list from [RISC-V International's wiki page]. |
| 53 | + |
| 54 | +[@kito-cheng]: https://github.com/kito-cheng |
| 55 | +[@jrtc27]: https://github.com/jrtc27 |
| 56 | +[RISC-V International's wiki page]: https://wiki.riscv.org/display/TECH/Toolchain+Projects |
0 commit comments