[En-Nut-Discussion] Probable GCC Compiler error, was: Re: Problem with ARM floating point, again

Paweł apcom at tlen.pl
Tue Sep 17 21:35:49 CEST 2013


>      Paweł>          Hello As I wrote some time ago - up to date I'm using
>      Paweł> Yagarto 4.3.2 (with Ethernut 4.10.2). With this compiler printf
>      Paweł> works without any problem.  Maybe this helps to better
>      Paweł> investigate problem.  I tested almost all later version of
>      Paweł> Yagarto on different Ethernut versions and everytime was some
>      Paweł> problems with floating point.
>
> The problem is with the gcc compiler. Is assumes a 8-byte alignment for the
> data of the va_list. However by using the va_list as a function argument,
> the list start may rest on odd 4-byte boundries.
>
> I have checked into SVN a putf version where we push ap one function deeper,
> and things work as expected.
>
> SVN also realizes printing of 64bit integers.
>
> Regarding the gcc problems, I have a report/question pending on
> https://answers.launchpad.net/gcc-arm-embedded/+question/235875
>
> Bye

Of course you're right. But the problem with va_list also affects the 
printf function.
I just wanted to point out which version of the compiler generates 
correct code.
Maybe compare result code from old and new compiler will give some 
additional
hints/answers

best regards
Paweł



More information about the En-Nut-Discussion mailing list