Skip to content

Adding arch option instead MCPU for no dsp and no fpu support #8729

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

Merged
merged 1 commit into from
Nov 15, 2018

Conversation

deepikabhavnani
Copy link

@deepikabhavnani deepikabhavnani commented Nov 13, 2018

Description

Cortex-M33 has optional floating point and DSP, the mcpu option by default enables optional features. To disable optional features we need to add +nodsp +nofp.

But nofp is supported after 8.x version of toolchain. Hence to get this we will have to use -march option instead of -mcpu

Pull request type

[X] Fix
[ ] Refactor
[ ] Target update
[ ] Functionality change
[ ] Docs update
[ ] Test update
[ ] Breaking change

No FPU option is valid, but supported only for 8.x releases, with 7.x release
+nofp gives build errors.
@cmonr cmonr requested a review from a team November 13, 2018 15:13
@cmonr
Copy link
Contributor

cmonr commented Nov 13, 2018

@deepikabhavnani I thought it was mentioned in a different PR that +nofp was needed.

@deepikabhavnani
Copy link
Author

@cmonr - Yes in #8449

We have few Cortex-M33 with optional floating point and DSP, the mcpu option by default enables optional features. To disable optional features we need to add +nodsp +nofp.

But in tools if we set core as cortex-M33 it is without optional features, to select particular feature we need to explicitly append F - Floating point.

In 8449, Cortex-M33F was added and Cortex-M33 was updated.

Cortex-M33 = cortex-m33+nodsp+nofp - But nofp is supported after 8.x version of toolchain. Hence to get this we will have to use -march option instead of -mcpu

Cortex-M33F= cortex-m33+nodsp - This enables floating point for 8449.

Hope this helps.

@gaborkertesz
Copy link
Contributor

Musca-A GCC_ARM build is working as expected with this fix.

@adbridge
Copy link
Contributor

adbridge commented Nov 14, 2018

@deepikabhavnani Could you clarify the description for this PR please.

No FPU option is valid, but supported only for 8.x releases, with 7.x release +nofp gives build errors.

This is not very clear especially to the casual observer.

@adbridge
Copy link
Contributor

/morph build

@mbed-ci
Copy link

mbed-ci commented Nov 14, 2018

Build : SUCCESS

Build number : 3622
Build artifacts/logs : http://mbed-os.s3-website-eu-west-1.amazonaws.com/?prefix=builds/8729/

Triggering tests

/morph test
/morph export-build
/morph mbed2-build

@gaborkertesz
Copy link
Contributor

@adbridge @deepikabhavnani
The background of this change (revert of a previous commit) is that the nofp feature is added by GCC 8 (https://gcc.gnu.org) for Cortex-M33, but version 8 is not yet published as a binary by Arm, the latest is 7.3 (https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads)

So we shouldn't use +nofp for Cortex-M33 until GCC 8 is released for M class processors and if it's released and its features used by mbed build, the corresponding compiler version should be enforced by the build system.

@mbed-ci
Copy link

mbed-ci commented Nov 14, 2018

@mbed-ci
Copy link

mbed-ci commented Nov 15, 2018

@deepikabhavnani
Copy link
Author

@ARMmbed/mbed-os-maintainers - Failures does not look like related to PR, is it some CI issue ?

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 15, 2018

@ARMmbed/mbed-os-maintainers - Failures does not look like related to PR, is it some CI issue ?

That is correct, I'll add this to the new rollup PR to restart testing there

@0xc0170
Copy link
Contributor

0xc0170 commented Nov 15, 2018

Note: This PR is now a part of a rollup PR (#8753).

In order to expedite remaining CI testing, this PR has been bundled into the above rollup PR.

No further work is needed here, as once that PR is merged, this PR will also be closed and marked as merged.

If any more commits are made in this PR, this PR will remain open and have to go through CI on its own.

@cmonr
Copy link
Contributor

cmonr commented Nov 15, 2018

Please ignore. I derped.

@cmonr cmonr merged commit a6ed5fc into ARMmbed:master Nov 15, 2018
@deepikabhavnani deepikabhavnani deleted the Musca_march branch November 15, 2018 23:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants