From 6a556ba414832a4ec9b1ea66d2a40940ba74706e Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 30 Sep 2019 09:26:58 +0200 Subject: [PATCH] re PR target/91931 (ICE in decompose, at rtl.h:2277) PR target/91931 * config/i386/i386-expand.c (ix86_expand_adjust_ufix_to_sfix_si): Use gen_int_mode instead of GEN_INT. * gcc.target/i386/pr91931.c: New test. From-SVN: r276294 --- gcc/ChangeLog | 8 +++++++- gcc/config/i386/i386-expand.c | 2 +- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/pr91931.c | 5 +++++ 4 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 gcc/testsuite/gcc.target/i386/pr91931.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 864dc69..c93ea90 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,6 +1,12 @@ +2019-09-30 Jakub Jelinek + + PR target/91931 + * config/i386/i386-expand.c (ix86_expand_adjust_ufix_to_sfix_si): Use + gen_int_mode instead of GEN_INT. + 2019-09-29 Iain Sandoe - * config/darwin.c (gen_macho_low):Amend to include the mode + * config/darwin.c (gen_macho_low): Amend to include the mode argument. (machopic_indirect_data_reference): Amend gen_macho_low call to include mode argument diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c index 22c2823..5e377d6 100644 --- a/gcc/config/i386/i386-expand.c +++ b/gcc/config/i386/i386-expand.c @@ -1694,7 +1694,7 @@ ix86_expand_adjust_ufix_to_sfix_si (rtx val, rtx *xorp) OPTAB_DIRECT); else { - rtx two31 = GEN_INT (HOST_WIDE_INT_1U << 31); + rtx two31 = gen_int_mode (HOST_WIDE_INT_1U << 31, SImode); two31 = ix86_build_const_vector (intmode, 1, two31); *xorp = expand_simple_binop (intmode, AND, gen_lowpart (intmode, tmp[0]), diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 43dc4ce..85e718e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-09-30 Jakub Jelinek + + PR target/91931 + * gcc.target/i386/pr91931.c: New test. + 2019-09-29 Steven G. Kargl PR fortran/91641 diff --git a/gcc/testsuite/gcc.target/i386/pr91931.c b/gcc/testsuite/gcc.target/i386/pr91931.c new file mode 100644 index 0000000..f39b22e --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr91931.c @@ -0,0 +1,5 @@ +/* PR target/91931 */ +/* { dg-do compile } */ +/* { dg-options "-O1 -ftree-loop-vectorize -mavx -mno-avx2" } */ + +#include "../../gcc.dg/vect/pr32216.c" -- 2.7.4