This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/78899] New: [7 Regression] Vestorized loop with optmized mask stores motion is completely deleted after r242520.
- From: "ysrumyan at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 22 Dec 2016 12:41:23 +0000
- Subject: [Bug tree-optimization/78899] New: [7 Regression] Vestorized loop with optmized mask stores motion is completely deleted after r242520.
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78899
Bug ID: 78899
Summary: [7 Regression] Vestorized loop with optmized mask
stores motion is completely deleted after r242520.
Product: gcc
Version: 7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: ysrumyan at gmail dot com
Target Milestone: ---
Created attachment 40395
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40395&action=edit
test-case to reproduce - compile with -Ofast -mavx2 -fopenmp
We noticed a huge regression on avx2 and knl machines on couple improtant
benchmarks. The issue can be reproduced with attached test-case.
Before given revision produced assembly contains vptest and vpmaskmovd
instructions but after this revision newly created basic blocks which are
created for sinking masked stores are deleted:
grep 'block 22' test.c.156t.vect
test.c:11:15: note: Create new block 22 to sink mask stores.test.c:11:15: note:
Move stmt to created bb
Removing basic block 22
Attached test-case must be compiled with -Ofast -mavx2 -fopenmp options to
reproduce.