[PATCH 2/6] i386: Use ix86_output_ssemov for DImode TYPE_SSEMOV

Jeff Law law@redhat.com
Thu Mar 12 03:32:40 GMT 2020


On Sat, 2020-02-29 at 06:16 -0800, H.J. Lu wrote:
> There is no need to set mode attribute to XImode since ix86_output_ssemov
> can properly encode xmm16-xmm31 registers with and without AVX512VL.
> 
> gcc/
> 
> 	PR target/89229
> 	* config/i386/i386.c (ix86_output_ssemov): Handle MODE_DI.
> 	* config/i386/i386.md (*movdi_internal): Call ix86_output_ssemov
> 	for TYPE_SSEMOV.  Remove ext_sse_reg_operand and TARGET_AVX512VL
> 	check.
> 
> gcc/testsuite/
> 
> 	PR target/89229
> 	* gcc.target/i386/pr89229-4a.c: New test.
> 	* gcc.target/i386/pr89229-4b.c: Likewise.
> 	* gcc.target/i386/pr89229-4c.c: Likewise.
So for alternatives 14, 15, 16 and !TARGET_SSE2 can't the insn_mode be V2SF? 
Isn't that going to trigger the gcc_unreachable in ix86_output_ssemov?



Jeff



More information about the Gcc-patches mailing list