diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2016-10-06 00:02:05 +0200 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2016-10-06 00:02:05 +0200 |
commit | c617339332b3d31beb65aa35b5e4dca1f9c67824 (patch) | |
tree | 248a2e386c2d58cfd0d1f61d780c92d9f8c5b5df | |
parent | 50b01e1d461c4aeab4eaadc1e861517564a6db29 (diff) | |
download | gcc-c617339332b3d31beb65aa35b5e4dca1f9c67824.zip gcc-c617339332b3d31beb65aa35b5e4dca1f9c67824.tar.gz gcc-c617339332b3d31beb65aa35b5e4dca1f9c67824.tar.bz2 |
re PR target/77874 (two problems with gcc.target/i386/avx-1.c)
PR target/77874
* config/i386/sse.md (<mask_codefor><code><mode>3<mask_name>):
Remove wrong assert.
(<floatsuffix>float<sseintvecmodelower><mode>2<mask_name><round_name>:
Use <round_constraint> as operand 1 constraint.
From-SVN: r240814
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/i386/sse.md | 4 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9be5e48..36cbd0f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2016-10-05 Uros Bizjak <ubizjak@gmail.com> + + PR target/77874 + * config/i386/sse.md (<mask_codefor><code><mode>3<mask_name>): + Remove wrong assert. + (<floatsuffix>float<sseintvecmodelower><mode>2<mask_name><round_name>: + Use <round_constraint> as operand 1 constraint. + 2016-10-05 Jakub Jelinek <jakub@redhat.com> PR sanitizer/66343 diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 235969a..026054d 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -4666,7 +4666,7 @@ (define_insn "<floatsuffix>float<sseintvecmodelower><mode>2<mask_name><round_name>" [(set (match_operand:VF2_AVX512VL 0 "register_operand" "=v") (any_float:VF2_AVX512VL - (match_operand:<sseintvecmode> 1 "nonimmediate_operand" "vm")))] + (match_operand:<sseintvecmode> 1 "nonimmediate_operand" "<round_constraint>")))] "TARGET_AVX512DQ" "vcvt<floatsuffix>qq2pd\t{<round_mask_op2>%1, %0<mask_operand2>|%0<mask_operand2>, %1<round_mask_op2>}" [(set_attr "type" "ssecvt") @@ -11302,7 +11302,6 @@ gcc_assert (TARGET_AVX); case MODE_V4SF: gcc_assert (TARGET_SSE); - tmp = "andnps"; break; @@ -11420,7 +11419,6 @@ gcc_assert (TARGET_AVX); case MODE_V4SF: gcc_assert (TARGET_SSE); - gcc_assert (!<mask_applied>); tmp = "<logic>ps"; break; |