Summary: | [6/7 Regression] ICE on trunk gcc with knl target | ||
---|---|---|---|
Product: | gcc | Reporter: | Anton Mitrokhin <anton.mitrokhin> |
Component: | middle-end | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | izamyatin, kirill.yukhin |
Priority: | P2 | ||
Version: | 7.0 | ||
Target Milestone: | 6.2 | ||
Host: | Target: | ||
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2016-05-25 00:00:00 | |
Bug Depends on: | |||
Bug Blocks: | 103035 | ||
Attachments: | Reproducer |
Description
Anton Mitrokhin
2016-05-25 16:52:51 UTC
Confirmed with gcc6 and trunk. This looks similar to PR70251 but this time transformation is performed in folding. Here is a description of applied transformation: /* Convert A ? 0 : 1 to !A. This prefers the use of NOT_EXPR over COND_EXPR in cases such as floating point comparisons. */ This doesn't work for boolean vectors with scalar mode. So we should disable transformation for vec_cond_expr or at least for boolean vectors with scalar mode. Author: ienkovich Date: Fri May 27 10:39:40 2016 New Revision: 236810 URL: https://gcc.gnu.org/viewcvs?rev=236810&root=gcc&view=rev Log: gcc/ PR middle-end/71279 * fold-const.c (fold_ternary_loc): Don't fold VEC_COND_EXPR into comparison. gcc/testsuite/ PR middle-end/71279 * gcc.dg/pr71279.c: New test. Added: trunk/gcc/testsuite/gcc.dg/pr71279.c Modified: trunk/gcc/ChangeLog trunk/gcc/fold-const.c trunk/gcc/testsuite/ChangeLog Author: ienkovich Date: Fri May 27 10:43:34 2016 New Revision: 236811 URL: https://gcc.gnu.org/viewcvs?rev=236811&root=gcc&view=rev Log: gcc/ Backport from mainline r236810. 2016-05-27 Ilya Enkovich <ilya.enkovich@intel.com> PR middle-end/71279 * fold-const.c (fold_ternary_loc): Don't fold VEC_COND_EXPR into comparison. gcc/testsuite/ Backport from mainline r236810. 2016-05-27 Ilya Enkovich <ilya.enkovich@intel.com> PR middle-end/71279 * gcc.dg/pr71279.c: New test. Added: branches/gcc-6-branch/gcc/testsuite/gcc.dg/pr71279.c Modified: branches/gcc-6-branch/gcc/ChangeLog branches/gcc-6-branch/gcc/fold-const.c branches/gcc-6-branch/gcc/testsuite/ChangeLog Fixed |