This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Followup for reg_equiv_invariant patch: Fix PR39871

On 08/02/10 09:03, Bernd Schmidt wrote:
On 08/02/2010 05:00 PM, Jeff Law wrote:
BTW, the change to wipe spilled_pseudos at the beginning of reload is
clearly OK.
Actually, I think some IRA code wants to wipe it in the process of
trying to reallocate them.  So I think a gcc_assert that it's empty
afterwards is probably better once we fix whatever IRA bug we've found.
If IRA is able to find an alternate hard reg for the pseudo, then it'll clear that pseudo's entry from spilled_pseudos. However, a pseudo which is spilled for which no alternate hard reg is found will have its bit left on in spilled_pseudos.

The replace_pseudos_in probably is OK as well, I'm just
curious why we haven't seen the need for testing invariants in that code
prior to now.
Probably because now we're using costs, and pseudos that are
reg_equiv_invariant end up not allocated more often.  Plus, it was
replacing inside CALL_INSN_FUNCTION_USAGE, which probably doesn't
contain such pseudos very often.
Ahhh. OK.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]