-
Notifications
You must be signed in to change notification settings - Fork 3k
IAR 8 feature branch merge #9808
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
@deepikabhavnani, thank you for your changes. |
Two new block properties available in linker configuration files: "expanding size" and "minimum size" for IAR 8.11.2 and above Sample: define block HEAP with expanding size, minimum size = 16K, alignment = 8 {}; This block will expand to consume all remaining available space in the range where it is placed. If several such blocks end up in the same range, they will share the remaining space. Cannot place a block with expanding size inside another block with expanding size, inside a block with maximum size, or inside an overlay.
RAM define/section if splited, IAR exanpding size considers just one section while heap creation which results in smaller chunk for heap. This commit is to unify the RAM section.
Few targets have libraries compatible to IAR 7.x, which fail with IAR 8.x, IAR support for them is removed till updated library is added. CI failure seen if IAR is not added as supported target, trying with release_version as empty string List of targets affected: 1. UBLOX_EVK_ODIN_W2 2. MTB_UBLOX_ODIN_W2 3. MBED_CONNECT_ODIN 4. MTB_MXCHIP_EMW3166 5. MTB_ADV_WISE_1530 6. MTB_USI_WM_BN_BM_22 7. REALTEK_RTL8195AM
Reference template file is used from IAR8.32 installation available at path "Embedded Workbench 8.2\arm\config\template\ConvertToIAR\template_project.ewp" Also added trustzone configs in iar_definitions.json
Two new block properties available in linker configuration files: "expanding size" and "minimum size" for IAR 8.11.2 and above Sample: define block HEAP with expanding size, minimum size = 16K, alignment = 8 {}; This block will expand to consume all remaining available space in the range where it is placed. If several such blocks end up in the same range, they will share the remaining space. Cannot place a block with expanding size inside another block with expanding size, inside a block with maximum size, or inside an overlay.
Reverting this feature till IAR 8.x is stable and supported in Mbed OS for few releases 1. Revert "Add Dynamic heap support to IAR" This reverts commit 8ee29bb. 2. Revert "Splited RAM section not compatible with dynamic HEAP." This reverts commit a645bb2. 3. Revert "Add Dynamic heap support to IAR" This reverts commit 891e1f2.
There are still targets that are failing IAR8 nightly build and are passing on IAR7 nightly build.
|
@timurh01 - all the targets in list except sequana are expected to fail, since they have non-compatible libraries and fixes for them will come directly on master branch. I will check Sequana failures |
@deepikabhavnani Have plans changed at somepoint? Because test team has been under the impression that every target should be green before merge. |
No, every target should be green for merging PR in master. |
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.
Looks ok, besides the disabled targets (though looks like you're addressing those)
Random number generation in case of IAR 8, requires TLS support. Thread local storage is not part of Mbed OS, test is updated to have random numbers sparse, but in future random number creation should be moved to main thread, or use some other logic for randomization instead of rand() call.
66e93fd
to
f7a6d25
Compare
@deepikabhavnani Where is this being tracked? As the branch was updated and rebased, restarting CI |
Test run: FAILEDSummary: 1 of 8 test jobs failed Failed test jobs:
|
Can we include 9721 here? That would be the easiest approach at this moment. it was approved, already tested once. And would fix the issue with IAR8. |
This reverts commit f7a6d25.
Adding storage components to boards
Due to targets enhancement some boards failed the general block device tests for flashiap component, The fails were due to boards containing inconsistent sector sizes. The tests were modified but should be improved to address the problem. Rand() function issues were fixed.
Now aborted CI |
The SPIF and QPIF components tests are fully merged into general block device tests and were deleted
This reverts commit 334b2d6. This commit is not required any more as changes for this are already part of master branch
Roll up PR for feature-iar8
Revert "Update params in calls to LDREXW/STREXW to uint32_t"
CI started |
Test run: SUCCESSSummary: 12 of 12 test jobs passed |
"post_binary_hook": { | ||
"function": "RTL8195ACode.binary_hook", | ||
"toolchains": ["ARM_STD", "GCC_ARM", "IAR"] | ||
}, | ||
"release_versions": ["5"], | ||
"release_versions": [], |
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.
this should still have version 5 ?
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.
If it does, I think it should come in via a followup PR, considering how much this PR is blocking.
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.
just final check :) LGTM
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.
Just one line - might need an update
@SenRamakri Please review, this PR needs approvals! |
Description
IAR 8.x feature branch merge.
@ARMmbed/mbed-os-test-team - Please switch CI on master branch to IAR 8.32 after 5.11.5 release candidate is ready.
@ARMmbed/mbed-os-maintainers - If PR #9807 is merged before starting CI for this, then it should show up here. Else can update #9807 to be against master, if this is merged.
Pull request type
Reviewers
@SenRamakri
Release Notes
Updating the IAR toolchain version to IAR 8.32.