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

Missing __sync_lock_test_and_set_ intrinsic for esp32s2 (IDFGH-5897) #7592

Closed
ivmarkov opened this issue Sep 23, 2021 · 1 comment
Closed
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally

Comments

@ivmarkov
Copy link
Contributor

ivmarkov commented Sep 23, 2021

Related to #7591:

Not sure why, but Rust + the Espressif LLVM Xtensa compiler fork generates calls to the __sync_lock_test_and_set_ intrinsic when targeting the esp32s2 chip. I have not seen that on being generated for esp32c3 (Riscv32imc).

In any case, here is a (hopefully correct!) diff, which implements __sync_lock_test_and_set_ and __sync_lock_release_

@espressif-bot espressif-bot added the Status: Opened Issue is new label Sep 23, 2021
@github-actions github-actions bot changed the title Missing __sync_lock_test_and_set_ intrinsic for esp32s2 Missing __sync_lock_test_and_set_ intrinsic for esp32s2 (IDFGH-5897) Sep 23, 2021
@espressif-bot espressif-bot added Resolution: NA Issue resolution is unavailable Status: Done Issue is done internally Resolution: Done Issue is done internally and removed Status: Opened Issue is new Resolution: NA Issue resolution is unavailable labels Oct 12, 2021
@igrr igrr closed this as completed in d93b53b Oct 12, 2021
@ivmarkov
Copy link
Contributor Author

@igrr Ditto here - see #7591 (comment)

espressif-bot pushed a commit that referenced this issue Dec 24, 2021
Provide emulated atomic load & store libcalls for u8, u16 & u32 integer
types. This is required when building with Clang as llvm does not lower
these operations to native load / stores, where as gcc does.

Provide `sync_lock_test_and_set` atomic implementations for all
supported integer types.

Closes #7591.
Closes #7592.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Resolution: Done Issue is done internally Status: Done Issue is done internally
Projects
None yet
Development

No branches or pull requests

2 participants