aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Glisse <marc.glisse@inria.fr>2014-10-14 15:40:36 +0200
committerMarc Glisse <glisse@gcc.gnu.org>2014-10-14 13:40:36 +0000
commit48d3af1259c6365615027708f259f04c8ac292fc (patch)
tree5c247f11741c65f44c7f668a057567290f31f048
parentebe87abf2bdad817320b230638365ebcfd2bda1d (diff)
downloadgcc-48d3af1259c6365615027708f259f04c8ac292fc.zip
gcc-48d3af1259c6365615027708f259f04c8ac292fc.tar.gz
gcc-48d3af1259c6365615027708f259f04c8ac292fc.tar.bz2
typeck.c (cp_build_unary_op): Accept float vectors.
2014-10-14 Marc Glisse <marc.glisse@inria.fr> gcc/cp/ * typeck.c (cp_build_unary_op) [TRUTH_NOT_EXPR]: Accept float vectors. gcc/testsuite/ * g++.dg/ext/vector9.C: Test ! with float vectors. From-SVN: r216201
-rw-r--r--gcc/cp/ChangeLog4
-rw-r--r--gcc/cp/typeck.c2
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/g++.dg/ext/vector9.C1
4 files changed, 10 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index c94916c..50132ff 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,7 @@
+2014-10-14 Marc Glisse <marc.glisse@inria.fr>
+
+ * typeck.c (cp_build_unary_op) [TRUTH_NOT_EXPR]: Accept float vectors.
+
2014-10-13 H.J. Lu <hongjiu.lu@intel.com>
* mangle.c (mangle_conv_op_name_for_type): Cast elements to
diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c
index b4e6824..5b4f533 100644
--- a/gcc/cp/typeck.c
+++ b/gcc/cp/typeck.c
@@ -5723,7 +5723,7 @@ cp_build_unary_op (enum tree_code code, tree xarg, int noconvert,
break;
case TRUTH_NOT_EXPR:
- if (VECTOR_INTEGER_TYPE_P (TREE_TYPE (arg)))
+ if (VECTOR_TYPE_P (TREE_TYPE (arg)))
return cp_build_binary_op (input_location, EQ_EXPR, arg,
build_zero_cst (TREE_TYPE (arg)), complain);
arg = perform_implicit_conversion (boolean_type_node, arg,
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 59aca0d..2f08ffe 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2014-10-14 Marc Glisse <marc.glisse@inria.fr>
+
+ * g++.dg/ext/vector9.C: Test ! with float vectors.
+
2014-10-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/63512
diff --git a/gcc/testsuite/g++.dg/ext/vector9.C b/gcc/testsuite/g++.dg/ext/vector9.C
index 42d150d..b1216c2 100644
--- a/gcc/testsuite/g++.dg/ext/vector9.C
+++ b/gcc/testsuite/g++.dg/ext/vector9.C
@@ -7,4 +7,5 @@ void foo()
{
v4f v;
!(v4i)v;
+ !v;
}