This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/46590] [4.6/4.7/4.8 Regression] long compile time with -O2 and many loops
- From: "steven at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 21 Aug 2012 09:42:42 +0000
- Subject: [Bug tree-optimization/46590] [4.6/4.7/4.8 Regression] long compile time with -O2 and many loops
- Auto-submitted: auto-generated
- References: <bug-46590-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46590
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |steven at gcc dot gnu.org
--- Comment #23 from Steven Bosscher <steven at gcc dot gnu.org> 2012-08-21 09:42:42 UTC ---
(In reply to comment #13)
> The I/O parts of the FRE cost are due to value-numbering stores in
> visit_reference_op_store. They can be drastically cut by an equivalent
> of (not generating code)
>
> Index: trans-io.c
> ===================================================================
> --- trans-io.c (revision 167111)
> +++ trans-io.c (working copy)
> @@ -1670,6 +1670,7 @@ build_dt (tree function, gfc_code * code
> gfc_init_block (&post_iu_block);
>
> var = gfc_create_var (st_parameter[IOPARM_ptype_dt].type, "dt_parm");
> + gfc_add_modify (&block, var, build_constructor (TREE_TYPE (var), NULL));
>
> set_error_locus (&block, var, &code->loc);
>
You didn't post/commit this, but it looks like a reasonable change to me.