Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unconditionally depend on atomic-polyfill for riscv32i target #293

Merged
merged 5 commits into from
May 12, 2022
Merged

Conversation

japaric
Copy link
Member

@japaric japaric commented May 12, 2022

due to a limitation in the llvm backend 1 the riscv32i-unknown-none-elf target lacks the core::sync::atomic API even though the actual hardware is capable of atomic loads and stores (fence instruction). thus, at this point in time, this target needs atomic-polyfill for a working SPSC implementation

fixes #271
closes #272
closes #273

@japaric
Copy link
Member Author

japaric commented May 12, 2022

bors r+

bors bot added a commit that referenced this pull request May 12, 2022
293: unconditionally depend on atomic-polyfill for riscv32i target r=japaric a=japaric

due to a limitation in the llvm backend [1] the `riscv32i-unknown-none-elf` target lacks the `core::sync::atomic` API even though the actual hardware is capable of atomic loads and stores (`fence` instruction). thus, at this point in time, this target needs `atomic-polyfill` for a working SPSC implementation

[1]: knurling-rs/defmt#597 (comment)

fixes #271 
closes #272 
closes #273 

Co-authored-by: Jorge Aparicio <jorge.aparicio@ferrous-systems.com>
@bors
Copy link
Contributor

bors bot commented May 12, 2022

Build failed:

@japaric
Copy link
Member Author

japaric commented May 12, 2022

bors r+

bors bot added a commit that referenced this pull request May 12, 2022
293: unconditionally depend on atomic-polyfill for riscv32i target r=japaric a=japaric

due to a limitation in the llvm backend [1] the `riscv32i-unknown-none-elf` target lacks the `core::sync::atomic` API even though the actual hardware is capable of atomic loads and stores (`fence` instruction). thus, at this point in time, this target needs `atomic-polyfill` for a working SPSC implementation

[1]: knurling-rs/defmt#597 (comment)

fixes #271 
closes #272 
closes #273 

Co-authored-by: Jorge Aparicio <jorge.aparicio@ferrous-systems.com>
@bors
Copy link
Contributor

bors bot commented May 12, 2022

Canceled.

@japaric
Copy link
Member Author

japaric commented May 12, 2022

bors r+

@bors
Copy link
Contributor

bors bot commented May 12, 2022

Build succeeded:

@bors bors bot merged commit 02773a5 into master May 12, 2022
@bors bors bot deleted the gh271 branch May 12, 2022 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Doesn't build on riscv32i-unknown-none-elf without default features (regression 0.7.10)
1 participant