This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: state of 3.2.1-pre: how far from release?
- From: Ulrich Weigand <weigand at immd1 dot informatik dot uni-erlangen dot de>
- To: dje at watson dot ibm dot com
- Cc: gcc at gcc dot gnu dot org, rth at redhat dot com, dan at dberlin dot org
- Date: Wed, 6 Nov 2002 00:25:07 +0100 (MET)
- Subject: Re: state of 3.2.1-pre: how far from release?
David Edelsohn wrote:
> On the GCC 3.2 branch, reload_as_needed() is entered with the
>instruction still containing pseudos. eliminate_regs_in_insn()
>substitutes a hard reg for the first use of the pseudo, but leaves the
>others untouched. eliminate_regs_in_insn() recognizes the instruction and
>recog_data.n_operands is 3, so it only loops over three locations.
We had the a similar problem on s390. As I recall from the analysis
done at the time, this appeared to be a fundamental deficiency
in reload in that it simply would not perform replacements within
a match_parallel correctly. I'm not sure how to fix this.
I've added a workaround to just disable the generation of any
load_multiple pattern that might need such replacements (i.e.
if an eliminable register occurs as part of the address).
Bye,
Ulrich
--
Dr. Ulrich Weigand
weigand@informatik.uni-erlangen.de