public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH 0/6] Loop flattening and improved if-conversion
@ 2010-10-29  3:11 Sebastian Pop
  2010-10-29  3:11 ` [PATCH 1/6] Loop flattening on loop-SSA Sebastian Pop
                   ` (6 more replies)
  0 siblings, 7 replies; 41+ messages in thread
From: Sebastian Pop @ 2010-10-29  3:11 UTC (permalink / raw)
  To: gcc-patches; +Cc: rguenther, Sebastian Pop

Hi,

As explained in the GCC Summit paper "Improving GCC's
auto-vectorization with if-conversion and loop flattening for AMD's
Bulldozer processors", this patch set implements a loop flattening
pass on tree-ssa, and improves the if-conversion, removing the now
unnecessary ifcvt_memrefs_wont_trap analysis: this fixes PR46029.

The patch-set passed bootstrap with BOOT_CFLAG="-O2 -floop-flatten
-ftree-loop-if-convert-stores" and test on amd64-linux.  Ok for trunk?

Thanks,
Sebastian Pop
--
AMD / Open Source Compiler Engineering / GNU Tools

Sebastian Pop (6):
  Loop flattening on loop-SSA.
  Remove ifcvt_memrefs_wont_trap analysis.
  Fix PR46029: reimplement if-convert stores.
  if-convert even when the data dependences cannot be computed.
  Call if-conversion from loop flattening.
  Move loop flattening and SLP vectorization at the end of loop
    transforms.

 gcc/ChangeLog                               |   68 +++
 gcc/Makefile.in                             |    4 +
 gcc/common.opt                              |    4 +
 gcc/dbgcnt.def                              |    1 +
 gcc/doc/invoke.texi                         |   18 +-
 gcc/params.def                              |    7 +
 gcc/passes.c                                |    3 +-
 gcc/testsuite/ChangeLog                     |   14 +
 gcc/testsuite/g++.dg/tree-ssa/ifc-pr46029.C |   76 ++++
 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-1.c |   28 ++
 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-2.c |   39 ++
 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-3.c |   19 +
 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-4.c |   23 +
 gcc/testsuite/gcc.dg/tree-ssa/ifc-5.c       |   17 +-
 gcc/testsuite/gcc.dg/tree-ssa/ifc-8.c       |   29 ++
 gcc/timevar.def                             |    1 +
 gcc/tree-flow.h                             |    4 +
 gcc/tree-if-conv.c                          |  407 ++++++++----------
 gcc/tree-loop-flattening.c                  |  630 +++++++++++++++++++++++++++
 gcc/tree-pass.h                             |    1 +
 20 files changed, 1151 insertions(+), 242 deletions(-)
 create mode 100644 gcc/testsuite/g++.dg/tree-ssa/ifc-pr46029.C
 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-1.c
 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-2.c
 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-3.c
 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/flat-loop-4.c
 create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/ifc-8.c
 create mode 100644 gcc/tree-loop-flattening.c

^ permalink raw reply	[flat|nested] 41+ messages in thread

end of thread, other threads:[~2011-01-03 23:10 UTC | newest]

Thread overview: 41+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-10-29  3:11 [PATCH 0/6] Loop flattening and improved if-conversion Sebastian Pop
2010-10-29  3:11 ` [PATCH 1/6] Loop flattening on loop-SSA Sebastian Pop
2010-10-29  3:46 ` [PATCH 4/6] if-convert even when the data dependences cannot be computed Sebastian Pop
2010-10-29  3:57 ` [PATCH 5/6] Call if-conversion from loop flattening Sebastian Pop
2010-10-29  4:07 ` [PATCH 3/6] Fix PR46029: reimplement if-convert stores Sebastian Pop
2010-10-29  4:13 ` [PATCH 2/6] Remove ifcvt_memrefs_wont_trap analysis Sebastian Pop
2010-10-29  5:58 ` [PATCH 6/6] Move loop flattening and SLP vectorization at the end of loop transforms Sebastian Pop
2010-10-29 13:44   ` Richard Guenther
2010-10-30  0:23     ` Sebastian Pop
2010-10-30  8:01       ` Richard Guenther
2010-11-03 15:18 ` [PATCH 0/6] Loop flattening and improved if-conversion Richard Guenther
2010-11-03 15:53   ` [PATCH 1/3] Fix PR46029: reimplement if-convert stores Sebastian Pop
2010-11-05 12:08     ` Richard Guenther
2010-11-05 16:13       ` Sebastian Pop
2010-11-10 23:24         ` Sebastian Pop
2010-11-11 10:04           ` Richard Guenther
2010-11-15 22:39       ` Sebastian Pop
2010-11-16 14:45         ` Richard Guenther
2010-11-16 15:01           ` Richard Guenther
2011-01-03 21:39             ` Sebastian Pop
2011-01-03 21:52               ` Richard Guenther
2011-01-03 23:19                 ` Sebastian Pop
2010-11-03 15:53   ` [PATCH 2/3] if-convert even when the data dependences cannot be computed Sebastian Pop
2010-11-03 20:47     ` Richard Guenther
2010-11-03 20:52       ` Sebastian Pop
2010-11-03 15:54   ` [PATCH 3/3] Loop flattening on loop-SSA Sebastian Pop
2010-11-03 16:57     ` Nathan Froyd
2010-11-03 17:29       ` Sebastian Pop
2010-11-05 13:05     ` Richard Guenther
2010-11-05 16:57       ` Sebastian Pop
2010-11-08 16:14         ` Richard Guenther
2010-11-15 23:05           ` Sebastian Pop
2010-11-15 23:17             ` Richard Guenther
2010-11-15 23:35               ` Sebastian Pop
2010-11-16  0:32                 ` Richard Guenther
2010-11-15 23:08           ` Sebastian Pop
2010-11-15 23:10             ` Sebastian Pop
2010-11-15 23:30               ` Richard Guenther
2010-11-15 23:53                 ` Sebastian Pop
2010-11-16 22:47       ` Sebastian Pop
2010-11-16 23:56         ` Sebastian Pop

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).