[PATCH, i386]: Fix PR target/43103, xop-vpermil2pX tests failed

Uros Bizjak ubizjak@gmail.com
Wed Feb 17 10:58:00 GMT 2010


Hello!

2010-02-17  Uros Bizjak  <ubizjak@gmail.com>

	PR target/43103
	* config/i386/sse.md (xop_vpermil2<mode>3): Use avxmodesuffixf2c
	for insn mnemonic suffix.

testsuite/ChangeLog:

2010-02-17  Uros Bizjak  <ubizjak@gmail.com>

	PR target/43103	
	* gcc.target/i386/xop-check.h: Include m256-check.h.
	* gcc.target/i386/xop-vpermil2ps-1.c: Include x86intrin.h.
	* gcc.target/i386/xop-vpermil2ps-256-1.c: Ditto.
	* gcc.target/i386/xop-vpermil2pd-1.c: Ditto.
	* gcc.target/i386/xop-vpermil2pd-256-1.c: Ditto.

Tested on x86_64-pc-linux-gnu with XOP enabled toolchain, committed to
mainline SVN.

Uros.
-------------- next part --------------
Index: config/i386/sse.md
===================================================================
--- config/i386/sse.md	(revision 156823)
+++ config/i386/sse.md	(working copy)
@@ -11548,7 +11548,7 @@
 	   (match_operand:SI 4 "const_0_to_3_operand" "n")]
 	  UNSPEC_VPERMIL2))]
   "TARGET_XOP"
-  "vpermil2p<xopmodesuffixf2c>\t{%4, %3, %2, %1, %0|%0, %1, %2, %3, %4}"
+  "vpermil2p<avxmodesuffixf2c>\t{%4, %3, %2, %1, %0|%0, %1, %2, %3, %4}"
   [(set_attr "type" "sse4arg")
    (set_attr "length_immediate" "1")
    (set_attr "mode" "<MODE>")])
Index: testsuite/gcc.target/i386/xop-vpermil2ps-256-1.c
===================================================================
--- testsuite/gcc.target/i386/xop-vpermil2ps-256-1.c	(revision 156823)
+++ testsuite/gcc.target/i386/xop-vpermil2ps-256-1.c	(working copy)
@@ -4,6 +4,8 @@
 
 #include "xop-check.h"
 
+#include <x86intrin.h>
+
 #ifndef ZERO_MATCH
 #define ZERO_MATCH  3
 #endif
Index: testsuite/gcc.target/i386/xop-check.h
===================================================================
--- testsuite/gcc.target/i386/xop-check.h	(revision 156823)
+++ testsuite/gcc.target/i386/xop-check.h	(working copy)
@@ -1,6 +1,7 @@
 #include <stdlib.h>
 
 #include "cpuid.h"
+#include "m256-check.h"
 
 static void xop_test (void);
 
Index: testsuite/gcc.target/i386/xop-vpermil2pd-256-1.c
===================================================================
--- testsuite/gcc.target/i386/xop-vpermil2pd-256-1.c	(revision 156823)
+++ testsuite/gcc.target/i386/xop-vpermil2pd-256-1.c	(working copy)
@@ -4,6 +4,8 @@
 
 #include "xop-check.h"
 
+#include <x86intrin.h>
+
 #ifndef ZERO_MATCH
 #define ZERO_MATCH 1
 #endif
Index: testsuite/gcc.target/i386/xop-vpermil2ps-1.c
===================================================================
--- testsuite/gcc.target/i386/xop-vpermil2ps-1.c	(revision 156823)
+++ testsuite/gcc.target/i386/xop-vpermil2ps-1.c	(working copy)
@@ -4,6 +4,8 @@
 
 #include "xop-check.h"
 
+#include <x86intrin.h>
+
 #ifndef ZERO_MATCH
 #define ZERO_MATCH  1
 #endif
Index: testsuite/gcc.target/i386/xop-vpermil2pd-1.c
===================================================================
--- testsuite/gcc.target/i386/xop-vpermil2pd-1.c	(revision 156823)
+++ testsuite/gcc.target/i386/xop-vpermil2pd-1.c	(working copy)
@@ -4,6 +4,8 @@
 
 #include "xop-check.h"
 
+#include <x86intrin.h>
+
 #ifndef ZERO_MATCH
 #define ZERO_MATCH  2
 #endif


More information about the Gcc-patches mailing list