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: Fix rtl sharing in ifcvt try 2



On Tuesday, Jul 1, 2003, at 13:55 US/Eastern, Jan Hubicka wrote:


On Mon, Jun 30, 2003 at 07:07:20PM +0200, Jan Hubicka wrote:
OK, so you mean to set centrelly these bits for all operands put into
if_info and clear it after processing ...

Yes. It reduces the number of places that you need to change, and thus the chance that you'll miss something.

Perhaps we need verifier thatn RTL is unshared.

Yes, this would be a good rtl-checking feature.

I am sending the patch. While copying the code I noticed that it unshares LABEL_REFs that is probably nonsense and also it walks ASM_OPERANDS multiple times. I've changed it in new copy and now I am testing symetric change to the old copy.

The patch passes bootstrap/make check on i386 without finding any
sharing. This is not the case for x86-64 where we share several subregs
after ifcvt. That should be fixed by the original ifcvt fix
OK?


I also had to do checking not before reload, but before insn splitting
as insn splitting introduces plenty of sharing. Should I care unsharing
in try_split?


Honza

If this goes in, how much time does this patch add, is it small like most other checking or is it large like rtl_checking?



Thanks, Andrew Pinski


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