From dbb574191a4480ba0d12c9812c2b9d7b5d9d2803 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 29 Oct 2019 08:49:46 +0100 Subject: [PATCH] re PR target/92258 (ICE: output_operand: invalid %-code) PR target/92258 * config/i386/sse.md (iptr): Revert 2019-10-27 change. * gcc.target/i386/pr92258.c: New test. From-SVN: r277551 --- gcc/ChangeLog | 5 +++++ gcc/config/i386/sse.md | 3 ++- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/i386/pr92258.c | 11 +++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.target/i386/pr92258.c diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8b8a6c6f647..a116348939c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-10-29 Jakub Jelinek + + PR target/92258 + * config/i386/sse.md (iptr): Revert 2019-10-27 change. + 2019-10-28 Martin Sebor * tree-ssa-strlen.c (get_addr_stridx): Add argument and use it. diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 06cadc1cf8c..62c68053563 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -850,7 +850,8 @@ (V16QI "b") (V8HI "w") (V4SI "k") (V2DI "q") (V16SF "k") (V8DF "q") (V8SF "k") (V4DF "q") - (V4SF "k") (V2DF "q")]) + (V4SF "k") (V2DF "q") + (SF "k") (DF "q")]) ;; Mapping of vector modes to VPTERNLOG suffix (define_mode_attr ternlogsuffix diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a3ef28625e4..a44e5ddf8fc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-10-29 Jakub Jelinek + + PR target/92258 + * gcc.target/i386/pr92258.c: New test. + 2019-10-28 Martin Sebor * gcc.dg/strlenopt-89.c: New test. diff --git a/gcc/testsuite/gcc.target/i386/pr92258.c b/gcc/testsuite/gcc.target/i386/pr92258.c new file mode 100644 index 00000000000..4e78ea3d1ea --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr92258.c @@ -0,0 +1,11 @@ +/* PR target/92258 */ +/* { dg-do compile } */ +/* { dg-options "-masm=intel -msse2" } */ + +typedef double V __attribute__ ((__vector_size__ (16))); + +int +foo (V x, V y) +{ + return __builtin_ia32_ucomisdeq (x, y); +} -- 2.30.2