-
Notifications
You must be signed in to change notification settings - Fork 3k
Compatibilize ArmC6 with ArmC5-built archives #8803
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
Conversation
### Description Arm compiler 5 builds with "short" enums and "short" wchars. This means that C/C++ enums will be packed into the smallest power of 2 number of bytes by the compiler and the `wchar_t` is 2 bytes. Arm compiler 6 defaults to packing enums into 4 bytes and `wchar_t` is 4 bytes. Further, Arm Compiler 5's `-O0` (no optimizations) bulids will actually do some amount of optimizing, similar to Arm Compiler 6's `-O1`. I have switched the debug profile to `-O1` for maximum compatibility with our prior behavior. NOTE: "Compatibilize" is a word ### Pull request type [x] Fix [ ] Refactor [ ] Target update [ ] Functionality change [ ] Docs update [ ] Test update [ ] Breaking change
@theotherjimmy Looks like your script missed a new line. |
@cmonr Thanks for the reformatting. |
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.
Short diff is short
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.
Collected some rudimentary benchmarks at @theotherjimmy 's request, changes look solid to me.
CI started |
Test run: SUCCESSSummary: 4 of 4 test jobs passed |
Restarted test + dynamic CI jobs |
Description
Arm compiler 5 builds with "short" enums and "short" wchars. This means
that C/C++ enums will be packed into the smallest power of 2 number of
bytes by the compiler and the
wchar_t
is 2 bytes. Arm compiler 6defaults to packing enums into 4 bytes and
wchar_t
is 4 bytes.Further, Arm Compiler 5's
-O0
(no optimizations) bulids will actuallydo some amount of optimizing, similar to Arm Compiler 6's
-O1
. I haveswitched the debug profile to
-O1
for maximum compatibility with ourprior behavior.
NOTE: "Compatibilize" is a word
Pull request type