From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27922 invoked by alias); 16 Mar 2004 16:59:37 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 27882 invoked from network); 16 Mar 2004 16:59:35 -0000 Received: from unknown (HELO sadr.equallogic.com) (66.155.203.134) by sources.redhat.com with SMTP; 16 Mar 2004 16:59:35 -0000 Received: from sadr.equallogic.com (localhost.localdomain [127.0.0.1]) by sadr.equallogic.com (8.12.8/8.12.8) with ESMTP id i2GGxUQ1014794 for ; Tue, 16 Mar 2004 11:59:30 -0500 Received: from deneb.dev.equallogic.com (deneb [172.16.1.99]) by sadr.equallogic.com (8.12.8/8.12.8) with ESMTP id i2GGxTM5014789; Tue, 16 Mar 2004 11:59:29 -0500 Received: from PKONING.equallogic.com (localhost.localdomain [127.0.0.1]) by deneb.dev.equallogic.com (8.11.6/8.11.6) with ESMTP id i2GGxRN13142; Tue, 16 Mar 2004 11:59:27 -0500 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: <16471.12911.55000.733792@gargle.gargle.HOWL> Date: Tue, 16 Mar 2004 16:59:00 -0000 From: Paul Koning To: mark@codesourcery.com Cc: ebotcazou@act-europe.fr, gcc@gcc.gnu.org Subject: Re: GCC Status Report (2004-03-09) References: <200403091809.i29I9P04020607@sirius.codesourcery.com> <200403111030.14616.ebotcazou@act-europe.fr> <40573108.4080602@codesourcery.com> X-SW-Source: 2004-03/txt/msg00826.txt.bz2 >>>>> "Mark" == Mark Mitchell writes: Mark> The other alternative I can think of is to introduce a Mark> scheduling barrier (e.g., a dummy vaolatile asm) after the Mark> clearing operation. It would be nice if there were a clearly documented way to do that. I've found two: asm("") asm("":::"memory") The former does what I want but isn't documented and (according to what I was told) should NOT be counted on to be a barrier. The latter is documented and does a superset of what I needed at the time. I say "superset" because it causes registers to be reloaded with data from variables (due to the memory clobber). That's a performance hit if I didn't have any real memory clobbers in the system. Perhaps we need asm("":::"barrier")? paul