This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Need help with -m68060 switch on egcs-1.1b




On Wed, 2 Dec 1998, Jyrki O Saarinen wrote:

> 
> > > >   mulul %d3,%d1,%d0
> > > >   fdmulx %fp4,%fp3
> 
> gcc emitted mulu.l dx,dy,dz for int-int multiply which is a bug
> IMHO. egcs doesn't do this for any CPU. 060 shouldn't have
> problems with floating point multiplies, the problematic
> area is trig etc. which for libFPSP can be used. 060 is 
> better than 040 in the aspect that it support fintrz for
> float to integer casts while 040 doesn't.

You might be surprised.  At one point the hppa port also did some integer
multiplication or division with the FPU.  This is an issue with RTEMS
since normally you can specify on a per task basis whether or not the FPU
context is saved/restored.  When the compiler surprises you, weird things
happen. :)

I agree that this is undesirable behavior on an embedded system and should
be reported.  

So this is a bug in gcc 2.x, not in egcs, right?

--joel
Joel Sherrill                    Director of Research & Development
joel@OARcorp.com                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
   Support Available             (256) 722-9985



_______________________________________________
New CrossGCC FAQ: http://www.objsw.com/CrossGCC
_______________________________________________
To remove yourself from the crossgcc list, send
mail to crossgcc-request@cygnus.com with the
text 'unsubscribe' (without the quotes) in the
body of the message.