https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109780

--- Comment #20 from Xi Ruoyao <xry111 at gcc dot gnu.org> ---
(In reply to H.J. Lu from comment #19)
> (In reply to Xi Ruoyao from comment #17)
> > (In reply to H.J. Lu from comment #16)
> > > Created attachment 55409 [details]
> > > A patch
> > > 
> > > I am stilling trying to find a small testcase.
> > 
> > The patch triggers an ICE building Spidermonkey 115b9 (it segfaults with GCC
> > trunk because of some unaligned vmovdqa):
> > 
> > 0x93297b ix86_finalize_stack_frame_flags
> >     ../../gcc/gcc/config/i386/i386.cc:8224
> > 0x162064c ix86_expand_epilogue(int)
> >     ../../gcc/gcc/config/i386/i386.cc:9405
> > 0x1b2e27f gen_epilogue()
> >     ../../gcc/gcc/config/i386/i386.md:17517
> > 0x160a815 target_gen_epilogue
> >     ../../gcc/gcc/config/i386/i386.md:17013
> > 0xf15e86 make_epilogue_seq
> >     ../../gcc/gcc/function.cc:5964
> > 0xf15f8b thread_prologue_and_epilogue_insns()
> >     ../../gcc/gcc/function.cc:6046
> > 0xf166c2 rest_of_handle_thread_prologue_and_epilogue
> >     ../../gcc/gcc/function.cc:6544
> > 0xf166c2 execute
> >     ../../gcc/gcc/function.cc:6625
> > 
> > The code at i386.cc:8224 reads:
> > 
> >   if (crtl->stack_realign_finalized)
> >     {
> >       /* After stack_realign_needed is finalized, we can't no longer
> >          change it.  */
> >       gcc_assert (crtl->stack_realign_needed == stack_realign);
> >       return;
> >     }
> > 
> > I'm not sure if the assert should be dropped or it's more difficult.
> > 
> > Or can we just force to use unaligned vector moves for block operations
> > until we can find a better solution?  It's at least better than leaving the
> > vectorized block moving broken and forcing people trying to disable the
> > feature.
> 
> Do you have a testcase?

It's too large and I'm running cvise on it.

Reply via email to