[Patch, fortran] PR24518 and PR24520 - Improvements to MOD an d DOT_PRODUCT

THOMAS Paul Richard 169137 prthomas@drfccad.cea.fr
Tue Nov 15 11:33:00 GMT 2005


Tobi,

You, sir, are a scholar and a gentleman...
> 
> I think you have failed to init them sufficiently.  Have a look at
> gfc_init_builtin_functions in f95-lang.c.  From a brief 
> comparison it looks
> like the functions that are non-NULL in your list are exactly the ones
> initialized there.
> 

... between f95-lang.c and mathbuiltins.def, they are all there.

In fact, adding FMOD to mathbuiltins.def, registering GFC_ISYM_FMOD in
gfortran.h and using the codelet of the previous mail, results in:

            {
              real8 D.594;
              real8 D.593;

              D.593 = e;
              D.594 = a;
              d = __builtin_fmod (D.593, D.594);
            }

With this, MOD gives results over a much larger range of quotients and pix.f
runs in 48s (-ffast-math -O3 -malign-double -funroll-loops), versus 60s for
DEC6.0(/FAST) and
89s for trunk (-ffast-math -O3 -malign-double -funroll-loops).

Now to clean it up!

Paul T
  



More information about the Fortran mailing list