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