~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/scripts/atomic/atomics.tbl

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /scripts/atomic/atomics.tbl (Version linux-6.11.5) and /scripts/atomic/atomics.tbl (Version linux-5.6.19)


  1 # name  meta    args...                             1 # name  meta    args...
  2 #                                                   2 #
  3 # Where meta contains a string of variants to       3 # Where meta contains a string of variants to generate.
  4 # Upper-case implies _{acquire,release,relaxed      4 # Upper-case implies _{acquire,release,relaxed} variants.
  5 # Valid meta values are:                            5 # Valid meta values are:
  6 # * B/b - bool: returns bool                        6 # * B/b - bool: returns bool
  7 # * v   - void: returns void                        7 # * v   - void: returns void
  8 # * I/i - int: returns base type                    8 # * I/i - int: returns base type
  9 # * R   - return: returns base type (has _retu      9 # * R   - return: returns base type (has _return variants)
 10 # * F/f - fetch: returns base type (has fetch_     10 # * F/f - fetch: returns base type (has fetch_ variants)
 11 # * l   - load: returns base type (has _acquir     11 # * l   - load: returns base type (has _acquire order variant)
 12 # * s   - store: returns void (has _release or     12 # * s   - store: returns void (has _release order variant)
 13 #                                                  13 #
 14 # Where args contains list of type[:name], whe     14 # Where args contains list of type[:name], where type is:
 15 # * cv  - const pointer to atomic base type (a     15 # * cv  - const pointer to atomic base type (atomic_t/atomic64_t/atomic_long_t)
 16 # * v   - pointer to atomic base type (atomic_     16 # * v   - pointer to atomic base type (atomic_t/atomic64_t/atomic_long_t)
 17 # * i   - base type (int/s64/long)                 17 # * i   - base type (int/s64/long)
 18 # * p   - pointer to base type (int/s64/long)      18 # * p   - pointer to base type (int/s64/long)
 19 #                                                  19 #
 20 read                    l       cv                 20 read                    l       cv
 21 set                     s       v       i          21 set                     s       v       i
 22 add                     vRF     i       v          22 add                     vRF     i       v
 23 sub                     vRF     i       v          23 sub                     vRF     i       v
 24 inc                     vRF     v                  24 inc                     vRF     v
 25 dec                     vRF     v                  25 dec                     vRF     v
 26 and                     vF      i       v          26 and                     vF      i       v
 27 andnot                  vF      i       v          27 andnot                  vF      i       v
 28 or                      vF      i       v          28 or                      vF      i       v
 29 xor                     vF      i       v          29 xor                     vF      i       v
 30 xchg                    I       v       i:new  !!  30 xchg                    I       v       i
 31 cmpxchg                 I       v       i:old      31 cmpxchg                 I       v       i:old   i:new
 32 try_cmpxchg             B       v       p:old      32 try_cmpxchg             B       v       p:old   i:new
 33 sub_and_test            b       i       v          33 sub_and_test            b       i       v
 34 dec_and_test            b       v                  34 dec_and_test            b       v
 35 inc_and_test            b       v                  35 inc_and_test            b       v
 36 add_negative            B       i       v      !!  36 add_negative            b       i       v
 37 add_unless              fb      v       i:a        37 add_unless              fb      v       i:a     i:u
 38 inc_not_zero            b       v                  38 inc_not_zero            b       v
 39 inc_unless_negative     b       v                  39 inc_unless_negative     b       v
 40 dec_unless_positive     b       v                  40 dec_unless_positive     b       v
 41 dec_if_positive         i       v                  41 dec_if_positive         i       v
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php