This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/52580] New: [4.8 Regression] 171.swim performance drop on x86 â vectorization doesnât happen anymore
- From: "vbyakovl23 at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 13 Mar 2012 13:33:47 +0000
- Subject: [Bug fortran/52580] New: [4.8 Regression] 171.swim performance drop on x86 â vectorization doesnât happen anymore
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52580
Bug #: 52580
Summary: [4.8 Regression] 171.swim performance drop on x86 â
vectorization doesnât happen anymore
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: vbyakovl23@gmail.com
Regression could be seen on Sandy Bridge. Change set analysis points to commit
commit 95539e1deabbaa9dbc84b1d81ce6d0c8e7156a0f
Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri Mar 2 14:58:55 2012 +0000
2012-03-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52406
* tree-data-ref.h: Update documentation about DR_BASE_OBJECT.
(struct indices): Add unconstrained_base member.
(struct dr_alias): Remove unused vops member.
(DR_UNCONSTRAINED_BASE): New define.
* tree-data-ref.c (dr_analyze_indices): For COMPONENT_REFs
add indices to allow their disambiguation. Make DR_BASE_OBJECT
be an artificial access that covers the whole indexed object,
or mark it with DR_UNCONSTRAINED_BASE if we cannot do so. Canonicalize
plain decl base-objects to their MEM_REF variant.
(dr_may_alias_p): When the base-object of either data reference
has unknown size use only points-to information.
(compute_affine_dependence): Make dumps easier to read and
more verbose.
* tree-vect-data-ref.c (vector_alignment_reachable_p): Use
DR_REF when looking for packed references.
(vect_supportable_dr_alignment): Likewise.
* gcc.dg/torture/pr52406.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@184789
138bc75d-0d04-0410-961f-82ee72b054a4
There are vectorizer problems. Vectorization doesnât happened for the hottest
routines calc2() and calc3().
Command line to reproduce
gfortran -g -static -m32 -S -O3 -funroll-loops -msse2 -mfpmath=sse -ffast-math
-march=corei7 swim.f
gcc âv
Using built-in specs.
COLLECT_GCC=/gnumnt/msticlxl16_users/vbyakovl/workspaces/619/install-exp/bin/gcc
COLLECT_LTO_WRAPPER=/gnumnt/msticlxl16_users/vbyakovl/workspaces/619/install-exp/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc/configure
--prefix=/export/users/vbyakovl/workspaces/619/install-exp --disable-bootstrap
--enable-languages=c,c++,fortran CFLAGS=-g3
Thread model: posix
gcc version 4.8.0 20120312 (experimental) (GCC)