-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
modules/picolibc: Include clang+cmake and old GCC changes #54394
modules/picolibc: Include clang+cmake and old GCC changes #54394
Conversation
The following west manifest projects have been modified in this Pull Request:
Note: This message is automatically posted and updated by the Manifest GitHub Action. |
This patch is still under discussion for merging to picolibc; when this feature is merged to picolibc main, I'll remove the DNM tag. |
e2ff35d
5568d57
to
e2ff35d
Compare
This now references the picolibc patch which was reviewed and merged upstream. |
There are some failures. |
e2ff35d
to
40e2784
Compare
Zephyr and picolibc were both trying to use a macro __deprecated, but picolibc had an argument for the optional message (which old GCC didn't support). Thanks for noticing, let's see if that's fixed now. |
Yup, looks fixed now -- the one remaining failure I'm seeing also on main, and that test isn't using picolibc. |
And it's transient; re-running the test resolved the issue. Sigh. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tried this with qemu_x86 w/llvm-14 or llvm-15 on ubuntu and get the following (or some form it):
<inline asm>:2:1: error: __getauxval changed binding to STB_GLOBAL
when trying:
./scripts/twister -p qemu_x86 -T tests/lib/c_lib/
branch: https://github.com/galak/zephyr/pull/new/llvm-x86-pico
Seems to be related to
|
Yeah, newlib (and picolibc by extension) use inline asm for weak references instead of using attributes. I'm working on a picolibc patch to make it use |
40e2784
to
ecbabd2
Compare
I've updated this series to pull in picolibc with this fix from upstream. |
ecbabd2
to
563bd8c
Compare
Updated past other recent picolibc merge, does not change target manifest revision |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Based on TSC conversation today (Mar 15, 2023), please also update the SDK to point at this version of picolibc.
Whenever we update west.yml picolibc, we should also update the SDK to match.
This updates west.yml to pull the version of picolibc that includes both the patches in zephyrproject-rtos#54391 as well as the fix providing compatibility for the 'deprecated' attribute when using GCC versions before 4.5, such as the GCC based XCC compiler. Changes for 'weak' attributes were added to avoid using inline asm statements for compilers that support the necessary attributes. This commit is synchronized with Zephyr SDK: zephyrproject-rtos/sdk-ng#650 Signed-off-by: Keith Packard <[email protected]>
563bd8c
to
fe8cc9e
Compare
Yup, been running tests to make sure updating both will work as expected. |
This updates west.yml to pull a version of picolibc that includes both the patches in #54391 as well as a proposed fix that provides some compatibility with GCC versions before 4.5, such as the GCC based XCC compiler.
Signed-off-by: Keith Packard [email protected]
Fixes #54336