This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Building glibc for a mult-lib --target=m68k-linux


>it is clear that we need extra handling for 68060, but it is not 
>obvious for the 68040. Iirc the only (gcc relevant) differences 
>between 68020/68881 and 68040 are a few FPU operations which are
>sufficiently slow that extra emulation overhead should not hurt 
>much - never benchmarked it but I would hope the Motorolla provided 
>fpsp040 emulation performs at least as good (preformance and 
>correctness wise) as any library written in C.
>My 68040 manual lists them as: f*cos*,f*sin*,f*tan*,fetox*,fgetexp
>fint,ftwotox,fintrz,flog*,fmovecr,ftentox,fmod,frem,fscale.. is any
>of that likely to be performance critical for gcc/g++/java/glibc libs?

If you're going to special case the '060, you may as well be complete
and special case the '040.

Besides, if you build the library for -m68881 and run it on an '040,
you add *all* the trap overhead.  If you look at the constants in
fmovecr, you'll see such common ones as zero, pi, e, 10.0, etc. so any
float code will probably have to trap to load any of these constants
into an %fp register.

-- 
Peter Barada                                   Peter.Barada@motorola.com
Wizard                                         781-852-2768 (direct)
WaveMark Solutions(wholly owned by Motorola)   781-270-0193 (fax)


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