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

Iar develop (DO NOT MERGE) #1287

Draft
wants to merge 4 commits into
base: develop
Choose a base branch
from
Draft

Iar develop (DO NOT MERGE) #1287

wants to merge 4 commits into from

Conversation

kilograham
Copy link
Contributor

This is a branch for development of an IAR compiler capable SDK

* Fix various non-GCC warnings (no effect on GCC)
* Reduce use of typeof since non GCC compilers may not support it
* Introduce PICO_C_COMPILER_IS_GNU, PICO_C_COMPILER_IS_CLANG, PICO_C_COMPILER_IS_IAR to CMake as if (CMAKE_C_COMPILER_ID STREQUAL "xxx") is a bit verbose
* Use "unified_asm" macro for all inline asm (it is "volatile __asm" on GNU with a .syntex unified)
* Use NOLOAD instead of COPY in linker scripts (arguably more correct anyway)
* Use the same style for setting _etext in all 4 linker scripts (to the beginning of .data). Clang aligns .data on a 16 byte boundary. Note ideally we'd
  add a new symbol __data_source, however that would break backwards compatibility with existing user linker scripts
* Use "a" for .stack, .heap sections because clang complains otherwise, and they are explicitly NOLOAD anyway
* Avoid duplicating __sev, __wfe, __wfi which Clang sometimes seems to provide as built-ins
* Add missing kitchen_sink_blocked_ram binary
* Allow build with LLVM Embedded Toolchain Form ARM v 14.0.0 (unsupported atm)
@kilograham kilograham marked this pull request as draft February 27, 2023 23:09
@kilograham kilograham added this to the none milestone Feb 27, 2023
@micaelbo
Copy link

@kilograham What are the chances that this branch will be merged any time soon?

@kilograham
Copy link
Contributor Author

Current plans are:

  1. for this branch to get some more attention
  2. To keep it up to date with each SDK release
  3. for now we will keep it separate, due to the quite disruptive changes, but may change in the future. We will likely release IAR versions too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants