gcc/
2010-05-12 H.J. Lu <hongjiu.lu@intel.com>
PR target/44088
* config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.
gcc/testsuite/
2010-05-12 H.J. Lu <hongjiu.lu@intel.com>
PR target/44088
* gcc.target/i386/avx-cmpsd-1.c: New.
* gcc.target/i386/avx-cmpsd-2.c: Likewise.
* gcc.target/i386/avx-cmpss-1.c: Likewise.
* gcc.target/i386/avx-cmpss-2.c: Likewise.
* gcc.target/i386/sse-cmpss-1.c: Likewise.
* gcc.target/i386/sse2-cmpsd-1.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159319
138bc75d-0d04-0410-961f-
82ee72b054a4
+2010-05-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/44088
+ * config/i386/sse.md (*avx_vmmaskcmp<mode>3): New.
+
2010-05-12 Jakub Jelinek <jakub@redhat.com>
PR middle-end/44085
(set_attr "length_immediate" "1")
(set_attr "mode" "<MODE>")])
+(define_insn "*avx_vmmaskcmp<mode>3"
+ [(set (match_operand:SSEMODEF2P 0 "register_operand" "=x")
+ (vec_merge:SSEMODEF2P
+ (match_operator:SSEMODEF2P 3 "sse_comparison_operator"
+ [(match_operand:SSEMODEF2P 1 "register_operand" "x")
+ (match_operand:SSEMODEF2P 2 "nonimmediate_operand" "xm")])
+ (match_dup 1)
+ (const_int 1)))]
+ "AVX_VEC_FLOAT_MODE_P (<MODE>mode)"
+ "vcmp%D3s<ssemodesuffixf2c>\t{%2, %1, %0|%0, %1, %2}"
+ [(set_attr "type" "ssecmp")
+ (set_attr "prefix" "vex")
+ (set_attr "mode" "<ssescalarmode>")])
+
(define_insn "<sse>_vmmaskcmp<mode>3"
[(set (match_operand:SSEMODEF2P 0 "register_operand" "=x")
(vec_merge:SSEMODEF2P
+2010-05-12 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/44088
+ * gcc.target/i386/avx-cmpsd-1.c: New.
+ * gcc.target/i386/avx-cmpsd-2.c: Likewise.
+ * gcc.target/i386/avx-cmpss-1.c: Likewise.
+ * gcc.target/i386/avx-cmpss-2.c: Likewise.
+ * gcc.target/i386/sse-cmpss-1.c: Likewise.
+ * gcc.target/i386/sse2-cmpsd-1.c: Likewise.
+
2010-05-12 Jakub Jelinek <jakub@redhat.com>
PR middle-end/44085
/* { dg-do run } */
/* { dg-require-effective-target avx } */
-/* { dg-options "-O2 -mavx -std=c99" } */
+/* { dg-options "-O2 -mavx" } */
#define CHECK_H "avx-check.h"
#define TEST avx_test
/* { dg-do run } */
/* { dg-require-effective-target avx } */
-/* { dg-options "-O2 -mavx -std=c99" } */
+/* { dg-options "-O2 -mavx" } */
#define CHECK_H "avx-check.h"
#define TEST avx_test
/* { dg-do run } */
/* { dg-options "-O2 -msse2 -std=c99" } */
-/* { dg-require-effective-target sse2 } */
#ifndef CHECK_H
#define CHECK_H "sse2-check.h"