cpu/mips32r2: remove nomips16 attribute from _mips_handle_exception#11986
cpu/mips32r2: remove nomips16 attribute from _mips_handle_exception#11986benpicco merged 1 commit intoRIOT-OS:masterfrom
Conversation
|
ACK. I compiled hello-world with GCC toolchain 2017.10-05 and this is necessary to compile any programs for MIPS CPU with toolchains newer than 2016.05-03. |
benpicco
left a comment
There was a problem hiding this comment.
Tested by @francois-berder
And the build was broken before anyway.
|
There's a logistics problem:
|
I propose:
If this is somewhat coordinated, mips would only be disabled for a couple of hours. |
|
Or, guard the attribute by "GNUC <= 4", then backport the fix. That should make the current RIOT CI pass. The riotdocker CI might need to be changed to test against the release branch, not the release tag. |
|
@francois-berder could you give this another shot? |
|
Ok, this is with a newer toolchain: This is with the current docker image: So the guard is working. I'll squash, @benpicco could you re-ACK? |
820b010 to
1edb555
Compare
|
@kaspar030 the ACK is still valid, but so is the whitespace issue brought up by Travis - fix that and you should be good to go. |
A note says "The nomips16 attribute should not really be needed, it works around a toolchain issue in 2016.05-03." In fact, in 2018.09-03, the attribute leads to this error: ```cpu/mips32r2_common/thread_arch.c:191:1: error: ‘_mips_handle_exception’ redeclared with conflicting ‘nomips16’ attributes``` This this commit removes the attribute.
1edb555 to
b415588
Compare
|
Backport provided in #12288 |
Contribution description
A note says "The nomips16 attribute should not really be needed,
it works around a toolchain issue in 2016.05-03."
In fact, in 2018.09-03, the attribute leads to this error:
cpu/mips32r2_common/thread_arch.c:191:1: error: ‘_mips_handle_exception’ redeclared with conflicting ‘nomips16’ attributesThis this commit removes the attribute.
Testing procedure
Successful build and basic test on any mips32r2 board should suffice.
Issues/PRs references
Needed for RIOT-OS/riotdocker#76