Lines Matching refs:with
15 as this document builds on it, and explains the liberties XNU takes with said
42 By default, C11 comes with two variants of each atomic "operation":
45 - a regular variant which is equivalent to the former with the *seq_cst*
53 and hardware reorderings and optimizations, which is great, but comes with
57 It seems very tempting to use `atomic_*_explicit()` functions with explicit
59 optimizations with relaxed atomics, that most developers will not expect.
61 does with other plain memory accesess such as coalescing, reordering, hoisting
107 3. `os_atomic_*` only comes with the explicit variants:
132 Qualifying atomic variables with `_Atomic` or even
151 with an optional barrier ordering. It is implemented with C11's
233 variable and will be filled with the current value at `address` whether the
235 will always be `expected`, however in case of failure it will be filled with
290 wrapped with `os_atomic_rmw_loop_give_up` (so that LL/SC architectures can
338 dependencies that would otherwise pair with store-releases done at this address,
345 - loads through a pointer loaded with a *dependency* memory ordering
349 particular pointer with the `os_atomic_load_with_dependency_on` and
389 * which properly pair with the release barrier in `publish`.
398 There are 4 interfaces involved with hardware dependencies:
401 that should pair with a store or rmw with release semantics or stronger