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: RegRegname vs. Explicit Local Register Variables ...


At 13:26 +0200 24-05-2002, Andreas Schwab wrote:
>Matthijs van Duin <matthijs@cds.nl> writes:
>
>|> even stranger is that it thought that  atomic_cas(target, src, dst) == src
>|> while this is obviously not true. How can the optimizer think that, when
>|> "foo" is marked as an output for my asm() block?
>
>You probably need to add a memory clobber to fix this.

I'd be really interested to know why. iirc memory clobber indicates I 
clobber memory in an unspecified way, while I already explicitly 
specify which things I clobber by putting them in outputs. I tell GCC 
I'm reading from foo and writing into foo, shouldn't that be quite 
enough?

  - xmath


Matthijs van Duin     (NOTE: PGP key has changed!)
- PGP Key: 0x2D6F0BA7
- FP: 205D F7BA FFAD 9070 AB9E  C5A8 BDB0 CA1B 2D6F 0BA7 -


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