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: SRA: don't drop clobbers


Hi,

On Mon, Nov 03, 2014 at 10:46:49PM +0100, Marc Glisse wrote:
> On Mon, 3 Nov 2014, Marc Glisse wrote:
> 
> >On Mon, 3 Nov 2014, Martin Jambor wrote:
> >
> >>I just applied your patch on top of trunk revision 217032 on my
> >
> >Ah, that explains it, thanks. This patch is a follow-up to
> >r217034. Still, I didn't expect the ICE you are seeing by applying
> >this patch to older trunk, I'll try to reproduce that.
> 
> It is TODO_update_address_taken that used to remove clobbers, and as
> you said ESRA goes straight to TODO_update_ssa, which explains why
> the clobbers caused trouble. In any case, after r217034, update_ssa
> should handle clobbers much better. Could you take an other look
> based on a more recent trunk, please?
> 

Sorry for the delay.  Anyway, on the current trunk (i.e. Tuesday
checkout) the patch works as expected, there are assignments from
default definitions now and even though we do not warn as we should,
the patch improves the generated code.  The function foo from the
testcase is optimized to "return SR.1_2(D);" as soon as release_ssa
now, whereas unpatched trunk leaves an undefined load even in the
optimized dump.

Thus, I like the patch and given that you posted it well before stage1
end, I'd like to see it committed.  Richi, can you have a look and
perhaps approve it?

Thanks,

Martin


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