From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 111241 invoked by alias); 26 Jan 2016 00:32:58 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 86945 invoked by uid 89); 26 Jan 2016 00:29:33 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.8 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=*is*, mep X-HELO: gate.crashing.org Received: from gate.crashing.org (HELO gate.crashing.org) (63.228.1.57) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Tue, 26 Jan 2016 00:29:29 +0000 Received: from gate.crashing.org (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.13.8) with ESMTP id u0Q0TJTF029838; Mon, 25 Jan 2016 18:29:19 -0600 Received: (from segher@localhost) by gate.crashing.org (8.14.1/8.14.1/Submit) id u0Q0THei029837; Mon, 25 Jan 2016 18:29:17 -0600 Date: Tue, 26 Jan 2016 00:32:00 -0000 From: Segher Boessenkool To: David Wohlferd Cc: "gcc-patches@gcc.gnu.org" , Richard Henderson , jason@redhat.com, sandra@codesourcery.com, Paul_Koning@Dell.com, Jeff Law , bernds_cb1@t-online.de, Bernd Edlinger , Andrew Haley Subject: Re: Wonly-top-basic-asm Message-ID: <20160126002917.GA25851@gate.crashing.org> References: <56A54EF9.8060006@LimeGreenSocks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56A54EF9.8060006@LimeGreenSocks.com> User-Agent: Mutt/1.4.2.3i X-IsSubscribed: yes X-SW-Source: 2016-01/txt/msg01934.txt.bz2 Hi David, On Sun, Jan 24, 2016 at 02:23:53PM -0800, David Wohlferd wrote: > - Warn that this could change in future versions of gcc. To avoid > impacts from this change, use extended asm. > - Implement and document -Wonly-top-basic-asm (disabled by default) as a > way to locate affected statements. In my opinion we should not warn for any asm that means the same both as basic and as extended asm. The problem then becomes, what *is* the meaning of a basic asm, what does it clobber. Currently the only differences are: - asms that have a % in the string, or {|} on targets with ASSEMBLER_DIALECT; - ia64 (for stop bits); - mep, and this one is easily fixed. - basic asms do not get TARGET_MD_ASM_ADJUST. Segher