This is the mail archive of the gcc-patches@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: [fortran, patch] IEEE intrinsic modules (ping)


Steve Kargl <sgk@troutmask.apl.washington.edu> writes:

> On Tue, Jun 24, 2014 at 10:26:27PM +0200, FX wrote:
>> >> 3. Does the attached updated patch (libgfortran only, without
>> >> regenerated files) fix the problem?
>> > 
>> > I'll test it when my regtesting is completed.  But, a scan of
>> > the configure.host re-arrangement suggests that it should work.
>> 
>> OK.
>> 
>> If you have some spare cycles, could you then also check it by modifying configure.host so that it uses the updated config/fpu-sysv.h in my patch? I would like to make sure I don?t break anything, but I don?t have access to a Solaris system (and my earlier calls for someone to test it for me were unanswered, so I don?t have much hope there).
>> 
>
> Yes, I'll check the configure.host and fpu-sysv.h changes.

I'm currently moving to a new flat, so not much time for GCC work.

Unfortunately, while the patch works fine on Solaris/x86, it broke
Solaris/SPARC bootstrap for trivial reasons: contrary to the ChangeLog,
configure and config.h.in weren't regenerated, thus FPSETSTICKY
wasn't defined.

The following patch corrects this, at the same time fixing this warning:

/fpu-target.h:451:3: warning: implicit declaration of function 'assert' [-Wimplicit-function-declaration]
   assert (sizeof(fpu_state_t) <= GFC_FPE_STATE_BUFFER_SIZE);
   ^

It returns sparc-sun-solaris2.1[01] to bootstrap, thus installed as
obvious.

There's one testsuite failure in this configuration:

FAIL: gfortran.dg/ieee/ieee_6.f90   -O0  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O1  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O2  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O3 -fomit-frame-pointer  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O3 -fomit-frame-pointer -funroll-loops  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -O3 -g  execution test
FAIL: gfortran.dg/ieee/ieee_6.f90   -Os  execution tes

The test aborts at l.47, but unfortunately I cannot print mode in gdb 7.7.

	Rainer


2014-07-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* configure, config.h.in: Regenerate.
	* config/fpu-sysv.h: Include <assert.h>.

diff --git a/libgfortran/config/fpu-sysv.h b/libgfortran/config/fpu-sysv.h
--- a/libgfortran/config/fpu-sysv.h
+++ b/libgfortran/config/fpu-sysv.h
@@ -25,6 +25,8 @@ see the files COPYING3 and COPYING.RUNTI
 
 /* FPU-related code for SysV platforms with fpsetmask().  */
 
+#include <assert.h>
+
 /* BSD and Solaris systems have slightly different types and functions
    naming.  We deal with these here, to simplify the code below.  */
 
-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

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