This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCC Status Report (2004-03-09)


>>>>> "Mark" == Mark Mitchell <mark@codesourcery.com> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]