-
Notifications
You must be signed in to change notification settings - Fork 39
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
Increase esp STD targets max_atomic_width
to 64?
#107
Comments
We probably want to upstream this for |
I've updated the targets in https://github.com/esp-rs/rust/commits/esp-1.59.0.0, however this causes an issue for pio builds. They are fixed to v4.3.2, instead of the 4.3 release branch which is still getting backports. Perhaps its acceptable to leave pio users on 1.58, and hope that pio defaults to v4.4 soon? |
Hmm, can you paste the output from the build? I can't imagine how the pio build could be affected by that. |
Oh you mean 4.3.2 does not have the 64 bit atomics? Don't worry, I can patch those in, for the pio build. |
By the way, maybe we shouldn't apply patches on native build? Or atleast provide a way to override the patching. Building using |
4.3 (native or not) does need patching, as there is still a lot of stuff missing there:
If latest 4.3 fails to patch, we need to see why and branch the patching (as in one for 4.3.2, another for (?) 4.3.3 and so on) Another - perhaps cleaner - approach I'm thinking about is to forget about patching-during-build completely, and just maintain a patched fork of the ESP-IDF main repo. Building both pio and native off from a forked ESP-IDF repo is supported. |
…atomics, r=petrochenkov riscv32imc_esp_espidf: set max_atomic_width to 64 For espidf targets without native atomics, there is atomic emulation inside [the newlib component of espidf](https://github.com/espressif/esp-idf/blob/master/components/newlib/stdatomic.c), this has been extended to support emulation up to 64bits therefore we are safe to increase the atomic width for the `riscv32imc_esp_espidf` target. Closes esp-rs#107 cc: `@ivmarkov`
It seems none of the above patches are necessary anymore for
Why the native build applies patches to |
Atomic load, store & CAS routines are emulated in the newlib component of esp-idf all the way up to 64 bits. Even for targets with native atomic support, 64bit atomics are emulated.
Therefore I think it should be safe to increase
max_atomic_width
to 64.The text was updated successfully, but these errors were encountered: