first of all I would recommend using the debugger (if you are using RTLinux,
or make a user program out of this part of the code) and disassemble this
part of the code. Sometimes you will see that either the compiler, the type
cast or you are wrong in some assumptions.

just a hint

Heinz


----- Original Message -----
From: "Jonas Persson" <[EMAIL PROTECTED]>
To: "RTLinux Mailing list" <[EMAIL PROTECTED]>
Sent: Wednesday, May 09, 2001 12:33 PM
Subject: [rtl] Floating point question


> Hi all!
>
> So, now I have gotten to the dreaded floating point issue. However, I
think my problem is a little rare... the problem is that the FPU simply does
not give correct answers. Consider the following code excerpt:
>
>   m0 = ramp*chi_off*ang_lim/ my_2_pi;
>
> Given the following parameters,
>   ramp = 1,
>   chi_off = 0.299,
>   ang_lim = 198,
>   my_2_pi = 6.28,
>
> the statement above returns
>
>   m0 = -2147483648 !!!
>
> Interesting, isn't it? m0 is an int, the rest are floats. If I run the
program without debugging and trace data through an RT-fifo, I get lots of
results like the above example. However if I debug the program, and wait for
a few seconds, sometimes different results are returned.
>
> Can anyone guess at possible causes for this happening? Have anyone else
experienced the same behaviour?
>
> Apart from this, my system is working fine, I have no crashes, hangups or
other bad behaviour.
>
> My configuration is:
> Pentium III 866 processor, tyan SMP motherboard, kernel 2.2.18-rtl. Base
distribution is SuSE 7.0, and exchanged the stock installed debugger for gdb
5.0. I am using the stock gcc 2.95.2 19991024 that comes with SuSE.
>
> BTW, I solved my previous problem by NOT doing rtf_flush() from a
rt-thread... :-)
>
> Yours very confusedly,
> Jonas Persson
>
> ______________________________________________________________________
>  Jonas Persson                    E-mail: [EMAIL PROTECTED]
>  Project Manager, M.Sc C.Sc&E     http://www.comsys.se/
>  Comsys AB                        Phone: +46-(0)46-286 3500
>  Forskningsbyn IDEON              Fax: +46-(0)46-286 3505
>  S-223 70 Lund, Sweden
> -- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> --
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/rtlinux/
>

-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/

Reply via email to