This is the mail archive of the gcc-patches@gcc.gnu.org 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: Avoid invalid RTL sharing


Hi Jan,

On Thu, 9 Nov 2006, Jan Hubicka wrote:
>
> 	* cse.c (cse_process_notes): Copy the propagated value.
> 	* local-alloc.c (update_equiv_regs): Copy the memory RTX to be used
> 	in REG_EQUIV notes.
> 	* gcse.c (try_replace_reg): Copy the replacement.
> 	* i386.c (emit_i387_cw_initialization): Copy stored_mode
> 	(assign_386_stack_local): Always return copied memory expression
> 	* function.c (instantiate_virtual_regs_in_insn): Copy the operand
> 	duplicates.

This is OK for mainline.  Thanks for taking the time to hunt down these
internal invariant violations.  Presumably, there'll be negligible effects
on memory usage with this change?  If your memory usage tester complains
after you check this in, there are some places we can be clever to avoid
calling copy_rtx, but I doubt this is worth the additional effort.

p.s. Period after "Copy stored_mode" in the i386.c ChangeLog entry above.

Roger
--


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