Hello,
Patch in the bottom extends to EVEX constraints
of vec_set<mode>_0 insn pattern.
Bootstrapped.
AVX-512* tests on top of patch-set all pass
under simulator.
Is it ok for trunk?
gcc/
* config/i386/sse.md
(define_insn "vec_set<mode>_0"): Add EVEX version.
--
Thanks, K
diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md
index c9d6e00..5f2fe5b 100644
--- a/gcc/config/i386/sse.md
+++ b/gcc/config/i386/sse.md
@@ -6259,13 +6259,13 @@
;; see comment above inline_secondary_memory_needed function in i386.c
(define_insn "vec_set<mode>_0"
[(set (match_operand:VI4F_128 0 "nonimmediate_operand"
- "=x,x,x ,x,x,x,x ,x ,m ,m ,m")
+ "=v,v,v ,x,x,v,x ,x ,m ,m ,m")
(vec_merge:VI4F_128
(vec_duplicate:VI4F_128
(match_operand:<ssescalarmode> 2 "general_operand"
- " x,m,*r,m,x,x,*rm,*rm,!x,!*re,!*fF"))
+ " v,m,*r,m,x,v,*rm,*rm,!x,!*re,!*fF"))
(match_operand:VI4F_128 1 "vector_move_operand"
- " C,C,C ,C,0,x,0 ,x ,0 ,0 ,0")
+ " C,C,C ,C,0,v,0 ,x ,0 ,0 ,0")
(const_int 1)))]
"TARGET_SSE"
"@