Lines Matching refs:plain
931 Plain-coherence: This requires that plain memory accesses
938 "rcu" and "plain-coherence" axioms are specific to the LKMM.
1984 accesses such as x or y = 0 are simply called "plain" accesses.
1986 Early versions of the LKMM had nothing to say about plain accesses.
1988 by plain accesses are not concurrently read or written by any other
1990 of transformations or optimizations of code containing plain accesses,
2016 But since P0's load from x is a plain access, the compiler may decide
2038 doesn't try to predict all possible outcomes of code containing plain
2051 3. at least one of them is plain,
2163 are plain. Now, although we have not said so explicitly, up to this
2172 plain accesses are a different story; the compiler may combine them,
2174 who knows what else. Seeing a plain access in the source code tells
2182 code would be safe!). For another, it cannot move a plain access past
2200 -- even if some of the accesses are plain. (Of course, the CPU may
2209 smp_rmb() or smp_store_release() apply to plain accesses as well as to
2213 again, now using plain accesses for buf:
2242 machine instructions the compiler generates for the plain
2264 This analysis illustrates how the LKMM deals with plain accesses in
2265 general. Suppose R is a plain load and we want to show that R
2268 X ->xb* E. If E was also a plain access, we would also look for a
2283 issue. When the source code contains a plain store, the compiler is
2284 allowed to put plain loads of the same location into the object code.
2296 For this reason, whenever the LKMM requires a plain store to be
2306 Incidentally, the other tranformation -- augmenting a plain load by
2317 The LKMM includes a second way to pre-bound plain accesses, in
2324 the LKMM says that the marked load of ptr pre-bounds the plain load of
2326 instructions corresponding to the plain load. This is a reasonable
2357 rcu_assign_pointer() performs a store-release, so the plain store to b
2391 Finally, it turns out there is a situation in which a plain write does
2415 Do the plain stores to y race? Clearly not if P1 reads a non-zero
2428 concurrent and there is no race, even though P1's plain store to y
2437 sequence. If W is plain then they also have to be linked by an
2441 sequence, and if W' is plain then they also have to be linked by a
2463 There is one more part of the LKMM related to plain accesses (although
2467 various relation must not contain a cycle) doesn't apply to plain
2469 they don't make sense even for plain accesses.
2472 called the "plain-coherence" axiom because of their resemblance to the
2481 executes before, even if one or both is plain).
2493 This is the extent to which the LKMM deals with plain accesses.
2494 Perhaps it could say more (for example, plain accesses might
2546 Although we said that plain accesses are not linked by the ppo
2548 an address dependency from a marked load R to a plain store W,