Skip to content

Commit 7ecdd0a

Browse files
romanovvladAlexander Batashev
andauthored
[SYCL][Doc] Add note on frozen ABI (#2686)
Co-authored-by: Alexander Batashev <[email protected]>
1 parent ded227d commit 7ecdd0a

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

CONTRIBUTING.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,11 @@ is strongly encouraged that you submit the patch to https://llvm.org/ directly.
2020
See [LLVM contribution guidelines](https://llvm.org/docs/Contributing.html)
2121
for more information.
2222

23+
**Note (October, 2020)**: DPC++ runtime and compiler ABI is currently in frozen
24+
state. This means that no ABI-breaking changes will be accepted by default.
25+
Project maintainers may still approve breaking changes in some cases. Please,
26+
see [ABI Policy Guide](sycl/doc/ABIPolicyGuide.md) for more information.
27+
2328
- Create a personal fork of the project on GitHub
2429
- For the DPC++ Compiler project, use **sycl** branch as baseline for your
2530
changes. See [Get Started Guide](sycl/doc/GetStartedGuide.md).

sycl/doc/ABIPolicyGuide.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,13 +92,22 @@ There is a set of tests to help identifying ABI changes:
9292
classes for layout changes, while `symbol_size` only checks `sizeof` for API
9393
classes. Changing the class layout is a breaking change.
9494

95-
## Breaking ABI
95+
## Changing ABI
96+
97+
**Note (October, 2020)**: DPC++ runtime and compiler ABI is currently in frozen
98+
state. This means that no ABI-breaking changes will be accepted by default.
99+
Project maintainers may still approve breaking changes in some cases. Please,
100+
try to avoid any breaking changes until freeze is lifted. If you need to change
101+
existing functionality, consider adding new APIs instead of replacing them.
102+
Also, please, avoid any changes, mentioned in the [Intro](#intro) section as
103+
breaking. Refer to the above guide to distinguish breaking and non-breaking
104+
changes. If not sure, do not hesitate to ask code owners for help.
96105

97106
Whenever you need to change the existing ABI, please, follow these steps:
98107

99108
1. Adjust you PR description to reflect (non-)breaking ABI changes. Make sure
100109
it is clear, why breaking ABI is necessary.
101110
2. Fix failing ABI tests in your Pull Request. Use aforementioned techniques to
102111
update test files.
103-
3. If Pull Request introduces a breaking change, update the library version
104-
according to the policies.
112+
3. ~~If Pull Request introduces a breaking change, update the library version~~
113+
~~according to the policies.~~ **(See note above)**

0 commit comments

Comments
 (0)