Changes in / [9aa1317:6a25b8f]


Ignore:
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • libcfa/prelude/sync-builtins.cf

    r9aa1317 r6a25b8f  
    11char __sync_fetch_and_add(volatile char *, char,...);
     2char __sync_fetch_and_add_1(volatile char *, char,...);
    23signed char __sync_fetch_and_add(volatile signed char *, signed char,...);
     4signed char __sync_fetch_and_add_1(volatile signed char *, signed char,...);
    35unsigned char __sync_fetch_and_add(volatile unsigned char *, unsigned char,...);
     6unsigned char __sync_fetch_and_add_1(volatile unsigned char *, unsigned char,...);
    47signed short __sync_fetch_and_add(volatile signed short *, signed short,...);
     8signed short __sync_fetch_and_add_2(volatile signed short *, signed short,...);
    59unsigned short __sync_fetch_and_add(volatile unsigned short *, unsigned short,...);
     10unsigned short __sync_fetch_and_add_2(volatile unsigned short *, unsigned short,...);
    611signed int __sync_fetch_and_add(volatile signed int *, signed int,...);
     12signed int __sync_fetch_and_add_4(volatile signed int *, signed int,...);
    713unsigned int __sync_fetch_and_add(volatile unsigned int *, unsigned int,...);
    8 signed long int __sync_fetch_and_add(volatile signed long int *, signed long int,...);
    9 unsigned long int __sync_fetch_and_add(volatile unsigned long int *, unsigned long int,...);
     14unsigned int __sync_fetch_and_add_4(volatile unsigned int *, unsigned int,...);
    1015signed long long int __sync_fetch_and_add(volatile signed long long int *, signed long long int,...);
     16signed long long int __sync_fetch_and_add_8(volatile signed long long int *, signed long long int,...);
    1117unsigned long long int __sync_fetch_and_add(volatile unsigned long long int *, unsigned long long int,...);
     18unsigned long long int __sync_fetch_and_add_8(volatile unsigned long long int *, unsigned long long int,...);
    1219#if defined(__SIZEOF_INT128__)
    1320signed __int128 __sync_fetch_and_add(volatile signed __int128 *, signed __int128,...);
     21signed __int128 __sync_fetch_and_add_16(volatile signed __int128 *, signed __int128,...);
    1422unsigned __int128 __sync_fetch_and_add(volatile unsigned __int128 *, unsigned __int128,...);
     23unsigned __int128 __sync_fetch_and_add_16(volatile unsigned __int128 *, unsigned __int128,...);
    1524#endif
    1625
    1726char __sync_fetch_and_sub(volatile char *, char,...);
     27char __sync_fetch_and_sub_1(volatile char *, char,...);
    1828signed char __sync_fetch_and_sub(volatile signed char *, signed char,...);
     29signed char __sync_fetch_and_sub_1(volatile signed char *, signed char,...);
    1930unsigned char __sync_fetch_and_sub(volatile unsigned char *, unsigned char,...);
     31unsigned char __sync_fetch_and_sub_1(volatile unsigned char *, unsigned char,...);
    2032signed short __sync_fetch_and_sub(volatile signed short *, signed short,...);
     33signed short __sync_fetch_and_sub_2(volatile signed short *, signed short,...);
    2134unsigned short __sync_fetch_and_sub(volatile unsigned short *, unsigned short,...);
     35unsigned short __sync_fetch_and_sub_2(volatile unsigned short *, unsigned short,...);
    2236signed int __sync_fetch_and_sub(volatile signed int *, signed int,...);
     37signed int __sync_fetch_and_sub_4(volatile signed int *, signed int,...);
    2338unsigned int __sync_fetch_and_sub(volatile unsigned int *, unsigned int,...);
    24 signed long int __sync_fetch_and_sub(volatile signed long int *, signed long int,...);
    25 unsigned long int __sync_fetch_and_sub(volatile unsigned long int *, unsigned long int,...);
     39unsigned int __sync_fetch_and_sub_4(volatile unsigned int *, unsigned int,...);
    2640signed long long int __sync_fetch_and_sub(volatile signed long long int *, signed long long int,...);
     41signed long long int __sync_fetch_and_sub_8(volatile signed long long int *, signed long long int,...);
    2742unsigned long long int __sync_fetch_and_sub(volatile unsigned long long int *, unsigned long long int,...);
     43unsigned long long int __sync_fetch_and_sub_8(volatile unsigned long long int *, unsigned long long int,...);
    2844#if defined(__SIZEOF_INT128__)
    2945signed __int128 __sync_fetch_and_sub(volatile signed __int128 *, signed __int128,...);
     46signed __int128 __sync_fetch_and_sub_16(volatile signed __int128 *, signed __int128,...);
    3047unsigned __int128 __sync_fetch_and_sub(volatile unsigned __int128 *, unsigned __int128,...);
     48unsigned __int128 __sync_fetch_and_sub_16(volatile unsigned __int128 *, unsigned __int128,...);
    3149#endif
    3250
    3351char __sync_fetch_and_or(volatile char *, char,...);
     52char __sync_fetch_and_or_1(volatile char *, char,...);
    3453signed char __sync_fetch_and_or(volatile signed char *, signed char,...);
     54signed char __sync_fetch_and_or_1(volatile signed char *, signed char,...);
    3555unsigned char __sync_fetch_and_or(volatile unsigned char *, unsigned char,...);
     56unsigned char __sync_fetch_and_or_1(volatile unsigned char *, unsigned char,...);
    3657signed short __sync_fetch_and_or(volatile signed short *, signed short,...);
     58signed short __sync_fetch_and_or_2(volatile signed short *, signed short,...);
    3759unsigned short __sync_fetch_and_or(volatile unsigned short *, unsigned short,...);
     60unsigned short __sync_fetch_and_or_2(volatile unsigned short *, unsigned short,...);
    3861signed int __sync_fetch_and_or(volatile signed int *, signed int,...);
     62signed int __sync_fetch_and_or_4(volatile signed int *, signed int,...);
    3963unsigned int __sync_fetch_and_or(volatile unsigned int *, unsigned int,...);
    40 signed long int __sync_fetch_and_or(volatile signed long int *, signed long int,...);
    41 unsigned long int __sync_fetch_and_or(volatile unsigned long int *, unsigned long int,...);
     64unsigned int __sync_fetch_and_or_4(volatile unsigned int *, unsigned int,...);
    4265signed long long int __sync_fetch_and_or(volatile signed long long int *, signed long long int,...);
     66signed long long int __sync_fetch_and_or_8(volatile signed long long int *, signed long long int,...);
    4367unsigned long long int __sync_fetch_and_or(volatile unsigned long long int *, unsigned long long int,...);
     68unsigned long long int __sync_fetch_and_or_8(volatile unsigned long long int *, unsigned long long int,...);
    4469#if defined(__SIZEOF_INT128__)
    4570signed __int128 __sync_fetch_and_or(volatile signed __int128 *, signed __int128,...);
     71signed __int128 __sync_fetch_and_or_16(volatile signed __int128 *, signed __int128,...);
    4672unsigned __int128 __sync_fetch_and_or(volatile unsigned __int128 *, unsigned __int128,...);
     73unsigned __int128 __sync_fetch_and_or_16(volatile unsigned __int128 *, unsigned __int128,...);
    4774#endif
    4875
    4976char __sync_fetch_and_and(volatile char *, char,...);
     77char __sync_fetch_and_and_1(volatile char *, char,...);
    5078signed char __sync_fetch_and_and(volatile signed char *, signed char,...);
     79signed char __sync_fetch_and_and_1(volatile signed char *, signed char,...);
    5180unsigned char __sync_fetch_and_and(volatile unsigned char *, unsigned char,...);
     81unsigned char __sync_fetch_and_and_1(volatile unsigned char *, unsigned char,...);
    5282signed short __sync_fetch_and_and(volatile signed short *, signed short,...);
     83signed short __sync_fetch_and_and_2(volatile signed short *, signed short,...);
    5384unsigned short __sync_fetch_and_and(volatile unsigned short *, unsigned short,...);
     85unsigned short __sync_fetch_and_and_2(volatile unsigned short *, unsigned short,...);
    5486signed int __sync_fetch_and_and(volatile signed int *, signed int,...);
     87signed int __sync_fetch_and_and_4(volatile signed int *, signed int,...);
    5588unsigned int __sync_fetch_and_and(volatile unsigned int *, unsigned int,...);
    56 signed long int __sync_fetch_and_and(volatile signed long int *, signed long int,...);
    57 unsigned long int __sync_fetch_and_and(volatile unsigned long int *, unsigned long int,...);
     89unsigned int __sync_fetch_and_and_4(volatile unsigned int *, unsigned int,...);
    5890signed long long int __sync_fetch_and_and(volatile signed long long int *, signed long long int,...);
     91signed long long int __sync_fetch_and_and_8(volatile signed long long int *, signed long long int,...);
    5992unsigned long long int __sync_fetch_and_and(volatile unsigned long long int *, unsigned long long int,...);
     93unsigned long long int __sync_fetch_and_and_8(volatile unsigned long long int *, unsigned long long int,...);
    6094#if defined(__SIZEOF_INT128__)
    6195signed __int128 __sync_fetch_and_and(volatile signed __int128 *, signed __int128,...);
     96signed __int128 __sync_fetch_and_and_16(volatile signed __int128 *, signed __int128,...);
    6297unsigned __int128 __sync_fetch_and_and(volatile unsigned __int128 *, unsigned __int128,...);
     98unsigned __int128 __sync_fetch_and_and_16(volatile unsigned __int128 *, unsigned __int128,...);
    6399#endif
    64100
    65101char __sync_fetch_and_xor(volatile char *, char,...);
     102char __sync_fetch_and_xor_1(volatile char *, char,...);
    66103signed char __sync_fetch_and_xor(volatile signed char *, signed char,...);
     104signed char __sync_fetch_and_xor_1(volatile signed char *, signed char,...);
    67105unsigned char __sync_fetch_and_xor(volatile unsigned char *, unsigned char,...);
     106unsigned char __sync_fetch_and_xor_1(volatile unsigned char *, unsigned char,...);
    68107signed short __sync_fetch_and_xor(volatile signed short *, signed short,...);
     108signed short __sync_fetch_and_xor_2(volatile signed short *, signed short,...);
    69109unsigned short __sync_fetch_and_xor(volatile unsigned short *, unsigned short,...);
     110unsigned short __sync_fetch_and_xor_2(volatile unsigned short *, unsigned short,...);
    70111signed int __sync_fetch_and_xor(volatile signed int *, signed int,...);
     112signed int __sync_fetch_and_xor_4(volatile signed int *, signed int,...);
    71113unsigned int __sync_fetch_and_xor(volatile unsigned int *, unsigned int,...);
    72 signed long int __sync_fetch_and_xor(volatile signed long int *, signed long int,...);
    73 unsigned long int __sync_fetch_and_xor(volatile unsigned long int *, unsigned long int,...);
     114unsigned int __sync_fetch_and_xor_4(volatile unsigned int *, unsigned int,...);
    74115signed long long int __sync_fetch_and_xor(volatile signed long long int *, signed long long int,...);
     116signed long long int __sync_fetch_and_xor_8(volatile signed long long int *, signed long long int,...);
    75117unsigned long long int __sync_fetch_and_xor(volatile unsigned long long int *, unsigned long long int,...);
     118unsigned long long int __sync_fetch_and_xor_8(volatile unsigned long long int *, unsigned long long int,...);
    76119#if defined(__SIZEOF_INT128__)
    77120signed __int128 __sync_fetch_and_xor(volatile signed __int128 *, signed __int128,...);
     121signed __int128 __sync_fetch_and_xor_16(volatile signed __int128 *, signed __int128,...);
    78122unsigned __int128 __sync_fetch_and_xor(volatile unsigned __int128 *, unsigned __int128,...);
     123unsigned __int128 __sync_fetch_and_xor_16(volatile unsigned __int128 *, unsigned __int128,...);
    79124#endif
    80125
    81126char __sync_fetch_and_nand(volatile char *, char,...);
     127char __sync_fetch_and_nand_1(volatile char *, char,...);
    82128signed char __sync_fetch_and_nand(volatile signed char *, signed char,...);
     129signed char __sync_fetch_and_nand_1(volatile signed char *, signed char,...);
    83130unsigned char __sync_fetch_and_nand(volatile unsigned char *, unsigned char,...);
     131unsigned char __sync_fetch_and_nand_1(volatile unsigned char *, unsigned char,...);
    84132signed short __sync_fetch_and_nand(volatile signed short *, signed short,...);
     133signed short __sync_fetch_and_nand_2(volatile signed short *, signed short,...);
    85134unsigned short __sync_fetch_and_nand(volatile unsigned short *, unsigned short,...);
     135unsigned short __sync_fetch_and_nand_2(volatile unsigned short *, unsigned short,...);
    86136signed int __sync_fetch_and_nand(volatile signed int *, signed int,...);
     137signed int __sync_fetch_and_nand_4(volatile signed int *, signed int,...);
    87138unsigned int __sync_fetch_and_nand(volatile unsigned int *, unsigned int,...);
    88 signed long int __sync_fetch_and_nand(volatile signed long int *, signed long int,...);
    89 unsigned long int __sync_fetch_and_nand(volatile unsigned long int *, unsigned long int,...);
     139unsigned int __sync_fetch_and_nand_4(volatile unsigned int *, unsigned int,...);
    90140signed long long int __sync_fetch_and_nand(volatile signed long long int *, signed long long int,...);
     141signed long long int __sync_fetch_and_nand_8(volatile signed long long int *, signed long long int,...);
    91142unsigned long long int __sync_fetch_and_nand(volatile unsigned long long int *, unsigned long long int,...);
     143unsigned long long int __sync_fetch_and_nand_8(volatile unsigned long long int *, unsigned long long int,...);
    92144#if defined(__SIZEOF_INT128__)
    93145signed __int128 __sync_fetch_and_nand(volatile signed __int128 *, signed __int128,...);
     146signed __int128 __sync_fetch_and_nand_16(volatile signed __int128 *, signed __int128,...);
    94147unsigned __int128 __sync_fetch_and_nand(volatile unsigned __int128 *, unsigned __int128,...);
     148unsigned __int128 __sync_fetch_and_nand_16(volatile unsigned __int128 *, unsigned __int128,...);
    95149#endif
    96150
    97151char __sync_add_and_fetch(volatile char *, char,...);
     152char __sync_add_and_fetch_1(volatile char *, char,...);
    98153signed char __sync_add_and_fetch(volatile signed char *, signed char,...);
     154signed char __sync_add_and_fetch_1(volatile signed char *, signed char,...);
    99155unsigned char __sync_add_and_fetch(volatile unsigned char *, unsigned char,...);
     156unsigned char __sync_add_and_fetch_1(volatile unsigned char *, unsigned char,...);
    100157signed short __sync_add_and_fetch(volatile signed short *, signed short,...);
     158signed short __sync_add_and_fetch_2(volatile signed short *, signed short,...);
    101159unsigned short __sync_add_and_fetch(volatile unsigned short *, unsigned short,...);
     160unsigned short __sync_add_and_fetch_2(volatile unsigned short *, unsigned short,...);
    102161signed int __sync_add_and_fetch(volatile signed int *, signed int,...);
     162signed int __sync_add_and_fetch_4(volatile signed int *, signed int,...);
    103163signed int __sync_add_and_fetch(volatile signed int *, signed int,...);
    104 signed long int __sync_add_and_fetch(volatile signed long int *, signed long int,...);
    105 unsigned long int __sync_add_and_fetch(volatile unsigned long int *, unsigned long int,...);
     164signed int __sync_add_and_fetch_4(volatile signed int *, signed int,...);
    106165signed long long int __sync_add_and_fetch(volatile signed long long int *, signed long long int,...);
     166signed long long int __sync_add_and_fetch_8(volatile signed long long int *, signed long long int,...);
    107167unsigned long long int __sync_add_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     168unsigned long long int __sync_add_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    108169#if defined(__SIZEOF_INT128__)
    109170signed __int128 __sync_add_and_fetch(volatile signed __int128 *, signed __int128,...);
     171signed __int128 __sync_add_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    110172unsigned __int128 __sync_add_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     173unsigned __int128 __sync_add_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    111174#endif
    112175
    113176char __sync_sub_and_fetch(volatile char *, char,...);
     177char __sync_sub_and_fetch_1(volatile char *, char,...);
    114178signed char __sync_sub_and_fetch(volatile signed char *, signed char,...);
     179signed char __sync_sub_and_fetch_1(volatile signed char *, signed char,...);
    115180unsigned char __sync_sub_and_fetch(volatile unsigned char *, unsigned char,...);
     181unsigned char __sync_sub_and_fetch_1(volatile unsigned char *, unsigned char,...);
    116182signed short __sync_sub_and_fetch(volatile signed short *, signed short,...);
     183signed short __sync_sub_and_fetch_2(volatile signed short *, signed short,...);
    117184unsigned short __sync_sub_and_fetch(volatile unsigned short *, unsigned short,...);
     185unsigned short __sync_sub_and_fetch_2(volatile unsigned short *, unsigned short,...);
    118186signed int __sync_sub_and_fetch(volatile signed int *, signed int,...);
     187signed int __sync_sub_and_fetch_4(volatile signed int *, signed int,...);
    119188unsigned int __sync_sub_and_fetch(volatile unsigned int *, unsigned int,...);
    120 signed long int __sync_sub_and_fetch(volatile signed long int *, signed long int,...);
    121 unsigned long int __sync_sub_and_fetch(volatile unsigned long int *, unsigned long int,...);
     189unsigned int __sync_sub_and_fetch_4(volatile unsigned int *, unsigned int,...);
    122190signed long long int __sync_sub_and_fetch(volatile signed long long int *, signed long long int,...);
     191signed long long int __sync_sub_and_fetch_8(volatile signed long long int *, signed long long int,...);
    123192unsigned long long int __sync_sub_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     193unsigned long long int __sync_sub_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    124194#if defined(__SIZEOF_INT128__)
    125195signed __int128 __sync_sub_and_fetch(volatile signed __int128 *, signed __int128,...);
     196signed __int128 __sync_sub_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    126197unsigned __int128 __sync_sub_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     198unsigned __int128 __sync_sub_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    127199#endif
    128200
    129201char __sync_or_and_fetch(volatile char *, char,...);
     202char __sync_or_and_fetch_1(volatile char *, char,...);
    130203signed char __sync_or_and_fetch(volatile signed char *, signed char,...);
     204signed char __sync_or_and_fetch_1(volatile signed char *, signed char,...);
    131205unsigned char __sync_or_and_fetch(volatile unsigned char *, unsigned char,...);
     206unsigned char __sync_or_and_fetch_1(volatile unsigned char *, unsigned char,...);
    132207signed short __sync_or_and_fetch(volatile signed short *, signed short,...);
     208signed short __sync_or_and_fetch_2(volatile signed short *, signed short,...);
    133209unsigned short __sync_or_and_fetch(volatile unsigned short *, unsigned short,...);
     210unsigned short __sync_or_and_fetch_2(volatile unsigned short *, unsigned short,...);
    134211signed int __sync_or_and_fetch(volatile signed int *, signed int,...);
     212signed int __sync_or_and_fetch_4(volatile signed int *, signed int,...);
    135213unsigned int __sync_or_and_fetch(volatile unsigned int *, unsigned int,...);
    136 signed long int __sync_or_and_fetch(volatile signed long int *, signed long int,...);
    137 unsigned long int __sync_or_and_fetch(volatile unsigned long int *, unsigned long int,...);
     214unsigned int __sync_or_and_fetch_4(volatile unsigned int *, unsigned int,...);
    138215signed long long int __sync_or_and_fetch(volatile signed long long int *, signed long long int,...);
     216signed long long int __sync_or_and_fetch_8(volatile signed long long int *, signed long long int,...);
    139217unsigned long long int __sync_or_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     218unsigned long long int __sync_or_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    140219#if defined(__SIZEOF_INT128__)
    141220signed __int128 __sync_or_and_fetch(volatile signed __int128 *, signed __int128,...);
     221signed __int128 __sync_or_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    142222unsigned __int128 __sync_or_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     223unsigned __int128 __sync_or_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    143224#endif
    144225
    145226char __sync_and_and_fetch(volatile char *, char,...);
     227char __sync_and_and_fetch_1(volatile char *, char,...);
    146228signed char __sync_and_and_fetch(volatile signed char *, signed char,...);
     229signed char __sync_and_and_fetch_1(volatile signed char *, signed char,...);
    147230unsigned char __sync_and_and_fetch(volatile unsigned char *, unsigned char,...);
     231unsigned char __sync_and_and_fetch_1(volatile unsigned char *, unsigned char,...);
    148232signed short __sync_and_and_fetch(volatile signed short *, signed short,...);
     233signed short __sync_and_and_fetch_2(volatile signed short *, signed short,...);
    149234unsigned short __sync_and_and_fetch(volatile unsigned short *, unsigned short,...);
     235unsigned short __sync_and_and_fetch_2(volatile unsigned short *, unsigned short,...);
    150236signed int __sync_and_and_fetch(volatile signed int *, signed int,...);
     237signed int __sync_and_and_fetch_4(volatile signed int *, signed int,...);
    151238unsigned int __sync_and_and_fetch(volatile unsigned int *, unsigned int,...);
    152 signed long int __sync_and_and_fetch(volatile signed long int *, signed long int,...);
    153 unsigned long int __sync_and_and_fetch(volatile unsigned long int *, unsigned long int,...);
     239unsigned int __sync_and_and_fetch_4(volatile unsigned int *, unsigned int,...);
    154240signed long long int __sync_and_and_fetch(volatile signed long long int *, signed long long int,...);
     241signed long long int __sync_and_and_fetch_8(volatile signed long long int *, signed long long int,...);
    155242unsigned long long int __sync_and_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     243unsigned long long int __sync_and_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    156244#if defined(__SIZEOF_INT128__)
    157245signed __int128 __sync_and_and_fetch(volatile signed __int128 *, signed __int128,...);
     246signed __int128 __sync_and_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    158247unsigned __int128 __sync_and_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     248unsigned __int128 __sync_and_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    159249#endif
    160250
    161251char __sync_xor_and_fetch(volatile char *, char,...);
     252char __sync_xor_and_fetch_1(volatile char *, char,...);
    162253signed char __sync_xor_and_fetch(volatile signed char *, signed char,...);
     254signed char __sync_xor_and_fetch_1(volatile signed char *, signed char,...);
    163255unsigned char __sync_xor_and_fetch(volatile unsigned char *, unsigned char,...);
     256unsigned char __sync_xor_and_fetch_1(volatile unsigned char *, unsigned char,...);
    164257signed short __sync_xor_and_fetch(volatile signed short *, signed short,...);
     258signed short __sync_xor_and_fetch_2(volatile signed short *, signed short,...);
    165259unsigned short __sync_xor_and_fetch(volatile unsigned short *, unsigned short,...);
     260unsigned short __sync_xor_and_fetch_2(volatile unsigned short *, unsigned short,...);
    166261signed int __sync_xor_and_fetch(volatile signed int *, signed int,...);
     262signed int __sync_xor_and_fetch_4(volatile signed int *, signed int,...);
    167263unsigned int __sync_xor_and_fetch(volatile unsigned int *, unsigned int,...);
    168 signed long int __sync_xor_and_fetch(volatile signed long int *, signed long int,...);
    169 unsigned long int __sync_xor_and_fetch(volatile unsigned long int *, unsigned long int,...);
     264unsigned int __sync_xor_and_fetch_4(volatile unsigned int *, unsigned int,...);
    170265signed long long int __sync_xor_and_fetch(volatile signed long long int *, signed long long int,...);
     266signed long long int __sync_xor_and_fetch_8(volatile signed long long int *, signed long long int,...);
    171267unsigned long long int __sync_xor_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     268unsigned long long int __sync_xor_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    172269#if defined(__SIZEOF_INT128__)
    173270signed __int128 __sync_xor_and_fetch(volatile signed __int128 *, signed __int128,...);
     271signed __int128 __sync_xor_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    174272unsigned __int128 __sync_xor_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     273unsigned __int128 __sync_xor_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    175274#endif
    176275
    177276char __sync_nand_and_fetch(volatile char *, char,...);
     277char __sync_nand_and_fetch_1(volatile char *, char,...);
    178278signed char __sync_nand_and_fetch(volatile signed char *, signed char,...);
     279signed char __sync_nand_and_fetch_1(volatile signed char *, signed char,...);
    179280unsigned char __sync_nand_and_fetch(volatile unsigned char *, unsigned char,...);
     281unsigned char __sync_nand_and_fetch_1(volatile unsigned char *, unsigned char,...);
    180282signed short __sync_nand_and_fetch(volatile signed short *, signed short,...);
     283signed short __sync_nand_and_fetch_2(volatile signed short *, signed short,...);
    181284unsigned short __sync_nand_and_fetch(volatile unsigned short *, unsigned short,...);
     285unsigned short __sync_nand_and_fetch_2(volatile unsigned short *, unsigned short,...);
    182286signed int __sync_nand_and_fetch(volatile signed int *, signed int,...);
     287signed int __sync_nand_and_fetch_4(volatile signed int *, signed int,...);
    183288unsigned int __sync_nand_and_fetch(volatile unsigned int *, unsigned int,...);
    184 signed long int __sync_nand_and_fetch(volatile signed long int *, signed long int,...);
    185 unsigned long int __sync_nand_and_fetch(volatile unsigned long int *, unsigned long int,...);
     289unsigned int __sync_nand_and_fetch_4(volatile unsigned int *, unsigned int,...);
    186290signed long long int __sync_nand_and_fetch(volatile signed long long int *, signed long long int,...);
     291signed long long int __sync_nand_and_fetch_8(volatile signed long long int *, signed long long int,...);
    187292unsigned long long int __sync_nand_and_fetch(volatile unsigned long long int *, unsigned long long int,...);
     293unsigned long long int __sync_nand_and_fetch_8(volatile unsigned long long int *, unsigned long long int,...);
    188294#if defined(__SIZEOF_INT128__)
    189295signed __int128 __sync_nand_and_fetch(volatile signed __int128 *, signed __int128,...);
     296signed __int128 __sync_nand_and_fetch_16(volatile signed __int128 *, signed __int128,...);
    190297unsigned __int128 __sync_nand_and_fetch(volatile unsigned __int128 *, unsigned __int128,...);
     298unsigned __int128 __sync_nand_and_fetch_16(volatile unsigned __int128 *, unsigned __int128,...);
    191299#endif
    192300
    193301_Bool __sync_bool_compare_and_swap(volatile char *, char, char,...);
     302_Bool __sync_bool_compare_and_swap_1(volatile char *, char, char,...);
    194303_Bool __sync_bool_compare_and_swap(volatile signed char *, signed char, signed char,...);
     304_Bool __sync_bool_compare_and_swap_1(volatile signed char *, signed char, signed char,...);
    195305_Bool __sync_bool_compare_and_swap(volatile unsigned char *, unsigned char, unsigned char,...);
     306_Bool __sync_bool_compare_and_swap_1(volatile unsigned char *, unsigned char, unsigned char,...);
    196307_Bool __sync_bool_compare_and_swap(volatile short *, signed short, signed short,...);
     308_Bool __sync_bool_compare_and_swap_2(volatile short *, signed short, signed short,...);
    197309_Bool __sync_bool_compare_and_swap(volatile short *, unsigned short, unsigned short,...);
     310_Bool __sync_bool_compare_and_swap_2(volatile short *, unsigned short, unsigned short,...);
    198311_Bool __sync_bool_compare_and_swap(volatile signed int *, signed int, signed int,...);
     312_Bool __sync_bool_compare_and_swap_4(volatile signed int *, signed int, signed int,...);
    199313_Bool __sync_bool_compare_and_swap(volatile unsigned int *, unsigned int, unsigned int,...);
    200 _Bool __sync_bool_compare_and_swap(volatile signed long int *, signed long int, signed long int,...);
    201 _Bool __sync_bool_compare_and_swap(volatile unsigned long int *, unsigned long int, unsigned long int,...);
     314_Bool __sync_bool_compare_and_swap_4(volatile unsigned int *, unsigned int, unsigned int,...);
    202315_Bool __sync_bool_compare_and_swap(volatile signed long long int *, signed long long int, signed long long int,...);
     316_Bool __sync_bool_compare_and_swap_8(volatile signed long long int *, signed long long int, signed long long int,...);
    203317_Bool __sync_bool_compare_and_swap(volatile unsigned long long int *, unsigned long long int, unsigned long long int,...);
     318_Bool __sync_bool_compare_and_swap_8(volatile unsigned long long int *, unsigned long long int, unsigned long long int,...);
    204319#if defined(__SIZEOF_INT128__)
    205320_Bool __sync_bool_compare_and_swap(volatile signed __int128 *, signed __int128, signed __int128,...);
     321_Bool __sync_bool_compare_and_swap_16(volatile signed __int128 *, signed __int128, signed __int128,...);
    206322_Bool __sync_bool_compare_and_swap(volatile unsigned __int128 *, unsigned __int128, unsigned __int128,...);
     323_Bool __sync_bool_compare_and_swap_16(volatile unsigned __int128 *, unsigned __int128, unsigned __int128,...);
    207324#endif
    208325forall(dtype T) _Bool __sync_bool_compare_and_swap(T * volatile *, T *, T*, ...);
    209326
    210327char __sync_val_compare_and_swap(volatile char *, char, char,...);
     328char __sync_val_compare_and_swap_1(volatile char *, char, char,...);
    211329signed char __sync_val_compare_and_swap(volatile signed char *, signed char, signed char,...);
     330signed char __sync_val_compare_and_swap_1(volatile signed char *, signed char, signed char,...);
    212331unsigned char __sync_val_compare_and_swap(volatile unsigned char *, unsigned char, unsigned char,...);
     332unsigned char __sync_val_compare_and_swap_1(volatile unsigned char *, unsigned char, unsigned char,...);
    213333signed short __sync_val_compare_and_swap(volatile signed short *, signed short, signed short,...);
     334signed short __sync_val_compare_and_swap_2(volatile signed short *, signed short, signed short,...);
    214335unsigned short __sync_val_compare_and_swap(volatile unsigned short *, unsigned short, unsigned short,...);
     336unsigned short __sync_val_compare_and_swap_2(volatile unsigned short *, unsigned short, unsigned short,...);
    215337signed int __sync_val_compare_and_swap(volatile signed int *, signed int, signed int,...);
     338signed int __sync_val_compare_and_swap_4(volatile signed int *, signed int, signed int,...);
    216339unsigned int __sync_val_compare_and_swap(volatile unsigned int *, unsigned int, unsigned int,...);
    217 signed long int __sync_val_compare_and_swap(volatile signed long int *, signed long int, signed long int,...);
    218 unsigned long int __sync_val_compare_and_swap(volatile unsigned long int *, unsigned long int, unsigned long int,...);
     340unsigned int __sync_val_compare_and_swap_4(volatile unsigned int *, unsigned int, unsigned int,...);
    219341signed long long int __sync_val_compare_and_swap(volatile signed long long int *, signed long long int, signed long long int,...);
     342signed long long int __sync_val_compare_and_swap_8(volatile signed long long int *, signed long long int, signed long long int,...);
    220343unsigned long long int __sync_val_compare_and_swap(volatile unsigned long long int *, unsigned long long int, unsigned long long int,...);
     344unsigned long long int __sync_val_compare_and_swap_8(volatile unsigned long long int *, unsigned long long int, unsigned long long int,...);
    221345#if defined(__SIZEOF_INT128__)
    222346signed __int128 __sync_val_compare_and_swap(volatile signed __int128 *, signed __int128, signed __int128,...);
     347signed __int128 __sync_val_compare_and_swap_16(volatile signed __int128 *, signed __int128, signed __int128,...);
    223348unsigned __int128 __sync_val_compare_and_swap(volatile unsigned __int128 *, unsigned __int128, unsigned __int128,...);
     349unsigned __int128 __sync_val_compare_and_swap_16(volatile unsigned __int128 *, unsigned __int128, unsigned __int128,...);
    224350#endif
    225351forall(dtype T) T * __sync_val_compare_and_swap(T * volatile *, T *, T*,...);
    226352
    227353char __sync_lock_test_and_set(volatile char *, char,...);
     354char __sync_lock_test_and_set_1(volatile char *, char,...);
    228355signed char __sync_lock_test_and_set(volatile signed char *, signed char,...);
     356signed char __sync_lock_test_and_set_1(volatile signed char *, signed char,...);
    229357unsigned char __sync_lock_test_and_set(volatile unsigned char *, unsigned char,...);
     358unsigned char __sync_lock_test_and_set_1(volatile unsigned char *, unsigned char,...);
    230359signed short __sync_lock_test_and_set(volatile signed short *, signed short,...);
     360signed short __sync_lock_test_and_set_2(volatile signed short *, signed short,...);
    231361unsigned short __sync_lock_test_and_set(volatile unsigned short *, unsigned short,...);
     362unsigned short __sync_lock_test_and_set_2(volatile unsigned short *, unsigned short,...);
    232363signed int __sync_lock_test_and_set(volatile signed int *, signed int,...);
     364signed int __sync_lock_test_and_set_4(volatile signed int *, signed int,...);
    233365unsigned int __sync_lock_test_and_set(volatile unsigned int *, unsigned int,...);
    234 signed long int __sync_lock_test_and_set(volatile signed long int *, signed long int,...);
    235 unsigned long int __sync_lock_test_and_set(volatile unsigned long int *, unsigned long int,...);
     366unsigned int __sync_lock_test_and_set_4(volatile unsigned int *, unsigned int,...);
    236367signed long long int __sync_lock_test_and_set(volatile signed long long int *, signed long long int,...);
     368signed long long int __sync_lock_test_and_set_8(volatile signed long long int *, signed long long int,...);
    237369unsigned long long int __sync_lock_test_and_set(volatile unsigned long long int *, unsigned long long int,...);
     370unsigned long long int __sync_lock_test_and_set_8(volatile unsigned long long int *, unsigned long long int,...);
    238371#if defined(__SIZEOF_INT128__)
    239372signed __int128 __sync_lock_test_and_set(volatile signed __int128 *, signed __int128,...);
     373signed __int128 __sync_lock_test_and_set_16(volatile signed __int128 *, signed __int128,...);
    240374unsigned __int128 __sync_lock_test_and_set(volatile unsigned __int128 *, unsigned __int128,...);
     375unsigned __int128 __sync_lock_test_and_set_16(volatile unsigned __int128 *, unsigned __int128,...);
    241376#endif
    242377
    243378void __sync_lock_release(volatile char *,...);
     379void __sync_lock_release_1(volatile char *,...);
    244380void __sync_lock_release(volatile signed char *,...);
     381void __sync_lock_release_1(volatile signed char *,...);
    245382void __sync_lock_release(volatile unsigned char *,...);
     383void __sync_lock_release_1(volatile unsigned char *,...);
    246384void __sync_lock_release(volatile signed short *,...);
     385void __sync_lock_release_2(volatile signed short *,...);
    247386void __sync_lock_release(volatile unsigned short *,...);
     387void __sync_lock_release_2(volatile unsigned short *,...);
    248388void __sync_lock_release(volatile signed int *,...);
     389void __sync_lock_release_4(volatile signed int *,...);
    249390void __sync_lock_release(volatile unsigned int *,...);
    250 void __sync_lock_release(volatile signed long int *,...);
    251 void __sync_lock_release(volatile unsigned long int *,...);
     391void __sync_lock_release_4(volatile unsigned int *,...);
    252392void __sync_lock_release(volatile signed long long int *,...);
     393void __sync_lock_release_8(volatile signed long long int *,...);
    253394void __sync_lock_release(volatile unsigned long long int *,...);
     395void __sync_lock_release_8(volatile unsigned long long int *,...);
    254396#if defined(__SIZEOF_INT128__)
    255397void __sync_lock_release(volatile signed __int128 *,...);
     398void __sync_lock_release_16(volatile signed __int128 *,...);
    256399void __sync_lock_release(volatile unsigned __int128 *,...);
     400void __sync_lock_release_16(volatile unsigned __int128 *,...);
    257401#endif
    258402
     
    270414_Bool __atomic_test_and_set(volatile signed int *, int);
    271415_Bool __atomic_test_and_set(volatile unsigned int *, int);
    272 _Bool __atomic_test_and_set(volatile signed long int *, int);
    273 _Bool __atomic_test_and_set(volatile unsigned long int *, int);
    274416_Bool __atomic_test_and_set(volatile signed long long int *, int);
    275417_Bool __atomic_test_and_set(volatile unsigned long long int *, int);
     
    287429void __atomic_clear(volatile signed int *, int);
    288430void __atomic_clear(volatile unsigned int *, int);
    289 void __atomic_clear(volatile signed long int *, int);
    290 void __atomic_clear(volatile unsigned long int *, int);
    291431void __atomic_clear(volatile signed long long int *, int);
    292432void __atomic_clear(volatile unsigned long long int *, int);
     
    296436#endif
    297437
    298 _Bool __atomic_exchange_n(volatile _Bool *, _Bool, int);
    299 void __atomic_exchange(volatile _Bool *, volatile _Bool *, volatile _Bool *, int);
    300438char __atomic_exchange_n(volatile char *, char, int);
     439char __atomic_exchange_1(volatile char *, char, int);
    301440void __atomic_exchange(volatile char *, volatile char *, volatile char *, int);
    302441signed char __atomic_exchange_n(volatile signed char *, signed char, int);
     442signed char __atomic_exchange_1(volatile signed char *, signed char, int);
    303443void __atomic_exchange(volatile signed char *, volatile signed char *, volatile signed char *, int);
    304444unsigned char __atomic_exchange_n(volatile unsigned char *, unsigned char, int);
     445unsigned char __atomic_exchange_1(volatile unsigned char *, unsigned char, int);
    305446void __atomic_exchange(volatile unsigned char *, volatile unsigned char *, volatile unsigned char *, int);
    306447signed short __atomic_exchange_n(volatile signed short *, signed short, int);
     448signed short __atomic_exchange_2(volatile signed short *, signed short, int);
    307449void __atomic_exchange(volatile signed short *, volatile signed short *, volatile signed short *, int);
    308450unsigned short __atomic_exchange_n(volatile unsigned short *, unsigned short, int);
     451unsigned short __atomic_exchange_2(volatile unsigned short *, unsigned short, int);
    309452void __atomic_exchange(volatile unsigned short *, volatile unsigned short *, volatile unsigned short *, int);
    310453signed int __atomic_exchange_n(volatile signed int *, signed int, int);
     454signed int __atomic_exchange_4(volatile signed int *, signed int, int);
    311455void __atomic_exchange(volatile signed int *, volatile signed int *, volatile signed int *, int);
    312456unsigned int __atomic_exchange_n(volatile unsigned int *, unsigned int, int);
     457unsigned int __atomic_exchange_4(volatile unsigned int *, unsigned int, int);
    313458void __atomic_exchange(volatile unsigned int *, volatile unsigned int *, volatile unsigned int *, int);
    314 signed long int __atomic_exchange_n(volatile signed long int *, signed long int, int);
    315 void __atomic_exchange(volatile signed long int *, volatile signed long int *, volatile signed long int *, int);
    316 unsigned long int __atomic_exchange_n(volatile unsigned long int *, unsigned long int, int);
    317 void __atomic_exchange(volatile unsigned long int *, volatile unsigned long int *, volatile unsigned long int *, int);
    318459signed long long int __atomic_exchange_n(volatile signed long long int *, signed long long int, int);
     460signed long long int __atomic_exchange_8(volatile signed long long int *, signed long long int, int);
    319461void __atomic_exchange(volatile signed long long int *, volatile signed long long int *, volatile signed long long int *, int);
    320462unsigned long long int __atomic_exchange_n(volatile unsigned long long int *, unsigned long long int, int);
     463unsigned long long int __atomic_exchange_8(volatile unsigned long long int *, unsigned long long int, int);
    321464void __atomic_exchange(volatile unsigned long long int *, volatile unsigned long long int *, volatile unsigned long long int *, int);
    322465#if defined(__SIZEOF_INT128__)
    323466signed __int128 __atomic_exchange_n(volatile signed __int128 *, signed __int128, int);
     467signed __int128 __atomic_exchange_16(volatile signed __int128 *, signed __int128, int);
    324468void __atomic_exchange(volatile signed __int128 *, volatile signed __int128 *, volatile signed __int128 *, int);
    325469unsigned __int128 __atomic_exchange_n(volatile unsigned __int128 *, unsigned __int128, int);
     470unsigned __int128 __atomic_exchange_16(volatile unsigned __int128 *, unsigned __int128, int);
    326471void __atomic_exchange(volatile unsigned __int128 *, volatile unsigned __int128 *, volatile unsigned __int128 *, int);
    327472#endif
     
    332477void __atomic_load(const volatile _Bool *, volatile _Bool *, int);
    333478char __atomic_load_n(const volatile char *, int);
     479char __atomic_load_1(const volatile char *, int);
    334480void __atomic_load(const volatile char *, volatile char *, int);
    335481signed char __atomic_load_n(const volatile signed char *, int);
     482signed char __atomic_load_1(const volatile signed char *, int);
    336483void __atomic_load(const volatile signed char *, volatile signed char *, int);
    337484unsigned char __atomic_load_n(const volatile unsigned char *, int);
     485unsigned char __atomic_load_1(const volatile unsigned char *, int);
    338486void __atomic_load(const volatile unsigned char *, volatile unsigned char *, int);
    339487signed short __atomic_load_n(const volatile signed short *, int);
     488signed short __atomic_load_2(const volatile signed short *, int);
    340489void __atomic_load(const volatile signed short *, volatile signed short *, int);
    341490unsigned short __atomic_load_n(const volatile unsigned short *, int);
     491unsigned short __atomic_load_2(const volatile unsigned short *, int);
    342492void __atomic_load(const volatile unsigned short *, volatile unsigned short *, int);
    343493signed int __atomic_load_n(const volatile signed int *, int);
     494signed int __atomic_load_4(const volatile signed int *, int);
    344495void __atomic_load(const volatile signed int *, volatile signed int *, int);
    345496unsigned int __atomic_load_n(const volatile unsigned int *, int);
     497unsigned int __atomic_load_4(const volatile unsigned int *, int);
    346498void __atomic_load(const volatile unsigned int *, volatile unsigned int *, int);
    347 signed long int __atomic_load_n(const volatile signed long int *, int);
    348 void __atomic_load(const volatile signed long int *, volatile signed long int *, int);
    349 unsigned long int __atomic_load_n(const volatile unsigned long int *, int);
    350 void __atomic_load(const volatile unsigned long int *, volatile unsigned long int *, int);
    351499signed long long int __atomic_load_n(const volatile signed long long int *, int);
     500signed long long int __atomic_load_8(const volatile signed long long int *, int);
    352501void __atomic_load(const volatile signed long long int *, volatile signed long long int *, int);
    353502unsigned long long int __atomic_load_n(const volatile unsigned long long int *, int);
     503unsigned long long int __atomic_load_8(const volatile unsigned long long int *, int);
    354504void __atomic_load(const volatile unsigned long long int *, volatile unsigned long long int *, int);
    355505#if defined(__SIZEOF_INT128__)
    356506signed __int128 __atomic_load_n(const volatile signed __int128 *, int);
     507signed __int128 __atomic_load_16(const volatile signed __int128 *, int);
    357508void __atomic_load(const volatile signed __int128 *, volatile signed __int128 *, int);
    358509unsigned __int128 __atomic_load_n(const volatile unsigned __int128 *, int);
     510unsigned __int128 __atomic_load_16(const volatile unsigned __int128 *, int);
    359511void __atomic_load(const volatile unsigned __int128 *, volatile unsigned __int128 *, int);
    360512#endif
     
    363515
    364516_Bool __atomic_compare_exchange_n(volatile char *, char *, char, _Bool, int, int);
     517_Bool __atomic_compare_exchange_1(volatile char *, char *, char, _Bool, int, int);
    365518_Bool __atomic_compare_exchange  (volatile char *, char *, char *, _Bool, int, int);
    366519_Bool __atomic_compare_exchange_n(volatile signed char *, signed char *, signed char, _Bool, int, int);
     520_Bool __atomic_compare_exchange_1(volatile signed char *, signed char *, signed char, _Bool, int, int);
    367521_Bool __atomic_compare_exchange  (volatile signed char *, signed char *, signed char *, _Bool, int, int);
    368522_Bool __atomic_compare_exchange_n(volatile unsigned char *, unsigned char *, unsigned char, _Bool, int, int);
     523_Bool __atomic_compare_exchange_1(volatile unsigned char *, unsigned char *, unsigned char, _Bool, int, int);
    369524_Bool __atomic_compare_exchange  (volatile unsigned char *, unsigned char *, unsigned char *, _Bool, int, int);
    370525_Bool __atomic_compare_exchange_n(volatile signed short *, signed short *, signed short, _Bool, int, int);
     526_Bool __atomic_compare_exchange_2(volatile signed short *, signed short *, signed short, _Bool, int, int);
    371527_Bool __atomic_compare_exchange  (volatile signed short *, signed short *, signed short *, _Bool, int, int);
    372528_Bool __atomic_compare_exchange_n(volatile unsigned short *, unsigned short *, unsigned short, _Bool, int, int);
     529_Bool __atomic_compare_exchange_2(volatile unsigned short *, unsigned short *, unsigned short, _Bool, int, int);
    373530_Bool __atomic_compare_exchange  (volatile unsigned short *, unsigned short *, unsigned short *, _Bool, int, int);
    374531_Bool __atomic_compare_exchange_n(volatile signed int *, signed int *, signed int, _Bool, int, int);
     532_Bool __atomic_compare_exchange_4(volatile signed int *, signed int *, signed int, _Bool, int, int);
    375533_Bool __atomic_compare_exchange  (volatile signed int *, signed int *, signed int *, _Bool, int, int);
    376534_Bool __atomic_compare_exchange_n(volatile unsigned int *, unsigned int *, unsigned int, _Bool, int, int);
     535_Bool __atomic_compare_exchange_4(volatile unsigned int *, unsigned int *, unsigned int, _Bool, int, int);
    377536_Bool __atomic_compare_exchange  (volatile unsigned int *, unsigned int *, unsigned int *, _Bool, int, int);
    378 _Bool __atomic_compare_exchange_n(volatile signed long int *, signed long int *, signed long int, _Bool, int, int);
    379 _Bool __atomic_compare_exchange  (volatile signed long int *, signed long int *, signed long int *, _Bool, int, int);
    380 _Bool __atomic_compare_exchange_n(volatile unsigned long int *, unsigned long int *, unsigned long int, _Bool, int, int);
    381 _Bool __atomic_compare_exchange  (volatile unsigned long int *, unsigned long int *, unsigned long int *, _Bool, int, int);
    382537_Bool __atomic_compare_exchange_n(volatile signed long long int *, signed long long int *, signed long long int, _Bool, int, int);
     538_Bool __atomic_compare_exchange_8(volatile signed long long int *, signed long long int *, signed long long int, _Bool, int, int);
    383539_Bool __atomic_compare_exchange  (volatile signed long long int *, signed long long int *, signed long long int *, _Bool, int, int);
    384540_Bool __atomic_compare_exchange_n(volatile unsigned long long int *, unsigned long long int *, unsigned long long int, _Bool, int, int);
     541_Bool __atomic_compare_exchange_8(volatile unsigned long long int *, unsigned long long int *, unsigned long long int, _Bool, int, int);
    385542_Bool __atomic_compare_exchange  (volatile unsigned long long int *, unsigned long long int *, unsigned long long int *, _Bool, int, int);
    386543#if defined(__SIZEOF_INT128__)
    387544_Bool __atomic_compare_exchange_n (volatile signed __int128 *, signed __int128 *, signed __int128, _Bool, int, int);
     545_Bool __atomic_compare_exchange_16(volatile signed __int128 *, signed __int128 *, signed __int128, _Bool, int, int);
    388546_Bool __atomic_compare_exchange   (volatile signed __int128 *, signed __int128 *, signed __int128 *, _Bool, int, int);
    389547_Bool __atomic_compare_exchange_n (volatile unsigned __int128 *, unsigned __int128 *, unsigned __int128, _Bool, int, int);
     548_Bool __atomic_compare_exchange_16(volatile unsigned __int128 *, unsigned __int128 *, unsigned __int128, _Bool, int, int);
    390549_Bool __atomic_compare_exchange   (volatile unsigned __int128 *, unsigned __int128 *, unsigned __int128 *, _Bool, int, int);
    391550#endif
     
    396555void __atomic_store(volatile _Bool *, _Bool *, int);
    397556void __atomic_store_n(volatile char *, char, int);
     557void __atomic_store_1(volatile char *, char, int);
    398558void __atomic_store(volatile char *, char *, int);
    399559void __atomic_store_n(volatile signed char *, signed char, int);
     560void __atomic_store_1(volatile signed char *, signed char, int);
    400561void __atomic_store(volatile signed char *, signed char *, int);
    401562void __atomic_store_n(volatile unsigned char *, unsigned char, int);
     563void __atomic_store_1(volatile unsigned char *, unsigned char, int);
    402564void __atomic_store(volatile unsigned char *, unsigned char *, int);
    403565void __atomic_store_n(volatile signed short *, signed short, int);
     566void __atomic_store_2(volatile signed short *, signed short, int);
    404567void __atomic_store(volatile signed short *, signed short *, int);
    405568void __atomic_store_n(volatile unsigned short *, unsigned short, int);
     569void __atomic_store_2(volatile unsigned short *, unsigned short, int);
    406570void __atomic_store(volatile unsigned short *, unsigned short *, int);
    407571void __atomic_store_n(volatile signed int *, signed int, int);
     572void __atomic_store_4(volatile signed int *, signed int, int);
    408573void __atomic_store(volatile signed int *, signed int *, int);
    409574void __atomic_store_n(volatile unsigned int *, unsigned int, int);
     575void __atomic_store_4(volatile unsigned int *, unsigned int, int);
    410576void __atomic_store(volatile unsigned int *, unsigned int *, int);
    411 void __atomic_store_n(volatile signed long int *, signed long int, int);
    412 void __atomic_store(volatile signed long int *, signed long int *, int);
    413 void __atomic_store_n(volatile unsigned long int *, unsigned long int, int);
    414 void __atomic_store(volatile unsigned long int *, unsigned long int *, int);
    415577void __atomic_store_n(volatile signed long long int *, signed long long int, int);
     578void __atomic_store_8(volatile signed long long int *, signed long long int, int);
    416579void __atomic_store(volatile signed long long int *, signed long long int *, int);
    417580void __atomic_store_n(volatile unsigned long long int *, unsigned long long int, int);
     581void __atomic_store_8(volatile unsigned long long int *, unsigned long long int, int);
    418582void __atomic_store(volatile unsigned long long int *, unsigned long long int *, int);
    419583#if defined(__SIZEOF_INT128__)
    420584void __atomic_store_n(volatile signed __int128 *, signed __int128, int);
     585void __atomic_store_16(volatile signed __int128 *, signed __int128, int);
    421586void __atomic_store(volatile signed __int128 *, signed __int128 *, int);
    422587void __atomic_store_n(volatile unsigned __int128 *, unsigned __int128, int);
     588void __atomic_store_16(volatile unsigned __int128 *, unsigned __int128, int);
    423589void __atomic_store(volatile unsigned __int128 *, unsigned __int128 *, int);
    424590#endif
     
    427593
    428594char __atomic_add_fetch  (volatile char *, char, int);
     595char __atomic_add_fetch_1(volatile char *, char, int);
    429596signed char __atomic_add_fetch  (volatile signed char *, signed char, int);
     597signed char __atomic_add_fetch_1(volatile signed char *, signed char, int);
    430598unsigned char __atomic_add_fetch  (volatile unsigned char *, unsigned char, int);
     599unsigned char __atomic_add_fetch_1(volatile unsigned char *, unsigned char, int);
    431600signed short __atomic_add_fetch  (volatile signed short *, signed short, int);
     601signed short __atomic_add_fetch_2(volatile signed short *, signed short, int);
    432602unsigned short __atomic_add_fetch  (volatile unsigned short *, unsigned short, int);
     603unsigned short __atomic_add_fetch_2(volatile unsigned short *, unsigned short, int);
    433604signed int __atomic_add_fetch  (volatile signed int *, signed int, int);
     605signed int __atomic_add_fetch_4(volatile signed int *, signed int, int);
    434606unsigned int __atomic_add_fetch  (volatile unsigned int *, unsigned int, int);
    435 signed long int __atomic_add_fetch  (volatile signed long int *, signed long int, int);
    436 unsigned long int __atomic_add_fetch  (volatile unsigned long int *, unsigned long int, int);
     607unsigned int __atomic_add_fetch_4(volatile unsigned int *, unsigned int, int);
    437608signed long long int __atomic_add_fetch  (volatile signed long long int *, signed long long int, int);
     609signed long long int __atomic_add_fetch_8(volatile signed long long int *, signed long long int, int);
    438610unsigned long long int __atomic_add_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     611unsigned long long int __atomic_add_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    439612#if defined(__SIZEOF_INT128__)
    440613signed __int128 __atomic_add_fetch   (volatile signed __int128 *, signed __int128, int);
     614signed __int128 __atomic_add_fetch_16(volatile signed __int128 *, signed __int128, int);
    441615unsigned __int128 __atomic_add_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     616unsigned __int128 __atomic_add_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    442617#endif
    443618
    444619char __atomic_sub_fetch  (volatile char *, char, int);
     620char __atomic_sub_fetch_1(volatile char *, char, int);
    445621signed char __atomic_sub_fetch  (volatile signed char *, signed char, int);
     622signed char __atomic_sub_fetch_1(volatile signed char *, signed char, int);
    446623unsigned char __atomic_sub_fetch  (volatile unsigned char *, unsigned char, int);
     624unsigned char __atomic_sub_fetch_1(volatile unsigned char *, unsigned char, int);
    447625signed short __atomic_sub_fetch  (volatile signed short *, signed short, int);
     626signed short __atomic_sub_fetch_2(volatile signed short *, signed short, int);
    448627unsigned short __atomic_sub_fetch  (volatile unsigned short *, unsigned short, int);
     628unsigned short __atomic_sub_fetch_2(volatile unsigned short *, unsigned short, int);
    449629signed int __atomic_sub_fetch  (volatile signed int *, signed int, int);
     630signed int __atomic_sub_fetch_4(volatile signed int *, signed int, int);
    450631unsigned int __atomic_sub_fetch  (volatile unsigned int *, unsigned int, int);
    451 signed long long int __atomic_sub_fetch  (volatile signed long int *, signed long int, int);
    452 unsigned long long int __atomic_sub_fetch  (volatile unsigned long int *, unsigned long int, int);
     632unsigned int __atomic_sub_fetch_4(volatile unsigned int *, unsigned int, int);
    453633signed long long int __atomic_sub_fetch  (volatile signed long long int *, signed long long int, int);
     634signed long long int __atomic_sub_fetch_8(volatile signed long long int *, signed long long int, int);
    454635unsigned long long int __atomic_sub_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     636unsigned long long int __atomic_sub_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    455637#if defined(__SIZEOF_INT128__)
    456638signed __int128 __atomic_sub_fetch   (volatile signed __int128 *, signed __int128, int);
     639signed __int128 __atomic_sub_fetch_16(volatile signed __int128 *, signed __int128, int);
    457640unsigned __int128 __atomic_sub_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     641unsigned __int128 __atomic_sub_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    458642#endif
    459643
    460644char __atomic_and_fetch  (volatile char *, char, int);
     645char __atomic_and_fetch_1(volatile char *, char, int);
    461646signed char __atomic_and_fetch  (volatile signed char *, signed char, int);
     647signed char __atomic_and_fetch_1(volatile signed char *, signed char, int);
    462648unsigned char __atomic_and_fetch  (volatile unsigned char *, unsigned char, int);
     649unsigned char __atomic_and_fetch_1(volatile unsigned char *, unsigned char, int);
    463650signed short __atomic_and_fetch  (volatile signed short *, signed short, int);
     651signed short __atomic_and_fetch_2(volatile signed short *, signed short, int);
    464652unsigned short __atomic_and_fetch  (volatile unsigned short *, unsigned short, int);
     653unsigned short __atomic_and_fetch_2(volatile unsigned short *, unsigned short, int);
    465654signed int __atomic_and_fetch  (volatile signed int *, signed int, int);
     655signed int __atomic_and_fetch_4(volatile signed int *, signed int, int);
    466656unsigned int __atomic_and_fetch  (volatile unsigned int *, unsigned int, int);
    467 signed long int __atomic_and_fetch  (volatile signed long int *, signed long int, int);
    468 unsigned long int __atomic_and_fetch  (volatile unsigned long int *, unsigned long int, int);
     657unsigned int __atomic_and_fetch_4(volatile unsigned int *, unsigned int, int);
    469658signed long long int __atomic_and_fetch  (volatile signed long long int *, signed long long int, int);
     659signed long long int __atomic_and_fetch_8(volatile signed long long int *, signed long long int, int);
    470660unsigned long long int __atomic_and_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     661unsigned long long int __atomic_and_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    471662#if defined(__SIZEOF_INT128__)
    472663signed __int128 __atomic_and_fetch   (volatile signed __int128 *, signed __int128, int);
     664signed __int128 __atomic_and_fetch_16(volatile signed __int128 *, signed __int128, int);
    473665unsigned __int128 __atomic_and_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     666unsigned __int128 __atomic_and_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    474667#endif
    475668
    476669char __atomic_nand_fetch  (volatile char *, char, int);
     670char __atomic_nand_fetch_1(volatile char *, char, int);
    477671signed char __atomic_nand_fetch  (volatile signed char *, signed char, int);
     672signed char __atomic_nand_fetch_1(volatile signed char *, signed char, int);
    478673unsigned char __atomic_nand_fetch  (volatile unsigned char *, unsigned char, int);
     674unsigned char __atomic_nand_fetch_1(volatile unsigned char *, unsigned char, int);
    479675signed short __atomic_nand_fetch  (volatile signed short *, signed short, int);
     676signed short __atomic_nand_fetch_2(volatile signed short *, signed short, int);
    480677unsigned short __atomic_nand_fetch  (volatile unsigned short *, unsigned short, int);
     678unsigned short __atomic_nand_fetch_2(volatile unsigned short *, unsigned short, int);
    481679signed int __atomic_nand_fetch  (volatile signed int *, signed int, int);
     680signed int __atomic_nand_fetch_4(volatile signed int *, signed int, int);
    482681unsigned int __atomic_nand_fetch  (volatile unsigned int *, unsigned int, int);
    483 signed long int __atomic_nand_fetch  (volatile signed long int *, signed long int, int);
    484 unsigned long int __atomic_nand_fetch  (volatile unsigned long int *, unsigned long int, int);
     682unsigned int __atomic_nand_fetch_4(volatile unsigned int *, unsigned int, int);
    485683signed long long int __atomic_nand_fetch  (volatile signed long long int *, signed long long int, int);
     684signed long long int __atomic_nand_fetch_8(volatile signed long long int *, signed long long int, int);
    486685unsigned long long int __atomic_nand_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     686unsigned long long int __atomic_nand_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    487687#if defined(__SIZEOF_INT128__)
    488688signed __int128 __atomic_nand_fetch   (volatile signed __int128 *, signed __int128, int);
     689signed __int128 __atomic_nand_fetch_16(volatile signed __int128 *, signed __int128, int);
    489690unsigned __int128 __atomic_nand_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     691unsigned __int128 __atomic_nand_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    490692#endif
    491693
    492694char __atomic_xor_fetch  (volatile char *, char, int);
     695char __atomic_xor_fetch_1(volatile char *, char, int);
    493696signed char __atomic_xor_fetch  (volatile signed char *, signed char, int);
     697signed char __atomic_xor_fetch_1(volatile signed char *, signed char, int);
    494698unsigned char __atomic_xor_fetch  (volatile unsigned char *, unsigned char, int);
     699unsigned char __atomic_xor_fetch_1(volatile unsigned char *, unsigned char, int);
    495700signed short __atomic_xor_fetch  (volatile signed short *, signed short, int);
     701signed short __atomic_xor_fetch_2(volatile signed short *, signed short, int);
    496702unsigned short __atomic_xor_fetch  (volatile unsigned short *, unsigned short, int);
     703unsigned short __atomic_xor_fetch_2(volatile unsigned short *, unsigned short, int);
    497704signed int __atomic_xor_fetch  (volatile signed int *, signed int, int);
     705signed int __atomic_xor_fetch_4(volatile signed int *, signed int, int);
    498706unsigned int __atomic_xor_fetch  (volatile unsigned int *, unsigned int, int);
    499 signed long int __atomic_xor_fetch  (volatile signed long int *, signed long int, int);
    500 unsigned long int __atomic_xor_fetch  (volatile unsigned long int *, unsigned long int, int);
     707unsigned int __atomic_xor_fetch_4(volatile unsigned int *, unsigned int, int);
    501708signed long long int __atomic_xor_fetch  (volatile signed long long int *, signed long long int, int);
     709signed long long int __atomic_xor_fetch_8(volatile signed long long int *, signed long long int, int);
    502710unsigned long long int __atomic_xor_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     711unsigned long long int __atomic_xor_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    503712#if defined(__SIZEOF_INT128__)
    504713signed __int128 __atomic_xor_fetch   (volatile signed __int128 *, signed __int128, int);
     714signed __int128 __atomic_xor_fetch_16(volatile signed __int128 *, signed __int128, int);
    505715unsigned __int128 __atomic_xor_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     716unsigned __int128 __atomic_xor_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    506717#endif
    507718
    508719char __atomic_or_fetch  (volatile char *, char, int);
     720char __atomic_or_fetch_1(volatile char *, char, int);
    509721signed char __atomic_or_fetch  (volatile signed char *, signed char, int);
     722signed char __atomic_or_fetch_1(volatile signed char *, signed char, int);
    510723unsigned char __atomic_or_fetch  (volatile unsigned char *, unsigned char, int);
     724unsigned char __atomic_or_fetch_1(volatile unsigned char *, unsigned char, int);
    511725signed short __atomic_or_fetch  (volatile signed short *, signed short, int);
     726signed short __atomic_or_fetch_2(volatile signed short *, signed short, int);
    512727unsigned short __atomic_or_fetch  (volatile unsigned short *, unsigned short, int);
     728unsigned short __atomic_or_fetch_2(volatile unsigned short *, unsigned short, int);
    513729signed int __atomic_or_fetch  (volatile signed int *, signed int, int);
     730signed int __atomic_or_fetch_4(volatile signed int *, signed int, int);
    514731unsigned int __atomic_or_fetch  (volatile unsigned int *, unsigned int, int);
    515 signed long int __atomic_or_fetch  (volatile signed long int *, signed long int, int);
    516 unsigned long int __atomic_or_fetch  (volatile unsigned long int *, unsigned long int, int);
     732unsigned int __atomic_or_fetch_4(volatile unsigned int *, unsigned int, int);
    517733signed long long int __atomic_or_fetch  (volatile signed long long int *, signed long long int, int);
     734signed long long int __atomic_or_fetch_8(volatile signed long long int *, signed long long int, int);
    518735unsigned long long int __atomic_or_fetch  (volatile unsigned long long int *, unsigned long long int, int);
     736unsigned long long int __atomic_or_fetch_8(volatile unsigned long long int *, unsigned long long int, int);
    519737#if defined(__SIZEOF_INT128__)
    520738signed __int128 __atomic_or_fetch   (volatile signed __int128 *, signed __int128, int);
     739signed __int128 __atomic_or_fetch_16(volatile signed __int128 *, signed __int128, int);
    521740unsigned __int128 __atomic_or_fetch   (volatile unsigned __int128 *, unsigned __int128, int);
     741unsigned __int128 __atomic_or_fetch_16(volatile unsigned __int128 *, unsigned __int128, int);
    522742#endif
    523743
    524744char __atomic_fetch_add  (volatile char *, char, int);
     745char __atomic_fetch_add_1(volatile char *, char, int);
    525746signed char __atomic_fetch_add  (volatile signed char *, signed char, int);
     747signed char __atomic_fetch_add_1(volatile signed char *, signed char, int);
    526748unsigned char __atomic_fetch_add  (volatile unsigned char *, unsigned char, int);
     749unsigned char __atomic_fetch_add_1(volatile unsigned char *, unsigned char, int);
    527750signed short __atomic_fetch_add  (volatile signed short *, signed short, int);
     751signed short __atomic_fetch_add_2(volatile signed short *, signed short, int);
    528752unsigned short __atomic_fetch_add  (volatile unsigned short *, unsigned short, int);
     753unsigned short __atomic_fetch_add_2(volatile unsigned short *, unsigned short, int);
    529754signed int __atomic_fetch_add  (volatile signed int *, signed int, int);
     755signed int __atomic_fetch_add_4(volatile signed int *, signed int, int);
    530756unsigned int __atomic_fetch_add  (volatile unsigned int *, unsigned int, int);
    531 signed long int __atomic_fetch_add  (volatile signed long int *, signed long int, int);
    532 unsigned long int __atomic_fetch_add  (volatile unsigned long int *, unsigned long int, int);
     757unsigned int __atomic_fetch_add_4(volatile unsigned int *, unsigned int, int);
    533758signed long long int __atomic_fetch_add  (volatile signed long long int *, signed long long int, int);
     759signed long long int __atomic_fetch_add_8(volatile signed long long int *, signed long long int, int);
    534760unsigned long long int __atomic_fetch_add  (volatile unsigned long long int *, unsigned long long int, int);
     761unsigned long long int __atomic_fetch_add_8(volatile unsigned long long int *, unsigned long long int, int);
    535762#if defined(__SIZEOF_INT128__)
    536763signed __int128 __atomic_fetch_add   (volatile signed __int128 *, signed __int128, int);
     764signed __int128 __atomic_fetch_add_16(volatile signed __int128 *, signed __int128, int);
    537765unsigned __int128 __atomic_fetch_add   (volatile unsigned __int128 *, unsigned __int128, int);
     766unsigned __int128 __atomic_fetch_add_16(volatile unsigned __int128 *, unsigned __int128, int);
    538767#endif
    539768
    540769char __atomic_fetch_sub  (volatile char *, char, int);
     770char __atomic_fetch_sub_1(volatile char *, char, int);
    541771signed char __atomic_fetch_sub  (volatile signed char *, signed char, int);
     772signed char __atomic_fetch_sub_1(volatile signed char *, signed char, int);
    542773unsigned char __atomic_fetch_sub  (volatile unsigned char *, unsigned char, int);
     774unsigned char __atomic_fetch_sub_1(volatile unsigned char *, unsigned char, int);
    543775signed short __atomic_fetch_sub  (volatile signed short *, signed short, int);
     776signed short __atomic_fetch_sub_2(volatile signed short *, signed short, int);
    544777unsigned short __atomic_fetch_sub  (volatile unsigned short *, unsigned short, int);
     778unsigned short __atomic_fetch_sub_2(volatile unsigned short *, unsigned short, int);
    545779signed int __atomic_fetch_sub  (volatile signed int *, signed int, int);
     780signed int __atomic_fetch_sub_4(volatile signed int *, signed int, int);
    546781unsigned int __atomic_fetch_sub  (volatile unsigned int *, unsigned int, int);
    547 signed long int __atomic_fetch_sub  (volatile signed long int *, signed long int, int);
    548 unsigned long int __atomic_fetch_sub  (volatile unsigned long int *, unsigned long int, int);
     782unsigned int __atomic_fetch_sub_4(volatile unsigned int *, unsigned int, int);
    549783signed long long int __atomic_fetch_sub  (volatile signed long long int *, signed long long int, int);
     784signed long long int __atomic_fetch_sub_8(volatile signed long long int *, signed long long int, int);
    550785unsigned long long int __atomic_fetch_sub  (volatile unsigned long long int *, unsigned long long int, int);
     786unsigned long long int __atomic_fetch_sub_8(volatile unsigned long long int *, unsigned long long int, int);
    551787#if defined(__SIZEOF_INT128__)
    552788signed __int128 __atomic_fetch_sub   (volatile signed  __int128 *, signed __int128, int);
     789signed __int128 __atomic_fetch_sub_16(volatile signed  __int128 *, signed __int128, int);
    553790unsigned __int128 __atomic_fetch_sub   (volatile unsigned  __int128 *, unsigned __int128, int);
     791unsigned __int128 __atomic_fetch_sub_16(volatile unsigned  __int128 *, unsigned __int128, int);
    554792#endif
    555793
    556794char __atomic_fetch_and  (volatile char *, char, int);
     795char __atomic_fetch_and_1(volatile char *, char, int);
    557796signed char __atomic_fetch_and  (volatile signed char *, signed char, int);
     797signed char __atomic_fetch_and_1(volatile signed char *, signed char, int);
    558798unsigned char __atomic_fetch_and  (volatile unsigned char *, unsigned char, int);
     799unsigned char __atomic_fetch_and_1(volatile unsigned char *, unsigned char, int);
    559800signed short __atomic_fetch_and  (volatile signed short *, signed short, int);
     801signed short __atomic_fetch_and_2(volatile signed short *, signed short, int);
    560802unsigned short __atomic_fetch_and  (volatile unsigned short *, unsigned short, int);
     803unsigned short __atomic_fetch_and_2(volatile unsigned short *, unsigned short, int);
    561804signed int __atomic_fetch_and  (volatile signed int *, signed int, int);
     805signed int __atomic_fetch_and_4(volatile signed int *, signed int, int);
    562806unsigned int __atomic_fetch_and  (volatile unsigned int *, unsigned int, int);
    563 signed long int __atomic_fetch_and  (volatile signed long int *, signed long int, int);
    564 unsigned long int __atomic_fetch_and  (volatile unsigned long int *, unsigned long int, int);
     807unsigned int __atomic_fetch_and_4(volatile unsigned int *, unsigned int, int);
    565808signed long long int __atomic_fetch_and  (volatile signed long long int *, signed long long int, int);
     809signed long long int __atomic_fetch_and_8(volatile signed long long int *, signed long long int, int);
    566810unsigned long long int __atomic_fetch_and  (volatile unsigned long long int *, unsigned long long int, int);
     811unsigned long long int __atomic_fetch_and_8(volatile unsigned long long int *, unsigned long long int, int);
    567812#if defined(__SIZEOF_INT128__)
    568813signed __int128 __atomic_fetch_and   (volatile signed __int128 *, signed __int128, int);
     814signed __int128 __atomic_fetch_and_16(volatile signed __int128 *, signed __int128, int);
    569815unsigned __int128 __atomic_fetch_and   (volatile unsigned __int128 *, unsigned __int128, int);
     816unsigned __int128 __atomic_fetch_and_16(volatile unsigned __int128 *, unsigned __int128, int);
    570817#endif
    571818
    572819char __atomic_fetch_nand  (volatile char *, char, int);
     820char __atomic_fetch_nand_1(volatile char *, char, int);
    573821signed char __atomic_fetch_nand  (volatile signed char *, signed char, int);
     822signed char __atomic_fetch_nand_1(volatile signed char *, signed char, int);
    574823unsigned char __atomic_fetch_nand  (volatile unsigned char *, unsigned char, int);
     824unsigned char __atomic_fetch_nand_1(volatile unsigned char *, unsigned char, int);
    575825signed short __atomic_fetch_nand  (volatile signed short *, signed short, int);
     826signed short __atomic_fetch_nand_2(volatile signed short *, signed short, int);
    576827unsigned short __atomic_fetch_nand  (volatile unsigned short *, unsigned short, int);
     828unsigned short __atomic_fetch_nand_2(volatile unsigned short *, unsigned short, int);
    577829signed int __atomic_fetch_nand  (volatile signed int *, signed int, int);
     830signed int __atomic_fetch_nand_4(volatile signed int *, signed int, int);
    578831unsigned int __atomic_fetch_nand  (volatile unsigned int *, unsigned int, int);
    579 signed long int __atomic_fetch_nand  (volatile signed long int *, signed long int, int);
    580 unsigned long int __atomic_fetch_nand  (volatile unsigned long int *, unsigned long int, int);
     832unsigned int __atomic_fetch_nand_4(volatile unsigned int *, unsigned int, int);
    581833signed long long int __atomic_fetch_nand  (volatile signed long long int *, signed long long int, int);
     834signed long long int __atomic_fetch_nand_8(volatile signed long long int *, signed long long int, int);
    582835unsigned long long int __atomic_fetch_nand  (volatile unsigned long long int *, unsigned long long int, int);
     836unsigned long long int __atomic_fetch_nand_8(volatile unsigned long long int *, unsigned long long int, int);
    583837#if defined(__SIZEOF_INT128__)
    584838signed __int128 __atomic_fetch_nand   (volatile signed __int128 *, signed __int128, int);
     839signed __int128 __atomic_fetch_nand_16(volatile signed __int128 *, signed __int128, int);
    585840unsigned __int128 __atomic_fetch_nand   (volatile unsigned __int128 *, unsigned __int128, int);
     841unsigned __int128 __atomic_fetch_nand_16(volatile unsigned __int128 *, unsigned __int128, int);
    586842#endif
    587843
    588844char __atomic_fetch_xor  (volatile char *, char, int);
     845char __atomic_fetch_xor_1(volatile char *, char, int);
    589846signed char __atomic_fetch_xor  (volatile signed char *, signed char, int);
     847signed char __atomic_fetch_xor_1(volatile signed char *, signed char, int);
    590848unsigned char __atomic_fetch_xor  (volatile unsigned char *, unsigned char, int);
     849unsigned char __atomic_fetch_xor_1(volatile unsigned char *, unsigned char, int);
    591850signed short __atomic_fetch_xor  (volatile signed short *, signed short, int);
     851signed short __atomic_fetch_xor_2(volatile signed short *, signed short, int);
    592852unsigned short __atomic_fetch_xor  (volatile unsigned short *, unsigned short, int);
     853unsigned short __atomic_fetch_xor_2(volatile unsigned short *, unsigned short, int);
    593854signed int __atomic_fetch_xor  (volatile signed int *, signed int, int);
     855signed int __atomic_fetch_xor_4(volatile signed int *, signed int, int);
    594856unsigned int __atomic_fetch_xor  (volatile unsigned int *, unsigned int, int);
    595 signed long int __atomic_fetch_xor  (volatile signed long int *, signed long int, int);
    596 unsigned long int __atomic_fetch_xor  (volatile unsigned long int *, unsigned long int, int);
     857unsigned int __atomic_fetch_xor_4(volatile unsigned int *, unsigned int, int);
    597858signed long long int __atomic_fetch_xor  (volatile signed long long int *, signed long long int, int);
     859signed long long int __atomic_fetch_xor_8(volatile signed long long int *, signed long long int, int);
    598860unsigned long long int __atomic_fetch_xor  (volatile unsigned long long int *, unsigned long long int, int);
     861unsigned long long int __atomic_fetch_xor_8(volatile unsigned long long int *, unsigned long long int, int);
    599862#if defined(__SIZEOF_INT128__)
    600863signed __int128 __atomic_fetch_xor   (volatile signed __int128 *, signed __int128, int);
     864signed __int128 __atomic_fetch_xor_16(volatile signed __int128 *, signed __int128, int);
    601865unsigned __int128 __atomic_fetch_xor   (volatile unsigned __int128 *, unsigned __int128, int);
     866unsigned __int128 __atomic_fetch_xor_16(volatile unsigned __int128 *, unsigned __int128, int);
    602867#endif
    603868
    604869char __atomic_fetch_or  (volatile char *, char, int);
     870char __atomic_fetch_or_1(volatile char *, char, int);
    605871signed char __atomic_fetch_or  (volatile signed char *, signed char, int);
     872signed char __atomic_fetch_or_1(volatile signed char *, signed char, int);
    606873unsigned char __atomic_fetch_or  (volatile unsigned char *, unsigned char, int);
     874unsigned char __atomic_fetch_or_1(volatile unsigned char *, unsigned char, int);
    607875signed short __atomic_fetch_or  (volatile signed short *, signed short, int);
     876signed short __atomic_fetch_or_2(volatile signed short *, signed short, int);
    608877unsigned short __atomic_fetch_or  (volatile unsigned short *, unsigned short, int);
     878unsigned short __atomic_fetch_or_2(volatile unsigned short *, unsigned short, int);
    609879signed int __atomic_fetch_or  (volatile signed int *, signed int, int);
     880signed int __atomic_fetch_or_4(volatile signed int *, signed int, int);
    610881unsigned int __atomic_fetch_or  (volatile unsigned int *, unsigned int, int);
    611 signed long int __atomic_fetch_or  (volatile signed long int *, signed long int, int);
    612 unsigned long int __atomic_fetch_or  (volatile unsigned long int *, unsigned long int, int);
     882unsigned int __atomic_fetch_or_4(volatile unsigned int *, unsigned int, int);
    613883signed long long int __atomic_fetch_or  (volatile signed long long int *, signed long long int, int);
     884signed long long int __atomic_fetch_or_8(volatile signed long long int *, signed long long int, int);
    614885unsigned long long int __atomic_fetch_or  (volatile unsigned long long int *, unsigned long long int, int);
     886unsigned long long int __atomic_fetch_or_8(volatile unsigned long long int *, unsigned long long int, int);
    615887#if defined(__SIZEOF_INT128__)
    616888signed __int128 __atomic_fetch_or   (volatile signed __int128 *, signed __int128, int);
     889signed __int128 __atomic_fetch_or_16(volatile signed __int128 *, signed __int128, int);
    617890unsigned __int128 __atomic_fetch_or   (volatile unsigned __int128 *, unsigned __int128, int);
     891unsigned __int128 __atomic_fetch_or_16(volatile unsigned __int128 *, unsigned __int128, int);
    618892#endif
    619893
  • tests/builtins/sync.cfa

    r9aa1317 r6a25b8f  
    44void foo() {
    55        volatile _Bool * vpB = 0; _Bool vB = 0;
    6         volatile char * vpc = 0; char * rpc = 0; char vc = 0;
    7         volatile short * vps = 0; short * rps = 0; short vs = 0;
    8         volatile int * vpi = 0; int * rpi = 0; int vi = 0;
    9         volatile long int * vpl = 0; long int * rpl = 0; long int vl = 0;
    10         volatile long long int * vpll = 0; long long int * rpll = 0; long long int vll = 0;
    11         #if defined(__SIZEOF_INT128__)
    12         volatile __int128 * vplll = 0; __int128 * rplll = 0; __int128 vlll = 0;
     6        volatile char * vp1 = 0; char * rp1 = 0; char v1 = 0;
     7        volatile short * vp2 = 0; short * rp2 = 0; short v2 = 0;
     8        volatile int * vp4 = 0; int * rp4 = 0; int v4 = 0;
     9        volatile long long int * vp8 = 0; long long int * rp8 = 0; long long int v8 = 0;
     10        #if defined(__SIZEOF_INT128__)
     11        volatile __int128 * vp16 = 0; __int128 * rp16 = 0; __int128 v16 = 0;
    1312        #endif
    1413        struct type * volatile * vpp = 0; struct type ** rpp = 0; struct type * vp = 0;
    1514
    16         { char ret; ret = __sync_fetch_and_add(vpc, vc); }
    17         { short ret; ret = __sync_fetch_and_add(vps, vs); }
    18         { int ret; ret = __sync_fetch_and_add(vpi, vi); }
    19         { long int ret; ret = __sync_fetch_and_add(vpl, vl); }
    20         { long long int ret; ret = __sync_fetch_and_add(vpll, vll); }
    21         #if defined(__SIZEOF_INT128__)
    22         { __int128 ret; ret = __sync_fetch_and_add(vplll, vlll); }
    23         #endif
    24 
    25         { char ret; ret = __sync_fetch_and_sub(vpc, vc); }
    26         { short ret; ret = __sync_fetch_and_sub(vps, vs); }
    27         { int ret; ret = __sync_fetch_and_sub(vpi, vi); }
    28         { long int ret; ret = __sync_fetch_and_sub(vpl, vl); }
    29         { long long int ret; ret = __sync_fetch_and_sub(vpll, vll); }
    30         #if defined(__SIZEOF_INT128__)
    31         { __int128 ret; ret = __sync_fetch_and_sub(vplll, vlll); }
    32         #endif
    33 
    34         { char ret; ret = __sync_fetch_and_or(vpc, vc); }
    35         { short ret; ret = __sync_fetch_and_or(vps, vs); }
    36         { int ret; ret = __sync_fetch_and_or(vpi, vi); }
    37         { long int ret; ret = __sync_fetch_and_or(vpl, vl); }
    38         { long long int ret; ret = __sync_fetch_and_or(vpll, vll); }
    39         #if defined(__SIZEOF_INT128__)
    40         { __int128 ret; ret = __sync_fetch_and_or(vplll, vlll); }
    41         #endif
    42 
    43         { char ret; ret = __sync_fetch_and_and(vpc, vc); }
    44         { short ret; ret = __sync_fetch_and_and(vps, vs); }
    45         { int ret; ret = __sync_fetch_and_and(vpi, vi); }
    46         { long int ret; ret = __sync_fetch_and_and(vpl, vl); }
    47         { long long int ret; ret = __sync_fetch_and_and(vpll, vll); }
    48         #if defined(__SIZEOF_INT128__)
    49         { __int128 ret; ret = __sync_fetch_and_and(vplll, vlll); }
    50         #endif
    51 
    52         { char ret; ret = __sync_fetch_and_xor(vpc, vc); }
    53         { short ret; ret = __sync_fetch_and_xor(vps, vs); }
    54         { int ret; ret = __sync_fetch_and_xor(vpi, vi); }
    55         { long int ret; ret = __sync_fetch_and_xor(vpl, vl); }
    56         { long long int ret; ret = __sync_fetch_and_xor(vpll, vll); }
    57         #if defined(__SIZEOF_INT128__)
    58         { __int128 ret; ret = __sync_fetch_and_xor(vplll, vlll); }
    59         #endif
    60 
    61         { char ret; ret = __sync_fetch_and_nand(vpc, vc); }
    62         { short ret; ret = __sync_fetch_and_nand(vps, vs); }
    63         { int ret; ret = __sync_fetch_and_nand(vpi, vi); }
    64         { long int ret; ret = __sync_fetch_and_nand(vpl, vl); }
    65         { long long int ret; ret = __sync_fetch_and_nand(vpll, vll); }
    66         #if defined(__SIZEOF_INT128__)
    67         { __int128 ret; ret = __sync_fetch_and_nand(vplll, vlll); }
    68         { __int128 ret; ret = __sync_fetch_and_nand_16(vplll, vlll); }
    69         #endif
    70 
    71         { char ret; ret = __sync_add_and_fetch(vpc, vc); }
    72         { short ret; ret = __sync_add_and_fetch(vps, vs); }
    73         { int ret; ret = __sync_add_and_fetch(vpi, vi); }
    74         { long int ret; ret = __sync_add_and_fetch(vpl, vl); }
    75         { long long int ret; ret = __sync_add_and_fetch(vpll, vll); }
    76         #if defined(__SIZEOF_INT128__)
    77         { __int128 ret; ret = __sync_add_and_fetch(vplll, vlll); }
    78         #endif
    79 
    80         { char ret; ret = __sync_sub_and_fetch(vpc, vc); }
    81         { short ret; ret = __sync_sub_and_fetch(vps, vs); }
    82         { int ret; ret = __sync_sub_and_fetch(vpi, vi); }
    83         { long int ret; ret = __sync_sub_and_fetch(vpl, vl); }
    84         { long long int ret; ret = __sync_sub_and_fetch(vpll, vll); }
    85         #if defined(__SIZEOF_INT128__)
    86         { __int128 ret; ret = __sync_sub_and_fetch(vplll, vlll); }
    87         #endif
    88 
    89         { char ret; ret = __sync_or_and_fetch(vpc, vc); }
    90         { short ret; ret = __sync_or_and_fetch(vps, vs); }
    91         { int ret; ret = __sync_or_and_fetch(vpi, vi); }
    92         { long int ret; ret = __sync_or_and_fetch(vpl, vl); }
    93         { long long int ret; ret = __sync_or_and_fetch(vpll, vll); }
    94         #if defined(__SIZEOF_INT128__)
    95         { __int128 ret; ret = __sync_or_and_fetch(vplll, vlll); }
    96         #endif
    97 
    98         { char ret; ret = __sync_and_and_fetch(vpc, vc); }
    99         { short ret; ret = __sync_and_and_fetch(vps, vs); }
    100         { int ret; ret = __sync_and_and_fetch(vpi, vi); }
    101         { long int ret; ret = __sync_and_and_fetch(vpl, vl); }
    102         { long long int ret; ret = __sync_and_and_fetch(vpll, vll); }
    103         #if defined(__SIZEOF_INT128__)
    104         { __int128 ret; ret = __sync_and_and_fetch(vplll, vlll); }
    105         #endif
    106 
    107         { char ret; ret = __sync_xor_and_fetch(vpc, vc); }
    108         { short ret; ret = __sync_xor_and_fetch(vps, vs); }
    109         { int ret; ret = __sync_xor_and_fetch(vpi, vi); }
    110         { long int ret; ret = __sync_xor_and_fetch(vpl, vl); }
    111         { long long int ret; ret = __sync_xor_and_fetch(vpll, vll); }
    112         #if defined(__SIZEOF_INT128__)
    113         { __int128 ret; ret = __sync_xor_and_fetch(vplll, vlll); }
    114         #endif
    115 
    116         { char ret; ret = __sync_nand_and_fetch(vpc, vc); }
    117         { short ret; ret = __sync_nand_and_fetch(vps, vs); }
    118         { int ret; ret = __sync_nand_and_fetch(vpi, vi); }
    119         { long int ret; ret = __sync_nand_and_fetch(vpl, vl); }
    120         { long long int ret; ret = __sync_nand_and_fetch(vpll, vll); }
    121         #if defined(__SIZEOF_INT128__)
    122         { __int128 ret; ret = __sync_nand_and_fetch(vplll, vlll); }
    123         #endif
    124 
    125         { _Bool ret; ret = __sync_bool_compare_and_swap(vpc, vc, vc); }
    126         { _Bool ret; ret = __sync_bool_compare_and_swap(vps, vs, vs); }
    127         { _Bool ret; ret = __sync_bool_compare_and_swap(vpi, vi, vi); }
    128         { _Bool ret; ret = __sync_bool_compare_and_swap(vpl, vl, vl); }
    129         { _Bool ret; ret = __sync_bool_compare_and_swap(vpll, vll, vll); }
    130         #if defined(__SIZEOF_INT128__)
    131         { _Bool ret; ret = __sync_bool_compare_and_swap(vplll, vlll, vlll); }
     15        { char ret; ret = __sync_fetch_and_add(vp1, v1); }
     16        { char ret; ret = __sync_fetch_and_add_1(vp1, v1); }
     17        { short ret; ret = __sync_fetch_and_add(vp2, v2); }
     18        { short ret; ret = __sync_fetch_and_add_2(vp2, v2); }
     19        { int ret; ret = __sync_fetch_and_add(vp4, v4); }
     20        { int ret; ret = __sync_fetch_and_add_4(vp4, v4); }
     21        { long long int ret; ret = __sync_fetch_and_add(vp8, v8); }
     22        { long long int ret; ret = __sync_fetch_and_add_8(vp8, v8); }
     23        #if defined(__SIZEOF_INT128__)
     24        { __int128 ret; ret = __sync_fetch_and_add(vp16, v16); }
     25        { __int128 ret; ret = __sync_fetch_and_add_16(vp16, v16); }
     26        #endif
     27
     28        { char ret; ret = __sync_fetch_and_sub(vp1, v1); }
     29        { char ret; ret = __sync_fetch_and_sub_1(vp1, v1); }
     30        { short ret; ret = __sync_fetch_and_sub(vp2, v2); }
     31        { short ret; ret = __sync_fetch_and_sub_2(vp2, v2); }
     32        { int ret; ret = __sync_fetch_and_sub(vp4, v4); }
     33        { int ret; ret = __sync_fetch_and_sub_4(vp4, v4); }
     34        { long long int ret; ret = __sync_fetch_and_sub(vp8, v8); }
     35        { long long int ret; ret = __sync_fetch_and_sub_8(vp8, v8); }
     36        #if defined(__SIZEOF_INT128__)
     37        { __int128 ret; ret = __sync_fetch_and_sub(vp16, v16); }
     38        { __int128 ret; ret = __sync_fetch_and_sub_16(vp16, v16); }
     39        #endif
     40
     41        { char ret; ret = __sync_fetch_and_or(vp1, v1); }
     42        { char ret; ret = __sync_fetch_and_or_1(vp1, v1); }
     43        { short ret; ret = __sync_fetch_and_or(vp2, v2); }
     44        { short ret; ret = __sync_fetch_and_or_2(vp2, v2); }
     45        { int ret; ret = __sync_fetch_and_or(vp4, v4); }
     46        { int ret; ret = __sync_fetch_and_or_4(vp4, v4); }
     47        { long long int ret; ret = __sync_fetch_and_or(vp8, v8); }
     48        { long long int ret; ret = __sync_fetch_and_or_8(vp8, v8); }
     49        #if defined(__SIZEOF_INT128__)
     50        { __int128 ret; ret = __sync_fetch_and_or(vp16, v16); }
     51        { __int128 ret; ret = __sync_fetch_and_or_16(vp16, v16); }
     52        #endif
     53
     54        { char ret; ret = __sync_fetch_and_and(vp1, v1); }
     55        { char ret; ret = __sync_fetch_and_and_1(vp1, v1); }
     56        { short ret; ret = __sync_fetch_and_and(vp2, v2); }
     57        { short ret; ret = __sync_fetch_and_and_2(vp2, v2); }
     58        { int ret; ret = __sync_fetch_and_and(vp4, v4); }
     59        { int ret; ret = __sync_fetch_and_and_4(vp4, v4); }
     60        { long long int ret; ret = __sync_fetch_and_and(vp8, v8); }
     61        { long long int ret; ret = __sync_fetch_and_and_8(vp8, v8); }
     62        #if defined(__SIZEOF_INT128__)
     63        { __int128 ret; ret = __sync_fetch_and_and(vp16, v16); }
     64        { __int128 ret; ret = __sync_fetch_and_and_16(vp16, v16); }
     65        #endif
     66
     67        { char ret; ret = __sync_fetch_and_xor(vp1, v1); }
     68        { char ret; ret = __sync_fetch_and_xor_1(vp1, v1); }
     69        { short ret; ret = __sync_fetch_and_xor(vp2, v2); }
     70        { short ret; ret = __sync_fetch_and_xor_2(vp2, v2); }
     71        { int ret; ret = __sync_fetch_and_xor(vp4, v4); }
     72        { int ret; ret = __sync_fetch_and_xor_4(vp4, v4); }
     73        { long long int ret; ret = __sync_fetch_and_xor(vp8, v8); }
     74        { long long int ret; ret = __sync_fetch_and_xor_8(vp8, v8); }
     75        #if defined(__SIZEOF_INT128__)
     76        { __int128 ret; ret = __sync_fetch_and_xor(vp16, v16); }
     77        { __int128 ret; ret = __sync_fetch_and_xor_16(vp16, v16); }
     78        #endif
     79
     80        { char ret; ret = __sync_fetch_and_nand(vp1, v1); }
     81        { char ret; ret = __sync_fetch_and_nand_1(vp1, v1); }
     82        { short ret; ret = __sync_fetch_and_nand(vp2, v2); }
     83        { short ret; ret = __sync_fetch_and_nand_2(vp2, v2); }
     84        { int ret; ret = __sync_fetch_and_nand(vp4, v4); }
     85        { int ret; ret = __sync_fetch_and_nand_4(vp4, v4); }
     86        { long long int ret; ret = __sync_fetch_and_nand(vp8, v8); }
     87        { long long int ret; ret = __sync_fetch_and_nand_8(vp8, v8); }
     88        #if defined(__SIZEOF_INT128__)
     89        { __int128 ret; ret = __sync_fetch_and_nand(vp16, v16); }
     90        { __int128 ret; ret = __sync_fetch_and_nand_16(vp16, v16); }
     91        #endif
     92
     93        { char ret; ret = __sync_add_and_fetch(vp1, v1); }
     94        { char ret; ret = __sync_add_and_fetch_1(vp1, v1); }
     95        { short ret; ret = __sync_add_and_fetch(vp2, v2); }
     96        { short ret; ret = __sync_add_and_fetch_2(vp2, v2); }
     97        { int ret; ret = __sync_add_and_fetch(vp4, v4); }
     98        { int ret; ret = __sync_add_and_fetch_4(vp4, v4); }
     99        { long long int ret; ret = __sync_add_and_fetch(vp8, v8); }
     100        { long long int ret; ret = __sync_add_and_fetch_8(vp8, v8); }
     101        #if defined(__SIZEOF_INT128__)
     102        { __int128 ret; ret = __sync_add_and_fetch(vp16, v16); }
     103        { __int128 ret; ret = __sync_add_and_fetch_16(vp16, v16); }
     104        #endif
     105
     106        { char ret; ret = __sync_sub_and_fetch(vp1, v1); }
     107        { char ret; ret = __sync_sub_and_fetch_1(vp1, v1); }
     108        { short ret; ret = __sync_sub_and_fetch(vp2, v2); }
     109        { short ret; ret = __sync_sub_and_fetch_2(vp2, v2); }
     110        { int ret; ret = __sync_sub_and_fetch(vp4, v4); }
     111        { int ret; ret = __sync_sub_and_fetch_4(vp4, v4); }
     112        { long long int ret; ret = __sync_sub_and_fetch(vp8, v8); }
     113        { long long int ret; ret = __sync_sub_and_fetch_8(vp8, v8); }
     114        #if defined(__SIZEOF_INT128__)
     115        { __int128 ret; ret = __sync_sub_and_fetch(vp16, v16); }
     116        { __int128 ret; ret = __sync_sub_and_fetch_16(vp16, v16); }
     117        #endif
     118
     119        { char ret; ret = __sync_or_and_fetch(vp1, v1); }
     120        { char ret; ret = __sync_or_and_fetch_1(vp1, v1); }
     121        { short ret; ret = __sync_or_and_fetch(vp2, v2); }
     122        { short ret; ret = __sync_or_and_fetch_2(vp2, v2); }
     123        { int ret; ret = __sync_or_and_fetch(vp4, v4); }
     124        { int ret; ret = __sync_or_and_fetch_4(vp4, v4); }
     125        { long long int ret; ret = __sync_or_and_fetch(vp8, v8); }
     126        { long long int ret; ret = __sync_or_and_fetch_8(vp8, v8); }
     127        #if defined(__SIZEOF_INT128__)
     128        { __int128 ret; ret = __sync_or_and_fetch(vp16, v16); }
     129        { __int128 ret; ret = __sync_or_and_fetch_16(vp16, v16); }
     130        #endif
     131
     132        { char ret; ret = __sync_and_and_fetch(vp1, v1); }
     133        { char ret; ret = __sync_and_and_fetch_1(vp1, v1); }
     134        { short ret; ret = __sync_and_and_fetch(vp2, v2); }
     135        { short ret; ret = __sync_and_and_fetch_2(vp2, v2); }
     136        { int ret; ret = __sync_and_and_fetch(vp4, v4); }
     137        { int ret; ret = __sync_and_and_fetch_4(vp4, v4); }
     138        { long long int ret; ret = __sync_and_and_fetch(vp8, v8); }
     139        { long long int ret; ret = __sync_and_and_fetch_8(vp8, v8); }
     140        #if defined(__SIZEOF_INT128__)
     141        { __int128 ret; ret = __sync_and_and_fetch(vp16, v16); }
     142        { __int128 ret; ret = __sync_and_and_fetch_16(vp16, v16); }
     143        #endif
     144
     145        { char ret; ret = __sync_xor_and_fetch(vp1, v1); }
     146        { char ret; ret = __sync_xor_and_fetch_1(vp1, v1); }
     147        { short ret; ret = __sync_xor_and_fetch(vp2, v2); }
     148        { short ret; ret = __sync_xor_and_fetch_2(vp2, v2); }
     149        { int ret; ret = __sync_xor_and_fetch(vp4, v4); }
     150        { int ret; ret = __sync_xor_and_fetch_4(vp4, v4); }
     151        { long long int ret; ret = __sync_xor_and_fetch(vp8, v8); }
     152        { long long int ret; ret = __sync_xor_and_fetch_8(vp8, v8); }
     153        #if defined(__SIZEOF_INT128__)
     154        { __int128 ret; ret = __sync_xor_and_fetch(vp16, v16); }
     155        { __int128 ret; ret = __sync_xor_and_fetch_16(vp16, v16); }
     156        #endif
     157
     158        { char ret; ret = __sync_nand_and_fetch(vp1, v1); }
     159        { char ret; ret = __sync_nand_and_fetch_1(vp1, v1); }
     160        { short ret; ret = __sync_nand_and_fetch(vp2, v2); }
     161        { short ret; ret = __sync_nand_and_fetch_2(vp2, v2); }
     162        { int ret; ret = __sync_nand_and_fetch(vp4, v4); }
     163        { int ret; ret = __sync_nand_and_fetch_4(vp4, v4); }
     164        { long long int ret; ret = __sync_nand_and_fetch(vp8, v8); }
     165        { long long int ret; ret = __sync_nand_and_fetch_8(vp8, v8); }
     166        #if defined(__SIZEOF_INT128__)
     167        { __int128 ret; ret = __sync_nand_and_fetch(vp16, v16); }
     168        { __int128 ret; ret = __sync_nand_and_fetch_16(vp16, v16); }
     169        #endif
     170
     171        { _Bool ret; ret = __sync_bool_compare_and_swap(vp1, v1, v1); }
     172        { _Bool ret; ret = __sync_bool_compare_and_swap_1(vp1, v1, v1); }
     173        { _Bool ret; ret = __sync_bool_compare_and_swap(vp2, v2, v2); }
     174        { _Bool ret; ret = __sync_bool_compare_and_swap_2(vp2, v2, v2); }
     175        { _Bool ret; ret = __sync_bool_compare_and_swap(vp4, v4, v4); }
     176        { _Bool ret; ret = __sync_bool_compare_and_swap_4(vp4, v4, v4); }
     177        { _Bool ret; ret = __sync_bool_compare_and_swap(vp8, v8, v8); }
     178        { _Bool ret; ret = __sync_bool_compare_and_swap_8(vp8, v8, v8); }
     179        #if defined(__SIZEOF_INT128__)
     180        { _Bool ret; ret = __sync_bool_compare_and_swap(vp16, v16, v16); }
     181        { _Bool ret; ret = __sync_bool_compare_and_swap_16(vp16, v16,v16); }
    132182        #endif
    133183        { _Bool ret; ret = __sync_bool_compare_and_swap(vpp, vp, vp); }
    134184
    135         { char ret; ret = __sync_val_compare_and_swap(vpc, vc, vc); }
    136         { short ret; ret = __sync_val_compare_and_swap(vps, vs, vs); }
    137         { int ret; ret = __sync_val_compare_and_swap(vpi, vi, vi); }
    138         { long int ret; ret = __sync_val_compare_and_swap(vpl, vl, vl); }
    139         { long long int ret; ret = __sync_val_compare_and_swap(vpll, vll, vll); }
    140         #if defined(__SIZEOF_INT128__)
    141         { __int128 ret; ret = __sync_val_compare_and_swap(vplll, vlll, vlll); }
     185        { char ret; ret = __sync_val_compare_and_swap(vp1, v1, v1); }
     186        { char ret; ret = __sync_val_compare_and_swap_1(vp1, v1, v1); }
     187        { short ret; ret = __sync_val_compare_and_swap(vp2, v2, v2); }
     188        { short ret; ret = __sync_val_compare_and_swap_2(vp2, v2, v2); }
     189        { int ret; ret = __sync_val_compare_and_swap(vp4, v4, v4); }
     190        { int ret; ret = __sync_val_compare_and_swap_4(vp4, v4, v4); }
     191        { long long int ret; ret = __sync_val_compare_and_swap(vp8, v8, v8); }
     192        { long long int ret; ret = __sync_val_compare_and_swap_8(vp8, v8, v8); }
     193        #if defined(__SIZEOF_INT128__)
     194        { __int128 ret; ret = __sync_val_compare_and_swap(vp16, v16, v16); }
     195        { __int128 ret; ret = __sync_val_compare_and_swap_16(vp16, v16,v16); }
    142196        #endif
    143197        { struct type * ret; ret = __sync_val_compare_and_swap(vpp, vp, vp); }
    144198
    145199
    146         { char ret; ret = __sync_lock_test_and_set(vpc, vc); }
    147         { short ret; ret = __sync_lock_test_and_set(vps, vs); }
    148         { int ret; ret = __sync_lock_test_and_set(vpi, vi); }
    149         { long int ret; ret = __sync_lock_test_and_set(vpl, vl); }
    150         { long long int ret; ret = __sync_lock_test_and_set(vpll, vll); }
    151         #if defined(__SIZEOF_INT128__)
    152         { __int128 ret; ret = __sync_lock_test_and_set(vplll, vlll); }
    153         #endif
    154 
    155         { __sync_lock_release(vpc); }
    156         { __sync_lock_release(vps); }
    157         { __sync_lock_release(vpi); }
    158         { __sync_lock_release(vpl); }
    159         { __sync_lock_release(vpll); }
    160         #if defined(__SIZEOF_INT128__)
    161         { __sync_lock_release(vplll); }
     200        { char ret; ret = __sync_lock_test_and_set(vp1, v1); }
     201        { char ret; ret = __sync_lock_test_and_set_1(vp1, v1); }
     202        { short ret; ret = __sync_lock_test_and_set(vp2, v2); }
     203        { short ret; ret = __sync_lock_test_and_set_2(vp2, v2); }
     204        { int ret; ret = __sync_lock_test_and_set(vp4, v4); }
     205        { int ret; ret = __sync_lock_test_and_set_4(vp4, v4); }
     206        { long long int ret; ret = __sync_lock_test_and_set(vp8, v8); }
     207        { long long int ret; ret = __sync_lock_test_and_set_8(vp8, v8); }
     208        #if defined(__SIZEOF_INT128__)
     209        { __int128 ret; ret = __sync_lock_test_and_set(vp16, v16); }
     210        { __int128 ret; ret = __sync_lock_test_and_set_16(vp16, v16); }
     211        #endif
     212
     213        { __sync_lock_release(vp1); }
     214        { __sync_lock_release_1(vp1); }
     215        { __sync_lock_release(vp2); }
     216        { __sync_lock_release_2(vp2); }
     217        { __sync_lock_release(vp4); }
     218        { __sync_lock_release_4(vp4); }
     219        { __sync_lock_release(vp8); }
     220        { __sync_lock_release_8(vp8); }
     221        #if defined(__SIZEOF_INT128__)
     222        { __sync_lock_release(vp16); }
     223        { __sync_lock_release_16(vp16); }
    162224        #endif
    163225
     
    168230
    169231        { _Bool ret; ret = __atomic_test_and_set(vpB, vB); }
    170         { _Bool ret; ret = __atomic_test_and_set(vpc, vc); }
     232        { _Bool ret; ret = __atomic_test_and_set(vp1, v1); }
    171233        { __atomic_clear(vpB, vB); }
    172         { __atomic_clear(vpc, vc); }
    173 
    174         { char ret; ret = __atomic_exchange_n(vpc, vc, __ATOMIC_SEQ_CST); }
    175         { char ret; __atomic_exchange(vpc, &vc, &ret, __ATOMIC_SEQ_CST); }
    176         { short ret; ret = __atomic_exchange_n(vps, vs, __ATOMIC_SEQ_CST); }
    177         { short ret; __atomic_exchange(vps, &vs, &ret, __ATOMIC_SEQ_CST); }
    178         { int ret; ret = __atomic_exchange_n(vpi, vi, __ATOMIC_SEQ_CST); }
    179         { int ret; __atomic_exchange(vpi, &vi, &ret, __ATOMIC_SEQ_CST); }
    180         { long int ret; ret = __atomic_exchange_n(vpl, vl, __ATOMIC_SEQ_CST); }
    181         { long int ret; __atomic_exchange(vpl, &vl, &ret, __ATOMIC_SEQ_CST); }
    182         { long long int ret; ret = __atomic_exchange_n(vpll, vll, __ATOMIC_SEQ_CST); }
    183         { long long int ret; __atomic_exchange(vpll, &vll, &ret, __ATOMIC_SEQ_CST); }
    184         #if defined(__SIZEOF_INT128__)
    185         { __int128 ret; ret = __atomic_exchange_n(vplll, vlll, __ATOMIC_SEQ_CST); }
    186         { __int128 ret; __atomic_exchange(vplll, &vlll, &ret, __ATOMIC_SEQ_CST); }
     234        { __atomic_clear(vp1, v1); }
     235
     236        { char ret; ret = __atomic_exchange_n(vp1, v1, __ATOMIC_SEQ_CST); }
     237        { char ret; ret = __atomic_exchange_1(vp1, v1, __ATOMIC_SEQ_CST); }
     238        { char ret; __atomic_exchange(vp1, &v1, &ret, __ATOMIC_SEQ_CST); }
     239        { short ret; ret = __atomic_exchange_n(vp2, v2, __ATOMIC_SEQ_CST); }
     240        { short ret; ret = __atomic_exchange_2(vp2, v2, __ATOMIC_SEQ_CST); }
     241        { short ret; __atomic_exchange(vp2, &v2, &ret, __ATOMIC_SEQ_CST); }
     242        { int ret; ret = __atomic_exchange_n(vp4, v4, __ATOMIC_SEQ_CST); }
     243        { int ret; ret = __atomic_exchange_4(vp4, v4, __ATOMIC_SEQ_CST); }
     244        { int ret; __atomic_exchange(vp4, &v4, &ret, __ATOMIC_SEQ_CST); }
     245        { long long int ret; ret = __atomic_exchange_n(vp8, v8, __ATOMIC_SEQ_CST); }
     246        { long long int ret; ret = __atomic_exchange_8(vp8, v8, __ATOMIC_SEQ_CST); }
     247        { long long int ret; __atomic_exchange(vp8, &v8, &ret, __ATOMIC_SEQ_CST); }
     248        #if defined(__SIZEOF_INT128__)
     249        { __int128 ret; ret = __atomic_exchange_n(vp16, v16, __ATOMIC_SEQ_CST); }
     250        { __int128 ret; ret = __atomic_exchange_16(vp16, v16, __ATOMIC_SEQ_CST); }
     251        { __int128 ret; __atomic_exchange(vp16, &v16, &ret, __ATOMIC_SEQ_CST); }
    187252        #endif
    188253        { struct type * ret; ret = __atomic_exchange_n(vpp, vp, __ATOMIC_SEQ_CST); }
    189254        { struct type * ret; __atomic_exchange(vpp, &vp, &ret, __ATOMIC_SEQ_CST); }
    190255
    191         { char ret; ret = __atomic_load_n(vpc, __ATOMIC_SEQ_CST); }
    192         { char ret; __atomic_load(vpc, &ret, __ATOMIC_SEQ_CST); }
    193         { short ret; ret = __atomic_load_n(vps, __ATOMIC_SEQ_CST); }
    194         { short ret; __atomic_load(vps, &ret, __ATOMIC_SEQ_CST); }
    195         { int ret; ret = __atomic_load_n(vpi, __ATOMIC_SEQ_CST); }
    196         { int ret; __atomic_load(vpi, &ret, __ATOMIC_SEQ_CST); }
    197         { long int ret; ret = __atomic_load_n(vpl, __ATOMIC_SEQ_CST); }
    198         { long int ret; __atomic_load(vpl, &ret, __ATOMIC_SEQ_CST); }
    199         { long long int ret; ret = __atomic_load_n(vpll, __ATOMIC_SEQ_CST); }
    200         { long long int ret; __atomic_load(vpll, &ret, __ATOMIC_SEQ_CST); }
    201         #if defined(__SIZEOF_INT128__)
    202         { __int128 ret; ret = __atomic_load_n(vplll, __ATOMIC_SEQ_CST); }
    203         { __int128 ret; __atomic_load(vplll, &ret, __ATOMIC_SEQ_CST); }
     256        { char ret; ret = __atomic_load_n(vp1, __ATOMIC_SEQ_CST); }
     257        { char ret; ret = __atomic_load_1(vp1, __ATOMIC_SEQ_CST); }
     258        { char ret; __atomic_load(vp1, &ret, __ATOMIC_SEQ_CST); }
     259        { short ret; ret = __atomic_load_n(vp2, __ATOMIC_SEQ_CST); }
     260        { short ret; ret = __atomic_load_2(vp2, __ATOMIC_SEQ_CST); }
     261        { short ret; __atomic_load(vp2, &ret, __ATOMIC_SEQ_CST); }
     262        { int ret; ret = __atomic_load_n(vp4, __ATOMIC_SEQ_CST); }
     263        { int ret; ret = __atomic_load_4(vp4, __ATOMIC_SEQ_CST); }
     264        { int ret; __atomic_load(vp4, &ret, __ATOMIC_SEQ_CST); }
     265        { long long int ret; ret = __atomic_load_n(vp8, __ATOMIC_SEQ_CST); }
     266        { long long int ret; ret = __atomic_load_8(vp8, __ATOMIC_SEQ_CST); }
     267        { long long int ret; __atomic_load(vp8, &ret, __ATOMIC_SEQ_CST); }
     268        #if defined(__SIZEOF_INT128__)
     269        { __int128 ret; ret = __atomic_load_n(vp16, __ATOMIC_SEQ_CST); }
     270        { __int128 ret; ret = __atomic_load_16(vp16, __ATOMIC_SEQ_CST); }
     271        { __int128 ret; __atomic_load(vp16, &ret, __ATOMIC_SEQ_CST); }
    204272        #endif
    205273        { struct type * ret; ret = __atomic_load_n(vpp, __ATOMIC_SEQ_CST); }
    206274        { struct type * ret; __atomic_load(vpp, &ret, __ATOMIC_SEQ_CST); }
    207275
    208         { _Bool ret; ret = __atomic_compare_exchange_n(vpc, rpc, vc, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    209         { _Bool ret; ret = __atomic_compare_exchange(vpc, rpc, &vc, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    210         { _Bool ret; ret = __atomic_compare_exchange_n(vps, rps, vs, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    211         { _Bool ret; ret = __atomic_compare_exchange(vps, rps, &vs, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    212         { _Bool ret; ret = __atomic_compare_exchange_n(vpi, rpi, vi, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    213         { _Bool ret; ret = __atomic_compare_exchange(vpi, rpi, &vi, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    214         { _Bool ret; ret = __atomic_compare_exchange_n(vpl, rpl, vl, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    215         { _Bool ret; ret = __atomic_compare_exchange(vpl, rpl, &vl, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    216         { _Bool ret; ret = __atomic_compare_exchange_n(vpll, rpll, vll, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    217         { _Bool ret; ret = __atomic_compare_exchange(vpll, rpll, &vll, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    218         #if defined(__SIZEOF_INT128__)
    219         { _Bool ret; ret = __atomic_compare_exchange_n(vplll, rplll, vlll, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    220         { _Bool ret; ret = __atomic_compare_exchange(vplll, rplll, &vlll, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     276        { _Bool ret; ret = __atomic_compare_exchange_n(vp1, rp1, v1, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     277        { _Bool ret; ret = __atomic_compare_exchange_1(vp1, rp1, v1, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     278        { _Bool ret; ret = __atomic_compare_exchange(vp1, rp1, &v1, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     279        { _Bool ret; ret = __atomic_compare_exchange_n(vp2, rp2, v2, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     280        { _Bool ret; ret = __atomic_compare_exchange_2(vp2, rp2, v2, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     281        { _Bool ret; ret = __atomic_compare_exchange(vp2, rp2, &v2, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     282        { _Bool ret; ret = __atomic_compare_exchange_n(vp4, rp4, v4, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     283        { _Bool ret; ret = __atomic_compare_exchange_4(vp4, rp4, v4, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     284        { _Bool ret; ret = __atomic_compare_exchange(vp4, rp4, &v4, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     285        { _Bool ret; ret = __atomic_compare_exchange_n(vp8, rp8, v8, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     286        { _Bool ret; ret = __atomic_compare_exchange_8(vp8, rp8, v8, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     287        { _Bool ret; ret = __atomic_compare_exchange(vp8, rp8, &v8, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     288        #if defined(__SIZEOF_INT128__)
     289        { _Bool ret; ret = __atomic_compare_exchange_n(vp16, rp16, v16, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     290        { _Bool ret; ret = __atomic_compare_exchange_16(vp16, rp16, v16, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
     291        { _Bool ret; ret = __atomic_compare_exchange(vp16, rp16, &v16, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    221292        #endif
    222293        { _Bool ret; ret = __atomic_compare_exchange_n(vpp, rpp, vp, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    223294        { _Bool ret; ret = __atomic_compare_exchange(vpp, rpp, &vp, false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST); }
    224295
    225         { __atomic_store_n(vpc, vc, __ATOMIC_SEQ_CST); }
    226         { __atomic_store(vpc, &vc, __ATOMIC_SEQ_CST); }
    227         { __atomic_store_n(vps, vs, __ATOMIC_SEQ_CST); }
    228         { __atomic_store(vps, &vs, __ATOMIC_SEQ_CST); }
    229         { __atomic_store_n(vpi, vi, __ATOMIC_SEQ_CST); }
    230         { __atomic_store(vpi, &vi, __ATOMIC_SEQ_CST); }
    231         { __atomic_store_n(vpl, vl, __ATOMIC_SEQ_CST); }
    232         { __atomic_store(vpl, &vl, __ATOMIC_SEQ_CST); }
    233         { __atomic_store_n(vpll, vll, __ATOMIC_SEQ_CST); }
    234         { __atomic_store(vpll, &vll, __ATOMIC_SEQ_CST); }
    235         #if defined(__SIZEOF_INT128__)
    236         { __atomic_store_n(vplll, vlll, __ATOMIC_SEQ_CST); }
    237         { __atomic_store(vplll, &vlll, __ATOMIC_SEQ_CST); }
     296        { __atomic_store_n(vp1, v1, __ATOMIC_SEQ_CST); }
     297        { __atomic_store_1(vp1, v1, __ATOMIC_SEQ_CST); }
     298        { __atomic_store(vp1, &v1, __ATOMIC_SEQ_CST); }
     299        { __atomic_store_n(vp2, v2, __ATOMIC_SEQ_CST); }
     300        { __atomic_store_2(vp2, v2, __ATOMIC_SEQ_CST); }
     301        { __atomic_store(vp2, &v2, __ATOMIC_SEQ_CST); }
     302        { __atomic_store_n(vp4, v4, __ATOMIC_SEQ_CST); }
     303        { __atomic_store_4(vp4, v4, __ATOMIC_SEQ_CST); }
     304        { __atomic_store(vp4, &v4, __ATOMIC_SEQ_CST); }
     305        { __atomic_store_n(vp8, v8, __ATOMIC_SEQ_CST); }
     306        { __atomic_store_8(vp8, v8, __ATOMIC_SEQ_CST); }
     307        { __atomic_store(vp8, &v8, __ATOMIC_SEQ_CST); }
     308        #if defined(__SIZEOF_INT128__)
     309        { __atomic_store_n(vp16, v16, __ATOMIC_SEQ_CST); }
     310        { __atomic_store_16(vp16, v16, __ATOMIC_SEQ_CST); }
     311        { __atomic_store(vp16, &v16, __ATOMIC_SEQ_CST); }
    238312        #endif
    239313        { __atomic_store_n(vpp, vp, __ATOMIC_SEQ_CST); }
    240314        { __atomic_store(vpp, &vp, __ATOMIC_SEQ_CST); }
    241315
    242         { char ret; ret = __atomic_add_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    243         { short ret; ret = __atomic_add_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    244         { int ret; ret = __atomic_add_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    245         { long int ret; ret = __atomic_add_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    246         { long long int ret; ret = __atomic_add_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    247         #if defined(__SIZEOF_INT128__)
    248         { __int128 ret; ret = __atomic_add_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    249         #endif
    250 
    251         { char ret; ret = __atomic_sub_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    252         { short ret; ret = __atomic_sub_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    253         { int ret; ret = __atomic_sub_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    254         { long int ret; ret = __atomic_sub_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    255         { long long int ret; ret = __atomic_sub_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    256         #if defined(__SIZEOF_INT128__)
    257         { __int128 ret; ret = __atomic_sub_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    258         #endif
    259 
    260         { char ret; ret = __atomic_and_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    261         { short ret; ret = __atomic_and_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    262         { int ret; ret = __atomic_and_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    263         { long int ret; ret = __atomic_and_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    264         { long long int ret; ret = __atomic_and_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    265         #if defined(__SIZEOF_INT128__)
    266         { __int128 ret; ret = __atomic_and_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    267         #endif
    268 
    269         { char ret; ret = __atomic_nand_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    270         { short ret; ret = __atomic_nand_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    271         { int ret; ret = __atomic_nand_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    272         { long int ret; ret = __atomic_nand_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    273         { long long int ret; ret = __atomic_nand_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    274         #if defined(__SIZEOF_INT128__)
    275         { __int128 ret; ret = __atomic_nand_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    276         #endif
    277 
    278         { char ret; ret = __atomic_xor_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    279         { short ret; ret = __atomic_xor_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    280         { int ret; ret = __atomic_xor_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    281         { long int ret; ret = __atomic_xor_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    282         { long long int ret; ret = __atomic_xor_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    283         #if defined(__SIZEOF_INT128__)
    284         { __int128 ret; ret = __atomic_xor_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    285         #endif
    286 
    287         { char ret; ret = __atomic_or_fetch(vpc, vc, __ATOMIC_SEQ_CST); }
    288         { short ret; ret = __atomic_or_fetch(vps, vs, __ATOMIC_SEQ_CST); }
    289         { int ret; ret = __atomic_or_fetch(vpi, vi, __ATOMIC_SEQ_CST); }
    290         { long int ret; ret = __atomic_or_fetch(vpl, vl, __ATOMIC_SEQ_CST); }
    291         { long long int ret; ret = __atomic_or_fetch(vpll, vll, __ATOMIC_SEQ_CST); }
    292         #if defined(__SIZEOF_INT128__)
    293         { __int128 ret; ret = __atomic_or_fetch(vplll, vlll, __ATOMIC_SEQ_CST); }
    294         #endif
    295 
    296         { char ret; ret = __atomic_fetch_add(vpc, vc, __ATOMIC_SEQ_CST); }
    297         { short ret; ret = __atomic_fetch_add(vps, vs, __ATOMIC_SEQ_CST); }
    298         { int ret; ret = __atomic_fetch_add(vpi, vi, __ATOMIC_SEQ_CST); }
    299         { long int ret; ret = __atomic_fetch_add(vpl, vl, __ATOMIC_SEQ_CST); }
    300         { long long int ret; ret = __atomic_fetch_add(vpll, vll, __ATOMIC_SEQ_CST); }
    301         #if defined(__SIZEOF_INT128__)
    302         { __int128 ret; ret = __atomic_fetch_add(vplll, vlll, __ATOMIC_SEQ_CST); }
    303         #endif
    304 
    305         { char ret; ret = __atomic_fetch_sub(vpc, vc, __ATOMIC_SEQ_CST); }
    306         { short ret; ret = __atomic_fetch_sub(vps, vs, __ATOMIC_SEQ_CST); }
    307         { int ret; ret = __atomic_fetch_sub(vpi, vi, __ATOMIC_SEQ_CST); }
    308         { long int ret; ret = __atomic_fetch_sub(vpl, vl, __ATOMIC_SEQ_CST); }
    309         { long long int ret; ret = __atomic_fetch_sub(vpll, vll, __ATOMIC_SEQ_CST); }
    310         #if defined(__SIZEOF_INT128__)
    311         { __int128 ret; ret = __atomic_fetch_sub(vplll, vlll, __ATOMIC_SEQ_CST); }
    312         #endif
    313 
    314         { char ret; ret = __atomic_fetch_and(vpc, vc, __ATOMIC_SEQ_CST); }
    315         { short ret; ret = __atomic_fetch_and(vps, vs, __ATOMIC_SEQ_CST); }
    316         { int ret; ret = __atomic_fetch_and(vpi, vi, __ATOMIC_SEQ_CST); }
    317         { long int ret; ret = __atomic_fetch_and(vpl, vl, __ATOMIC_SEQ_CST); }
    318         { long long int ret; ret = __atomic_fetch_and(vpll, vll, __ATOMIC_SEQ_CST); }
    319         #if defined(__SIZEOF_INT128__)
    320         { __int128 ret; ret = __atomic_fetch_and(vplll, vlll, __ATOMIC_SEQ_CST); }
    321         #endif
    322 
    323         { char ret; ret = __atomic_fetch_nand(vpc, vc, __ATOMIC_SEQ_CST); }
    324         { short ret; ret = __atomic_fetch_nand(vps, vs, __ATOMIC_SEQ_CST); }
    325         { int ret; ret = __atomic_fetch_nand(vpi, vi, __ATOMIC_SEQ_CST); }
    326         { long int ret; ret = __atomic_fetch_nand(vpl, vl, __ATOMIC_SEQ_CST); }
    327         { long long int ret; ret = __atomic_fetch_nand(vpll, vll, __ATOMIC_SEQ_CST); }
    328         #if defined(__SIZEOF_INT128__)
    329         { __int128 ret; ret = __atomic_fetch_nand(vplll, vlll, __ATOMIC_SEQ_CST); }
    330         #endif
    331 
    332         { char ret; ret = __atomic_fetch_xor(vpc, vc, __ATOMIC_SEQ_CST); }
    333         { short ret; ret = __atomic_fetch_xor(vps, vs, __ATOMIC_SEQ_CST); }
    334         { int ret; ret = __atomic_fetch_xor(vpi, vi, __ATOMIC_SEQ_CST); }
    335         { long int ret; ret = __atomic_fetch_xor(vpl, vl, __ATOMIC_SEQ_CST); }
    336         { long long int ret; ret = __atomic_fetch_xor(vpll, vll, __ATOMIC_SEQ_CST); }
    337         #if defined(__SIZEOF_INT128__)
    338         { __int128 ret; ret = __atomic_fetch_xor(vplll, vlll, __ATOMIC_SEQ_CST); }
    339         #endif
    340 
    341         { char ret; ret = __atomic_fetch_or(vpc, vc, __ATOMIC_SEQ_CST); }
    342         { short ret; ret = __atomic_fetch_or(vps, vs, __ATOMIC_SEQ_CST); }
    343         { int ret; ret = __atomic_fetch_or(vpi, vi, __ATOMIC_SEQ_CST); }
    344         { long int ret; ret = __atomic_fetch_or(vpl, vl, __ATOMIC_SEQ_CST); }
    345         { long long int ret; ret = __atomic_fetch_or(vpll, vll, __ATOMIC_SEQ_CST); }
    346         #if defined(__SIZEOF_INT128__)
    347         { __int128 ret; ret = __atomic_fetch_or(vplll, vlll, __ATOMIC_SEQ_CST); }
    348         #endif
    349 
    350         { _Bool ret; ret = __atomic_always_lock_free(sizeof(int), vpi); }
    351         { _Bool ret; ret = __atomic_is_lock_free(sizeof(int), vpi); }
     316        { char ret; ret = __atomic_add_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     317        { char ret; ret = __atomic_add_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     318        { short ret; ret = __atomic_add_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     319        { short ret; ret = __atomic_add_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     320        { int ret; ret = __atomic_add_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     321        { int ret; ret = __atomic_add_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     322        { long long int ret; ret = __atomic_add_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     323        { long long int ret; ret = __atomic_add_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     324        #if defined(__SIZEOF_INT128__)
     325        { __int128 ret; ret = __atomic_add_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     326        { __int128 ret; ret = __atomic_add_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     327        #endif
     328
     329        { char ret; ret = __atomic_sub_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     330        { char ret; ret = __atomic_sub_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     331        { short ret; ret = __atomic_sub_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     332        { short ret; ret = __atomic_sub_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     333        { int ret; ret = __atomic_sub_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     334        { int ret; ret = __atomic_sub_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     335        { long long int ret; ret = __atomic_sub_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     336        { long long int ret; ret = __atomic_sub_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     337        #if defined(__SIZEOF_INT128__)
     338        { __int128 ret; ret = __atomic_sub_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     339        { __int128 ret; ret = __atomic_sub_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     340        #endif
     341
     342        { char ret; ret = __atomic_and_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     343        { char ret; ret = __atomic_and_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     344        { short ret; ret = __atomic_and_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     345        { short ret; ret = __atomic_and_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     346        { int ret; ret = __atomic_and_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     347        { int ret; ret = __atomic_and_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     348        { long long int ret; ret = __atomic_and_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     349        { long long int ret; ret = __atomic_and_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     350        #if defined(__SIZEOF_INT128__)
     351        { __int128 ret; ret = __atomic_and_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     352        { __int128 ret; ret = __atomic_and_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     353        #endif
     354
     355        { char ret; ret = __atomic_nand_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     356        { char ret; ret = __atomic_nand_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     357        { short ret; ret = __atomic_nand_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     358        { short ret; ret = __atomic_nand_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     359        { int ret; ret = __atomic_nand_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     360        { int ret; ret = __atomic_nand_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     361        { long long int ret; ret = __atomic_nand_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     362        { long long int ret; ret = __atomic_nand_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     363        #if defined(__SIZEOF_INT128__)
     364        { __int128 ret; ret = __atomic_nand_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     365        { __int128 ret; ret = __atomic_nand_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     366        #endif
     367
     368        { char ret; ret = __atomic_xor_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     369        { char ret; ret = __atomic_xor_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     370        { short ret; ret = __atomic_xor_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     371        { short ret; ret = __atomic_xor_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     372        { int ret; ret = __atomic_xor_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     373        { int ret; ret = __atomic_xor_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     374        { long long int ret; ret = __atomic_xor_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     375        { long long int ret; ret = __atomic_xor_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     376        #if defined(__SIZEOF_INT128__)
     377        { __int128 ret; ret = __atomic_xor_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     378        { __int128 ret; ret = __atomic_xor_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     379        #endif
     380
     381        { char ret; ret = __atomic_or_fetch(vp1, v1, __ATOMIC_SEQ_CST); }
     382        { char ret; ret = __atomic_or_fetch_1(vp1, v1, __ATOMIC_SEQ_CST); }
     383        { short ret; ret = __atomic_or_fetch(vp2, v2, __ATOMIC_SEQ_CST); }
     384        { short ret; ret = __atomic_or_fetch_2(vp2, v2, __ATOMIC_SEQ_CST); }
     385        { int ret; ret = __atomic_or_fetch(vp4, v4, __ATOMIC_SEQ_CST); }
     386        { int ret; ret = __atomic_or_fetch_4(vp4, v4, __ATOMIC_SEQ_CST); }
     387        { long long int ret; ret = __atomic_or_fetch(vp8, v8, __ATOMIC_SEQ_CST); }
     388        { long long int ret; ret = __atomic_or_fetch_8(vp8, v8, __ATOMIC_SEQ_CST); }
     389        #if defined(__SIZEOF_INT128__)
     390        { __int128 ret; ret = __atomic_or_fetch(vp16, v16, __ATOMIC_SEQ_CST); }
     391        { __int128 ret; ret = __atomic_or_fetch_16(vp16, v16, __ATOMIC_SEQ_CST); }
     392        #endif
     393
     394        { char ret; ret = __atomic_fetch_add(vp1, v1, __ATOMIC_SEQ_CST); }
     395        { char ret; ret = __atomic_fetch_add_1(vp1, v1, __ATOMIC_SEQ_CST); }
     396        { short ret; ret = __atomic_fetch_add(vp2, v2, __ATOMIC_SEQ_CST); }
     397        { short ret; ret = __atomic_fetch_add_2(vp2, v2, __ATOMIC_SEQ_CST); }
     398        { int ret; ret = __atomic_fetch_add(vp4, v4, __ATOMIC_SEQ_CST); }
     399        { int ret; ret = __atomic_fetch_add_4(vp4, v4, __ATOMIC_SEQ_CST); }
     400        { long long int ret; ret = __atomic_fetch_add(vp8, v8, __ATOMIC_SEQ_CST); }
     401        { long long int ret; ret = __atomic_fetch_add_8(vp8, v8, __ATOMIC_SEQ_CST); }
     402        #if defined(__SIZEOF_INT128__)
     403        { __int128 ret; ret = __atomic_fetch_add(vp16, v16, __ATOMIC_SEQ_CST); }
     404        { __int128 ret; ret = __atomic_fetch_add_16(vp16, v16, __ATOMIC_SEQ_CST); }
     405        #endif
     406
     407        { char ret; ret = __atomic_fetch_sub(vp1, v1, __ATOMIC_SEQ_CST); }
     408        { char ret; ret = __atomic_fetch_sub_1(vp1, v1, __ATOMIC_SEQ_CST); }
     409        { short ret; ret = __atomic_fetch_sub(vp2, v2, __ATOMIC_SEQ_CST); }
     410        { short ret; ret = __atomic_fetch_sub_2(vp2, v2, __ATOMIC_SEQ_CST); }
     411        { int ret; ret = __atomic_fetch_sub(vp4, v4, __ATOMIC_SEQ_CST); }
     412        { int ret; ret = __atomic_fetch_sub_4(vp4, v4, __ATOMIC_SEQ_CST); }
     413        { long long int ret; ret = __atomic_fetch_sub(vp8, v8, __ATOMIC_SEQ_CST); }
     414        { long long int ret; ret = __atomic_fetch_sub_8(vp8, v8, __ATOMIC_SEQ_CST); }
     415        #if defined(__SIZEOF_INT128__)
     416        { __int128 ret; ret = __atomic_fetch_sub(vp16, v16, __ATOMIC_SEQ_CST); }
     417        { __int128 ret; ret = __atomic_fetch_sub_16(vp16, v16, __ATOMIC_SEQ_CST); }
     418        #endif
     419
     420        { char ret; ret = __atomic_fetch_and(vp1, v1, __ATOMIC_SEQ_CST); }
     421        { char ret; ret = __atomic_fetch_and_1(vp1, v1, __ATOMIC_SEQ_CST); }
     422        { short ret; ret = __atomic_fetch_and(vp2, v2, __ATOMIC_SEQ_CST); }
     423        { short ret; ret = __atomic_fetch_and_2(vp2, v2, __ATOMIC_SEQ_CST); }
     424        { int ret; ret = __atomic_fetch_and(vp4, v4, __ATOMIC_SEQ_CST); }
     425        { int ret; ret = __atomic_fetch_and_4(vp4, v4, __ATOMIC_SEQ_CST); }
     426        { long long int ret; ret = __atomic_fetch_and(vp8, v8, __ATOMIC_SEQ_CST); }
     427        { long long int ret; ret = __atomic_fetch_and_8(vp8, v8, __ATOMIC_SEQ_CST); }
     428        #if defined(__SIZEOF_INT128__)
     429        { __int128 ret; ret = __atomic_fetch_and(vp16, v16, __ATOMIC_SEQ_CST); }
     430        { __int128 ret; ret = __atomic_fetch_and_16(vp16, v16, __ATOMIC_SEQ_CST); }
     431        #endif
     432
     433        { char ret; ret = __atomic_fetch_nand(vp1, v1, __ATOMIC_SEQ_CST); }
     434        { char ret; ret = __atomic_fetch_nand_1(vp1, v1, __ATOMIC_SEQ_CST); }
     435        { short ret; ret = __atomic_fetch_nand(vp2, v2, __ATOMIC_SEQ_CST); }
     436        { short ret; ret = __atomic_fetch_nand_2(vp2, v2, __ATOMIC_SEQ_CST); }
     437        { int ret; ret = __atomic_fetch_nand(vp4, v4, __ATOMIC_SEQ_CST); }
     438        { int ret; ret = __atomic_fetch_nand_4(vp4, v4, __ATOMIC_SEQ_CST); }
     439        { long long int ret; ret = __atomic_fetch_nand(vp8, v8, __ATOMIC_SEQ_CST); }
     440        { long long int ret; ret = __atomic_fetch_nand_8(vp8, v8, __ATOMIC_SEQ_CST); }
     441        #if defined(__SIZEOF_INT128__)
     442        { __int128 ret; ret = __atomic_fetch_nand(vp16, v16, __ATOMIC_SEQ_CST); }
     443        { __int128 ret; ret = __atomic_fetch_nand_16(vp16, v16, __ATOMIC_SEQ_CST); }
     444        #endif
     445
     446        { char ret; ret = __atomic_fetch_xor(vp1, v1, __ATOMIC_SEQ_CST); }
     447        { char ret; ret = __atomic_fetch_xor_1(vp1, v1, __ATOMIC_SEQ_CST); }
     448        { short ret; ret = __atomic_fetch_xor(vp2, v2, __ATOMIC_SEQ_CST); }
     449        { short ret; ret = __atomic_fetch_xor_2(vp2, v2, __ATOMIC_SEQ_CST); }
     450        { int ret; ret = __atomic_fetch_xor(vp4, v4, __ATOMIC_SEQ_CST); }
     451        { int ret; ret = __atomic_fetch_xor_4(vp4, v4, __ATOMIC_SEQ_CST); }
     452        { long long int ret; ret = __atomic_fetch_xor(vp8, v8, __ATOMIC_SEQ_CST); }
     453        { long long int ret; ret = __atomic_fetch_xor_8(vp8, v8, __ATOMIC_SEQ_CST); }
     454        #if defined(__SIZEOF_INT128__)
     455        { __int128 ret; ret = __atomic_fetch_xor(vp16, v16, __ATOMIC_SEQ_CST); }
     456        { __int128 ret; ret = __atomic_fetch_xor_16(vp16, v16, __ATOMIC_SEQ_CST); }
     457        #endif
     458
     459        { char ret; ret = __atomic_fetch_or(vp1, v1, __ATOMIC_SEQ_CST); }
     460        { char ret; ret = __atomic_fetch_or_1(vp1, v1, __ATOMIC_SEQ_CST); }
     461        { short ret; ret = __atomic_fetch_or(vp2, v2, __ATOMIC_SEQ_CST); }
     462        { short ret; ret = __atomic_fetch_or_2(vp2, v2, __ATOMIC_SEQ_CST); }
     463        { int ret; ret = __atomic_fetch_or(vp4, v4, __ATOMIC_SEQ_CST); }
     464        { int ret; ret = __atomic_fetch_or_4(vp4, v4, __ATOMIC_SEQ_CST); }
     465        { long long int ret; ret = __atomic_fetch_or(vp8, v8, __ATOMIC_SEQ_CST); }
     466        { long long int ret; ret = __atomic_fetch_or_8(vp8, v8, __ATOMIC_SEQ_CST); }
     467        #if defined(__SIZEOF_INT128__)
     468        { __int128 ret; ret = __atomic_fetch_or(vp16, v16, __ATOMIC_SEQ_CST); }
     469        { __int128 ret; ret = __atomic_fetch_or_16(vp16, v16, __ATOMIC_SEQ_CST); }
     470        #endif
     471
     472        { _Bool ret; ret = __atomic_always_lock_free(sizeof(int), vp4); }
     473        { _Bool ret; ret = __atomic_is_lock_free(sizeof(int), vp4); }
    352474        { __atomic_thread_fence(__ATOMIC_SEQ_CST); }
    353475        { __atomic_signal_fence(__ATOMIC_SEQ_CST); }
  • tests/concurrent/preempt.cfa

    r9aa1317 r6a25b8f  
    3636                if( (counter % 7) == this.value ) {
    3737                        __cfaabi_check_preemption();
    38                         int next = __atomic_add_fetch( &counter, 1, __ATOMIC_SEQ_CST );
     38                        int next = __atomic_add_fetch_4(&counter, 1, __ATOMIC_SEQ_CST);
    3939                        __cfaabi_check_preemption();
    4040                        if( (next % 100) == 0 ) printf("%d\n", (int)next);
  • tests/concurrent/signal/wait.cfa

    r9aa1317 r6a25b8f  
    9898        }
    9999
    100         __atomic_fetch_sub( &waiter_left, 1,  __ATOMIC_SEQ_CST );
     100        __sync_fetch_and_sub_4( &waiter_left, 1);
    101101}
    102102
     
    109109        }
    110110
    111         __atomic_fetch_sub( &waiter_left, 1,  __ATOMIC_SEQ_CST );
     111        __sync_fetch_and_sub_4( &waiter_left, 1);
    112112}
    113113
     
    120120        }
    121121
    122         __atomic_fetch_sub( &waiter_left, 1,  __ATOMIC_SEQ_CST );
     122        __sync_fetch_and_sub_4( &waiter_left, 1);
    123123}
    124124
     
    131131        }
    132132
    133         __atomic_fetch_sub( &waiter_left, 1,  __ATOMIC_SEQ_CST );
     133        __sync_fetch_and_sub_4( &waiter_left, 1);
    134134}
    135135
Note: See TracChangeset for help on using the changeset viewer.