From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6734 invoked by alias); 24 Feb 2014 16:17:32 -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 6713 invoked by uid 48); 24 Feb 2014 16:17:29 -0000 From: "pinskia at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/50677] volatile forces load into register Date: Mon, 24 Feb 2014 16:17: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.7.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: pinskia at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- 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: 2014-02/txt/msg02453.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50677 --- Comment #5 from Andrew Pinski --- (In reply to H.J. Lu from comment #4) > Why doesn't combine include (clobber (reg:CC 17 flags))? It has nothing to do with the clobber. Inside combine_instructions there is a call to init_recog_no_volatile which forces volatile memory not be recognized. The main reason is because combine does not check for volatile memory issues before doing the combine so it was easier to just disable recognizability of volatile memory.