On Wed, Oct 10, 2018 at 10:48 AM Jakub Jelinek <ja...@redhat.com> wrote: > > On Fri, Oct 05, 2018 at 06:49:58PM +0200, Uros Bizjak wrote: > > This constraint is used in move patterns which do not depend on TARGET_SSE. > > > > Also, rename "vector_move_operand" to "nonimm_or_0_operand". > > > > 2018-10-05 Uros Bizjak <ubiz...@gmail.com> > > > > * config/i386/constraints.md ("C"): Do not depend on TARGET_SSE. > > * config/i386/predicates.md (nonimm_or_0_operand): Rename > > from vector_move_operand. Update all uses. > > > > Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. > > > > Committed to mainline SVN. > > This seems to have broken a bunch of tests for 32-bit gcc not configured to > default to -msse/-msse2, guess it should be reproduceable with > make check-gcc RUNTESTFLAGS='--target_board=unix/-m32/-mno-sse i386.exp' > > +FAIL: gcc.target/i386/3dnow-1.c (internal compiler error) > +FAIL: gcc.target/i386/3dnow-1.c (test for excess errors) > +FAIL: gcc.target/i386/mmx-8.c (internal compiler error) > +FAIL: gcc.target/i386/mmx-8.c (test for excess errors) > +UNRESOLVED: gcc.target/i386/mmx-8.c compilation failed to produce executable > +FAIL: gcc.target/i386/pr14552.c (internal compiler error) > +FAIL: gcc.target/i386/pr14552.c (test for excess errors) > +UNRESOLVED: gcc.target/i386/pr14552.c scan-assembler-not %mm > > The ICEs are always similar: > error: could not split insn > (insn:TI 7 30 21 2 (set (mem/c:V2SF (plus:SI (reg/f:SI 7 sp) > (const_int 8 [0x8])) [0 S8 A64]) > (const_vector:V2SF [ > (const_double:SF 0.0 [0x0.0p+0]) > (const_double:SF 0.0 [0x0.0p+0]) > ])) "/home/jakub/src/gcc/obj27/gcc/include/mm3dnow.h":172:39 835 > {*movv2sf_internal} > (nil))
The patch for PR87573 [1] should fix all these ICEs. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87573#c2 Uros.