From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 387 invoked by alias); 6 Sep 2013 09:54:28 -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 342 invoked by uid 48); 6 Sep 2013 09:54:25 -0000 From: "jasonwucj at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/58295] [4.8/4.9 regression] Missed zero-extension elimination in the combiner Date: Fri, 06 Sep 2013 09:54:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: missed-optimization X-Bugzilla-Severity: normal X-Bugzilla-Who: jasonwucj at gmail dot com X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.8.2 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc 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: 2013-09/txt/msg00338.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58295 Chung-Ju Wu changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jasonwucj at gmail dot com --- Comment #2 from Chung-Ju Wu --- (In reply to Eric Botcazou from comment #1) > combiner was indeed clever enough to do it. The QI subreg is clearly > problematic for the ARM here (and probably most RISC architectures). Yes. This problem also happens on our Andes nds32 architecture. (The 'nds32' port is still awaiting for GWP approval before it may be committed. But one can find its initial patch: http://gcc.gnu.org/ml/gcc-patches/2013-08/msg01441.html) As long as we revert r191928, which is the fix for pr54457, and design the pattern in nds32.md to recognize the insn that combiner created, the redundant insn 10 can be eliminated.