This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/39076] internal compiler error when cross-compiling flac
- From: "ramana dot r at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 4 Feb 2009 08:34:15 -0000
- Subject: [Bug target/39076] internal compiler error when cross-compiling flac
- References: <bug-39076-17263@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #6 from ramana dot r at gmail dot com 2009-02-04 08:34 -------
(In reply to comment #5)
> (In reply to comment #4)
>
> > Looking at the dumps this rtx is generated by the rename registers pass in
> > 4.3.x . In trunk however rename register does not generate this rtx and hence
> > there is no problem. It could still be latent but one has to dig deeper.
>
> A quick comparison of trunk and gcc 4.3 branch shows the following patch being
> applied in trunk vs. the 4.3 branch.
>
> http://gcc.gnu.org/ml/gcc-patches/2008-04/msg01577.html
>
> A quick check with the patch at
>
> ramana@numenor:~/cos/mycos/gcc/gcc$ svn diff -r137128:137235 regrename.c
> Index: regrename.c
> ===================================================================
> --- regrename.c (revision 137128)
> +++ regrename.c (revision 137235)
> @@ -812,7 +812,7 @@
> OP_IN, 0);
>
> for (i = 0; i < recog_data.n_dups; i++)
> - *recog_data.dup_loc[i] = copy_rtx (old_dups[i]);
> + *recog_data.dup_loc[i] = old_dups[i];
> for (i = 0; i < n_ops; i++)
> *recog_data.operand_loc[i] = old_operands[i];
> if (recog_data.n_dups)
>
Related discussions and patch proposed here.
http://gcc.gnu.org/ml/gcc/2009-02/msg00074.html
This is essentially a backport of a patch in trunk - A full bootstrap and
regression test is underway. I've confirmed that this patch fixes the ICE
mentioned with the ARM port.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39076