[PATCH-v2] sparc: Rename NGMP to GR740 and add configs for UT699, UT700, and GR712RC
Sebastian Huber
sebastian.huber at embedded-brains.de
Wed Jul 19 17:36:01 UTC 2017
----- Jiri Gaisler <jiri at gaisler.se> schrieb:
>
>
> On 07/19/2017 04:04 PM, Sebastian Huber wrote:
> > Hello Jiri,
> >
> > I fixed a couple of tests. One remaining failure on the leon2 is mathf:
> >
> > *** BEGIN OF TEST MATHF ***
> > acosf : 1.570796
> > acoshf : -nan
> > asinf : 1.570796
> > asinhf : 0.881374
> > atanf : 0.665774
> > atan2f : 0.785398
> > atanhf : inf
> > cbrtf : 3.000000
> > ceilf : 4.000000
> > copysignf : -3.500000
> > cosf : -0.000000
> > coshf : 2.509179
> > erff : 1.000000
> > erfcf : 0.000000
> > expf : 1.521962
> > exp2f : 1.337928
> > expm1f : 0.000420
> > fabsf : 1.123000
> > fdimf : 0.000000
> > floorf : 0.000000
> > floorf : -1.000000
> >
> > Breakpoint 1, 0x40004044 in fmaf (x=x at entry=2.0999999, y=2.20000005,
> > z=3.00999999) at
> > /home/EB/sebastian_h/archive/gcc-git/newlib/libm/common/sf_fma.c:25
> > 25 return (float) (((double) x * (double) y) + (double) z);
> > (gdb) disas 0x40004044
> > Dump of assembler code for function fmaf:
> > 0x40004024 <+0>: add %sp, -80, %sp
> > 0x40004028 <+4>: st %o1, [ %sp + 0x4c ]
> > 0x4000402c <+8>: ld [ %sp + 0x4c ], %f8
> > 0x40004030 <+12>: st %o0, [ %sp + 0x4c ]
> > 0x40004034 <+16>: ld [ %sp + 0x4c ], %f9
> > 0x40004038 <+20>: st %o2, [ %sp + 0x4c ]
> > 0x4000403c <+24>: fsmuld %f8, %f9, %f0
> > 0x40004040 <+28>: ld [ %sp + 0x4c ], %f8
> > => 0x40004044 <+32>: fstod %f8, %f8
> > 0x40004048 <+36>: add %sp, 0x50, %sp
> > 0x4000404c <+40>: faddd %f0, %f8, %f0
> > 0x40004050 <+44>: retl
> > 0x40004054 <+48>: fdtos %f0, %f0
> > End of assembler dump.
> > (gdb) p/x $fsr
> > $1 = 0xe660
> >
> > Is fstod implemented on the SIS?
> fstod is implemented.
>
> The instruction that takes the trap is at 0x40004040, which is ld [ %sp
> + 0x4c ], %f8. Remember that SPARC has deferred FPU trap model so it is
> actually the previous FPU instruction FSMULD at 0x4000403c that
> generated the trap. This instruction is not implemented in sis, and I am
> not sure it is even implemented in some leon2/leon3 hardware. I will
> check and report back ...
>
> Jiri.
>
I use -mcpu=leon -mfix-at697f and according to the manual we have:
The AT697F floating-point unit is based on the MEIKO core and implements the SPARC floating-point instruction-set defined in the SPARC Architecture Manual version 8.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the devel
mailing list