public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/34683] Fortran FE generated IL pessimizes middle-end IL and analysis Date: Sun, 06 Jan 2008 10:35:00 -0000 [thread overview] Message-ID: <20080106100759.10602.qmail@sourceware.org> (raw) In-Reply-To: <bug-34683-14773@http.gcc.gnu.org/bugzilla/> ------- Comment #7 from rguenth at gcc dot gnu dot org 2008-01-06 10:07 ------- Note that this shouldn't really be affected by strict aliasing or not. Note that the FE generated IL causes the first alias pass to emit too conservative alias info as well: # VUSE <MPT.5965_208230> D.6049_4652 = atmp.1110.data; D.6050_4653 = (complex(kind=4)[0:] *) D.6049_4652; D.6051_4654 = S.1113_289 + D.3340_4634; # VUSE <SFT.......> D.6052_4655 = (*D.6050_4653)[D.6051_4654]; I suppose the atmp.1110.data type is something like (void *), so the cast is required. But this really pessimizes the middle-end IL and it looks like the FE knows it will be complex(kind=4)[4] at the point of creation. Note fixing this will also improve optimization and thus runtime performance. I also see the FE creates lots of array temporaries: struct array2_complex(kind=4) atmp.1093; complex(kind=4) A.1094[4]; struct array2_complex(kind=4) atmp.1095; complex(kind=4) A.1096[4]; struct array2_complex(kind=4) atmp.1100; complex(kind=4) A.1101[4]; struct array2_complex(kind=4) atmp.1102; complex(kind=4) A.1103[4]; struct array2_complex(kind=4) atmp.1106; complex(kind=4) A.1107[4]; real(kind=4) D.3326; ... instead of re-using a single one. This also causes internal representation to blow up. So, to sum up, the situation could be significantly improved by improving the FE. (Like I noticed for I/O statements, where I provided a patch - that was not accepted - to share temporary variables created for the I/O context) As we already have bugs for the middle-end partitioning problems, I make this one a Fortran FE bug instead. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- BugsThisDependsOn| |33974 Component|tree-optimization |fortran Summary|compile-time problem with - |Fortran FE generated IL |fstrict-aliasing |pessimizes middle-end IL and | |analysis http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34683
next prev parent reply other threads:[~2008-01-06 10:08 UTC|newest] Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top 2008-01-05 23:51 [Bug tree-optimization/34683] New: compile-time problem with -fstrict-aliasing jaydub66 at gmail dot com 2008-01-06 0:37 ` [Bug tree-optimization/34683] " jaydub66 at gmail dot com 2008-01-06 0:55 ` pinskia at gcc dot gnu dot org 2008-01-06 6:47 ` jaydub66 at gmail dot com 2008-01-06 8:08 ` jaydub66 at gmail dot com 2008-01-06 9:09 ` jvdelisle at gcc dot gnu dot org 2008-01-06 10:08 ` rguenth at gcc dot gnu dot org 2008-01-06 10:35 ` rguenth at gcc dot gnu dot org [this message] 2008-01-06 11:10 ` [Bug fortran/34683] Fortran FE generated IL pessimizes middle-end IL and analysis burnus at gcc dot gnu dot org 2008-01-06 11:14 ` rguenth at gcc dot gnu dot org 2008-01-06 11:46 ` rguenth at gcc dot gnu dot org 2008-01-06 12:02 ` rguenth at gcc dot gnu dot org 2008-01-06 12:02 ` rguenth at gcc dot gnu dot org 2008-01-06 12:08 ` rguenth at gcc dot gnu dot org 2008-01-06 12:19 ` rguenth at gcc dot gnu dot org 2008-01-06 12:30 ` rguenth at gcc dot gnu dot org 2008-01-06 22:15 ` jaydub66 at gmail dot com 2008-01-06 22:24 ` rguenther at suse dot de 2008-01-06 22:24 ` [Bug middle-end/34683] [4.3 Regression] " pinskia at gcc dot gnu dot org 2008-01-07 14:05 ` [Bug tree-optimization/34683] " rguenth at gcc dot gnu dot org 2008-01-07 15:00 ` rguenth at gcc dot gnu dot org 2008-01-07 15:20 ` rguenth at gcc dot gnu dot org 2008-01-07 16:18 ` rguenth at gcc dot gnu dot org 2008-01-07 16:41 ` rguenth at gcc dot gnu dot org 2008-01-07 17:28 ` rguenth at gcc dot gnu dot org 2008-01-08 10:18 ` rguenth at gcc dot gnu dot org 2008-01-08 10:27 ` rguenth at gcc dot gnu dot org 2008-01-08 12:18 ` rguenth at gcc dot gnu dot org 2008-01-08 12:22 ` rguenth at gcc dot gnu dot org 2008-01-08 12:31 ` steven at gcc dot gnu dot org 2008-01-08 12:41 ` steven at gcc dot gnu dot org 2008-01-08 12:57 ` rguenth at gcc dot gnu dot org 2008-01-08 13:02 ` rguenth at gcc dot gnu dot org 2008-01-08 13:56 ` steven at gcc dot gnu dot org 2008-01-08 16:50 ` rguenth at gcc dot gnu dot org 2008-01-08 21:36 ` rguenth at gcc dot gnu dot org 2008-01-09 1:09 ` steven at gcc dot gnu dot org 2008-01-09 10:32 ` rguenther at suse dot de 2008-01-09 10:32 ` jaydub66 at gmail dot com 2008-01-09 10:35 ` [Bug tree-optimization/34683] [4.3 Regression] SSA rewriting in the loop unroller causes quadratic behavior steven at gcc dot gnu dot org 2008-01-10 15:05 ` rguenth at gcc dot gnu dot org 2008-01-10 15:29 ` rguenth at gcc dot gnu dot org 2008-01-10 16:00 ` rguenth at gcc dot gnu dot org 2008-01-10 17:57 ` rguenth at gcc dot gnu dot org 2008-01-10 18:05 ` rguenth at gcc dot gnu dot org 2008-01-10 18:08 ` [Bug tree-optimization/34683] " rguenth at gcc dot gnu dot org 2008-01-10 18:24 ` steven at gcc dot gnu dot org 2008-01-10 22:19 ` jaydub66 at gmail dot com 2008-01-10 23:45 ` steven at gcc dot gnu dot org 2008-01-11 13:58 ` rguenth at gcc dot gnu dot org 2008-01-12 8:39 ` rakdver at gcc dot gnu dot org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20080106100759.10602.qmail@sourceware.org \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).