From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29662 invoked by alias); 3 Jun 2015 03:56:14 -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 29566 invoked by uid 48); 3 Jun 2015 03:56:11 -0000 From: "amker at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/62173] [5/6 Regression] 64bit Arch can't ivopt while 32bit Arch can Date: Wed, 03 Jun 2015 03:56:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: normal X-Bugzilla-Who: amker at gcc dot gnu.org X-Bugzilla-Status: ASSIGNED X-Bugzilla-Resolution: X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: jiwang at gcc dot gnu.org X-Bugzilla-Target-Milestone: 6.0 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-06/txt/msg00233.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62173 --- Comment #40 from amker at gcc dot gnu.org --- The issue array reference not recognized as IV is resolved now. From gimple optimizer's view, there is still another issue in which loop header is bloated because of lose of signness information. The root cause is we use sizetype for addresses, and unsigned type (unsigned int in this case) for loop niter. We need to prove (sizetype)(unsigned int)(i - 1) equals to (sizetype)(i-1) in this case by using VRP/loop initial conditions. I am fixing this now.