From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 92334 invoked by alias); 11 Aug 2015 18:36:07 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 87260 invoked by uid 48); 11 Aug 2015 18:36:03 -0000 From: "wschmidt at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/29256] [4.9/5/6 regression] loop performance regression Date: Tue, 11 Aug 2015 18:36:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 4.2.0 X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: normal X-Bugzilla-Who: wschmidt at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.9.4 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-08/txt/msg00729.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=29256 --- Comment #56 from Bill Schmidt --- (In reply to Bill Schmidt from comment #53) > I'm not a fan of a tree-level unroller. It's impossible to make good > decisions about unroll factors that early. But your second approach sounds > quite promising to me. I would be willing to soften this statement. I think that an early unroller might well be a profitable approach for most systems with large caches and so forth, where if the unrolling heuristics are not completely accurate we are still likely to make a reasonably good decision. However, I would expect to see ports with limited caches/memory to want more accurate control over unrolling decisions. So I could see allowing ports to select between a GIMPLE unroller and an RTL unroller (I doubt anybody would want both). In general it seems like PowerPC could benefit from more aggressive unrolling much of the time, provided we can also solve the related IVOPTS problems that cause too much register spill. I may have an interest in working on a GIMPLE unroller, depending on how quickly I can complete or shed some other projects...