<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">2018-03-09 14:38 GMT+01:00 Ezequiel Garcia <span dir="ltr"><<a href="mailto:ezequiel@vanguardiasur.com.ar" target="_blank">ezequiel@vanguardiasur.com.ar</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Baruch,<br>
<div><div class="gmail-h5"><br>
On 8 March 2018 at 09:33, Baruch Siach <<a href="mailto:baruch@tkos.co.il">baruch@tkos.co.il</a>> wrote:<br>
> Hi Ezequiel,<br>
><br>
> On Thu, Mar 08, 2018 at 09:14:30AM -0300, Ezequiel Garcia wrote:<br>
>> From: Johannes Schmitz <<a href="mailto:johannes.schmitz1@gmail.com">johannes.schmitz1@gmail.com</a>><br>
>><br>
>> This fix is necessary for to build for MIPS, for example for the MIPS<br>
>> XBurst architecture used on ci20 boards.<br>
>><br>
>> GCC has replaced (no)mfused-madd with ffp-contract.<br>
>> Find more details and a long discussion at<br>
>> <a href="https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00876.html" rel="noreferrer" target="_blank">https://gcc.gnu.org/ml/gcc-<wbr>patches/2015-06/msg00876.html</a><br>
>><br>
>> Signed-off-by: Johannes Schmitz <<a href="mailto:johannes.schmitz1@gmail.com">johannes.schmitz1@gmail.com</a>><br>
>> Tested-by: Ezequiel Garcia <<a href="mailto:ezequiel@vanguardiasur.com.ar">ezequiel@vanguardiasur.com.ar</a><wbr>><br>
>> ---<br>
>> Ci20 builds are currently broken without this patch.<br>
>><br>
>>  toolchain/toolchain-wrapper.c  | 3 ---<br>
>>  toolchain/<a href="http://toolchain-wrapper.mk" rel="noreferrer" target="_blank">toolchain-wrapper.mk</a> | 4 ++++<br>
>>  2 files changed, 4 insertions(+), 3 deletions(-)<br>
>><br>
>> diff --git a/toolchain/toolchain-wrapper.<wbr>c b/toolchain/toolchain-wrapper.<wbr>c<br>
>> index 2928ea42d0e6..04b263199547 100644<br>
>> --- a/toolchain/toolchain-wrapper.<wbr>c<br>
>> +++ b/toolchain/toolchain-wrapper.<wbr>c<br>
>> @@ -79,9 +79,6 @@ static char *predef_args[] = {<br>
>>  #ifdef BR_OMIT_LOCK_PREFIX<br>
>>       "-Wa,-momit-lock-prefix=yes",<br>
>>  #endif<br>
>> -#ifdef BR_NO_FUSED_MADD<br>
><br>
> Since you remove this macro reference, ...<br>
><br>
>> -     "-mno-fused-madd",<br>
>> -#endif<br>
>>  #ifdef BR_BINFMT_FLAT<br>
>>       "-Wl,-elf2flt",<br>
>>  #endif<br>
>> diff --git a/toolchain/<a href="http://toolchain-wrapper.mk" rel="noreferrer" target="_blank">toolchain-wrapper.<wbr>mk</a> b/toolchain/<a href="http://toolchain-wrapper.mk" rel="noreferrer" target="_blank">toolchain-wrapper.<wbr>mk</a><br>
>> index 7f72a0cadec9..7faa033f605c 100644<br>
>> --- a/toolchain/<a href="http://toolchain-wrapper.mk" rel="noreferrer" target="_blank">toolchain-wrapper.<wbr>mk</a><br>
>> +++ b/toolchain/<a href="http://toolchain-wrapper.mk" rel="noreferrer" target="_blank">toolchain-wrapper.<wbr>mk</a><br>
>> @@ -28,8 +28,12 @@ endif<br>
>><br>
>>  # Avoid FPU bug on XBurst CPUs<br>
>>  ifeq ($(BR2_mips_xburst),y)<br>
>> +ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_<wbr>4_6),y)<br>
>> +TOOLCHAIN_WRAPPER_ARGS += -DBR_FP_CONTRACT_OFF<br>
>> +else<br>
>>  TOOLCHAIN_WRAPPER_ARGS += -DBR_NO_FUSED_MADD<br>
><br>
> ... why not remove it here as well?<br>
><br>
<br>
</div></div>OK, so now I actually looked at this patch, and I think that it's<br>
all wrong:<br>
<br>
1. BR_FP_CONTRACT_OFF is not used anywhere.<br>
2. BR_NO_FUSED_MADD usage is removed,<br>
although it's still defined for GCC < 4.6.<br>
<br>
Johannes, want to give a shot at sending a correct version?<br>
Probably we just need to add:<br>
<br>
#ifdef BR_FP_CONTRACT_OFF<br>
    "-ffp-contract=off",<br>
#endif<br>
<br>
somewhere?<br>
<span class="gmail-HOEnZb"><font color="#888888">--<br>
Ezequiel García, VanguardiaSur<br>
<a href="http://www.vanguardiasur.com.ar" rel="noreferrer" target="_blank">www.vanguardiasur.com.ar</a><br>
</font></span></blockquote></div>Hello,<br>I will give it a try.<br><br></div><div class="gmail_extra">Regards<br></div><div class="gmail_extra">Johannes<br></div><div class="gmail_extra"><br></div></div>