From 7cda498920dbf244e9e06fdb2fc710a118a8c033 Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Fri, 23 Oct 2020 08:21:39 +0200 Subject: [PATCH] Revert "middle-end/97521 - fix VECTOR_CST expansion" 2020-10-23 Richard Biener PR middle-end/97521 * expr.c (expand_expr_real_1): Revert last change. * gcc.target/i386/pr97521.c: Remove. This reverts commit b960a9c83a93b58a84a7a370002990810675ac5d. --- gcc/expr.c | 5 +---- gcc/testsuite/gcc.target/i386/pr97521.c | 27 ------------------------- 2 files changed, 1 insertion(+), 31 deletions(-) delete mode 100644 gcc/testsuite/gcc.target/i386/pr97521.c diff --git a/gcc/expr.c b/gcc/expr.c index d87bda777d0..9d951e82522 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -10356,10 +10356,7 @@ expand_expr_real_1 (tree exp, rtx target, machine_mode tmode, scalar_int_mode int_mode; if (is_int_mode (mode, &int_mode)) { - if (VECTOR_BOOLEAN_TYPE_P (TREE_TYPE (exp)) - && maybe_ne (TYPE_PRECISION (TREE_TYPE (TREE_TYPE (exp))) - * TYPE_VECTOR_SUBPARTS (TREE_TYPE (exp)), - GET_MODE_PRECISION (int_mode))) + if (VECTOR_BOOLEAN_TYPE_P (TREE_TYPE (exp))) return const_scalar_mask_from_tree (int_mode, exp); else { diff --git a/gcc/testsuite/gcc.target/i386/pr97521.c b/gcc/testsuite/gcc.target/i386/pr97521.c deleted file mode 100644 index 804ffd61e13..00000000000 --- a/gcc/testsuite/gcc.target/i386/pr97521.c +++ /dev/null @@ -1,27 +0,0 @@ -/* { dg-do run } */ -/* { dg-options "-O -mno-sse2" } */ - -typedef unsigned char __attribute__ ((__vector_size__ (8))) V; -typedef unsigned long long __attribute__ ((__vector_size__ (16))) W; - -V c; -W d, e; - -V -foo (W f) -{ - W g = (W) { 0, 209 } <7 <= (0 < f); - W h = e + g + d; - V j = (V) (h[0]) + (V) c; - return j; -} - -int -main (void) -{ - V x = foo ((W) { 3 }); - for (unsigned i = 0; i < sizeof (x); i++) - if (x[i] != 0xff) - __builtin_abort (); - return 0; -} -- 2.30.2