[PATCH] negv{32qi,16hi,8si,4di}

Jakub Jelinek jakub@redhat.com
Fri Oct 14 14:57:00 GMT 2011


Hi!

This patch allows to vectorize negations using 32-byte vectors.

2011-10-14  Jakub Jelinek  <jakub@redhat.com>

	* config/i386/sse.md (neg<mode>2): Use VI_AVX2 iterator instead
	of VI_128.

--- gcc/config/i386/sse.md.jj	2011-10-14 13:05:58.000000000 +0200
+++ gcc/config/i386/sse.md	2011-10-14 13:56:55.000000000 +0200
@@ -4860,10 +4860,10 @@ (define_insn "*vec_concatv2df"
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
 (define_expand "neg<mode>2"
-  [(set (match_operand:VI_128 0 "register_operand" "")
-	(minus:VI_128
+  [(set (match_operand:VI_AVX2 0 "register_operand" "")
+	(minus:VI_AVX2
 	  (match_dup 2)
-	  (match_operand:VI_128 1 "nonimmediate_operand" "")))]
+	  (match_operand:VI_AVX2 1 "nonimmediate_operand" "")))]
   "TARGET_SSE2"
   "operands[2] = force_reg (<MODE>mode, CONST0_RTX (<MODE>mode));")
 

	Jakub



More information about the Gcc-patches mailing list