From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 40797 invoked by alias); 8 Apr 2015 10:13:41 -0000 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 Received: (qmail 40685 invoked by uid 48); 8 Apr 2015 10:13:37 -0000 From: "ubizjak at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/65693] [4.8/4.9/5 Regression] ICE in assign_by_spills, at lra-assigns.c:1419 Date: Wed, 08 Apr 2015 10:13:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: ra X-Bugzilla-Severity: normal X-Bugzilla-Who: ubizjak at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.8.5 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-04/txt/msg00535.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D65693 --- Comment #7 from Uro=C5=A1 Bizjak --- gcc-4.9 combines udivmoddi4 to : (insn 30 5 8 2 (set (reg:DI 103) (const_int 16 [0x10])) pr65693.ii:6 -1 (nil)) [...] (insn 9 8 10 2 (parallel [ (set (reg:DI 94) (udiv:DI (reg:DI 92) (reg:DI 103))) (set (reg:DI 95) (umod:DI (reg:DI 92) (reg:DI 103))) (clobber (reg:CC 17 flags)) ]) pr65693.ii:6 348 {*udivmoddi4} (expr_list:REG_DEAD (reg:DI 103) (expr_list:REG_DEAD (reg:DI 92) (expr_list:REG_UNUSED (reg:DI 95) (expr_list:REG_UNUSED (reg:CC 17 flags) (nil)))))) Trying 30 -> 9: ... Successfully matched this instruction: (set (reg:DI 94) (lshiftrt:DI (reg:DI 92) (const_int 4 [0x4]))) For some reason gcc-5 doesn't do this conversion anymore. >>From gcc-bugs-return-482984-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Wed Apr 08 10:16:29 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 47620 invoked by alias); 8 Apr 2015 10:16:28 -0000 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 Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 47581 invoked by uid 48); 8 Apr 2015 10:16:24 -0000 From: "a.vogt at fulguritus dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/65684] Wrong error message when writing to a string Date: Wed, 08 Apr 2015 10:16:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 4.9.3 X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: a.vogt at fulguritus dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: jvdelisle at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-04/txt/msg00536.txt.bz2 Content-length: 898 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65684 --- Comment #8 from Alexander Vogt --- I think this happens in io/transfer.c: 413 void * 414 read_block_form (st_parameter_dt *dtp, int * nbytes) 415 { ... 419 if (!is_stream_io (dtp)) 420 { 421 if (dtp->u.p.current_unit->bytes_left < (gfc_offset) *nbytes) 422 { ... 430 if (unlikely (dtp->u.p.current_unit->pad_status == PAD_NO) 431 && !is_internal_unit (dtp)) 432 { 433 /* Not enough data left. */ 434 generate_error (&dtp->common, LIBERROR_EOR, NULL); 435 return NULL; 436 } 437 } ... I'm a little confused, though... Aren't we writing to an internal unit here? This case seems not to be covered.