From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26742 invoked by alias); 20 Oct 2011 06:50:25 -0000 Received: (qmail 26731 invoked by uid 22791); 20 Oct 2011 06:50:24 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,TW_BG,TW_FC,TW_NX X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 20 Oct 2011 06:50:09 +0000 From: "xunxun1982 at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug libfortran/50016] [4.7 Regression] Drastic I/O performance regression on Windows Date: Thu, 20 Oct 2011 06:50:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libfortran X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: normal X-Bugzilla-Who: xunxun1982 at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P4 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.7.0 X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-10/txt/msg02075.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50016 --- Comment #18 from xunxun 2011-10-20 06:49:19 UTC --- (In reply to comment #17) > Author: burnus > Date: Wed Oct 19 17:27:03 2011 > New Revision: 180199 > > URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=180199 > Log: > 2011-10-19 Janne Blomqvist > Kai Tietz > Tobias Burnus > > PR fortran/50016 > * io/unix.h (flush_sync): Add new libgfortran-internal > * prototype. > * io/unix.c (flush_sync): New function, which calls sflush and > on MinGW(-w64) also _commit. > (flush_all_units, flush_all_units_1): Replace sflush/_commit by > flush_sync. > * io/file_pos.c (st_flush): Replace sflush/_commit by > * flush_sync. > * io/intrinsics.c (flush_i4, flush_i8): Ditto. > > > Modified: > branches/gcc-4_6-branch/libgfortran/ChangeLog > branches/gcc-4_6-branch/libgfortran/io/file_pos.c > branches/gcc-4_6-branch/libgfortran/io/intrinsics.c > branches/gcc-4_6-branch/libgfortran/io/unix.c > branches/gcc-4_6-branch/libgfortran/io/unix.h Will the rev 180199 merge into gcc4.6.2 release? Because the first 4.6.2 RC doesn't contain the modify, gcc-4.6.2-RC-20111019 libgfortran build on mingw/mingw64 can cause: libtool: compile: i686-w64-mingw32-gcc -L/mingw/i686-w64-mingw32/lib -L/mingw/mingw/lib -isystem /mingw/i686-w64-mingw32/include -isystem /mingw/mingw/include -DHAVE_CONFIG_H -I. -I../.././libgfortran -iquote../.././libgfortran/io -I../.././libgfortran/../gcc -I../.././libgfortran/../gcc/config -I../.././libgfortran/../libquadmath -I../../host-i686-w64-mingw32/gcc -D_GNU_SOURCE -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran-rules -ffunction-sections -fdata-sections -g -pipe -O2 -I/mingw/include -MT file_pos.lo -MD -MP -MF .deps/file_pos.Tpo -c ../.././libgfortran/io/file_pos.c -o file_pos.o ../.././libgfortran/io/file_pos.c: In function 'st_flush': ../.././libgfortran/io/file_pos.c:457:20: error: 'stream' has no member named 'fd' I would hope the next 4.6.2 RC or release fix the problem. Thanks.