acurtis at onz.com
Thu May 23 12:25:56 EST 2002
>Nope. Loads can (and sometimes do) go ahead of stores. Stores can go
>ahead of loads as well in some circumstances, for example if the load
>is non-cacheable and the store hits in the cache. In principle loads
>can get reordered too. Reordering can happen in the processor's
>load/store unit and/or in the PCI host bridge.
>I assume you are mostly concerned with loads and stores to
>noncacheable addresses (i.e. I/O devices). Non-cacheable stores don't
>get reordered, and eieio acts as a barrier to make sure that all
>noncacheable accesses before the eieio are done before any of the
>noncacheable accesses after the eieio.
Could you provide an example of when you should insert this instruction into
your code. From you description it is a wonder that "var += 2;" works if I
am accessing dual-port on an 8260.
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
More information about the Linuxppc-dev