| 625 | } |
| 626 | |
| 627 | static __inline void |
| 628 | atomic_add_64(volatile uint64_t *p, uint64_t v) |
| 629 | { |
| 630 | uint64_t t; |
| 631 | |
| 632 | for (;;) { |
| 633 | t = *p; |
| 634 | if (atomic_cmpset_64(p, t, t + v)) |
| 635 | break; |
| 636 | } |
| 637 | } |
| 638 | |
| 639 | static __inline void |
| 640 | atomic_subtract_64(volatile uint64_t *p, uint64_t v) |
no test coverage detected