1*1dc4a592SRobert Mustacchi# 2*1dc4a592SRobert Mustacchi# This file and its contents are supplied under the terms of the 3*1dc4a592SRobert Mustacchi# Common Development and Distribution License ("CDDL"), version 1.0. 4*1dc4a592SRobert Mustacchi# You may only use this file in accordance with the terms of version 5*1dc4a592SRobert Mustacchi# 1.0 of the CDDL. 6*1dc4a592SRobert Mustacchi# 7*1dc4a592SRobert Mustacchi# A full copy of the text of the CDDL should have accompanied this 8*1dc4a592SRobert Mustacchi# source. A copy of the CDDL is also available via the Internet at 9*1dc4a592SRobert Mustacchi# http://www.illumos.org/license/CDDL. 10*1dc4a592SRobert Mustacchi# 11*1dc4a592SRobert Mustacchi 12*1dc4a592SRobert Mustacchi# 13*1dc4a592SRobert Mustacchi# Copyright 2022 Oxide Computer Company 14*1dc4a592SRobert Mustacchi# 15*1dc4a592SRobert Mustacchi 16*1dc4a592SRobert Mustacchi# 17*1dc4a592SRobert Mustacchi# Definitions found in sys/atomic.h. Note, this is a non-standard header 18*1dc4a592SRobert Mustacchi# so including it means that everything will always be visible. This is 19*1dc4a592SRobert Mustacchi# included as part of regression tests for #14329. We are currently 20*1dc4a592SRobert Mustacchi# assuming the following here: 21*1dc4a592SRobert Mustacchi# 22*1dc4a592SRobert Mustacchi# o _ASM_INLINES is not defined (this is generally only used in the 23*1dc4a592SRobert Mustacchi# kernel) 24*1dc4a592SRobert Mustacchi# 25*1dc4a592SRobert Mustacchi 26*1dc4a592SRobert Mustacchi# 27*1dc4a592SRobert Mustacchi# Types 28*1dc4a592SRobert Mustacchi# 29*1dc4a592SRobert Mustacchi 30*1dc4a592SRobert Mustacchi# 31*1dc4a592SRobert Mustacchi# Values. 32*1dc4a592SRobert Mustacchi# 33*1dc4a592SRobert Mustacchi 34*1dc4a592SRobert Mustacchi# 35*1dc4a592SRobert Mustacchi# Defines 36*1dc4a592SRobert Mustacchi# 37*1dc4a592SRobert Mustacchi 38*1dc4a592SRobert Mustacchi# 39*1dc4a592SRobert Mustacchi# Functions 40*1dc4a592SRobert Mustacchi# 41*1dc4a592SRobert Mustacchifunc | atomic_inc_8 |\ 42*1dc4a592SRobert Mustacchi void |\ 43*1dc4a592SRobert Mustacchi volatile uint8_t * |\ 44*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 45*1dc4a592SRobert Mustacchi 46*1dc4a592SRobert Mustacchifunc | atomic_inc_uchar |\ 47*1dc4a592SRobert Mustacchi void |\ 48*1dc4a592SRobert Mustacchi volatile uchar_t * |\ 49*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 50*1dc4a592SRobert Mustacchi 51*1dc4a592SRobert Mustacchifunc | atomic_inc_16 |\ 52*1dc4a592SRobert Mustacchi void |\ 53*1dc4a592SRobert Mustacchi volatile uint16_t * |\ 54*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 55*1dc4a592SRobert Mustacchi 56*1dc4a592SRobert Mustacchifunc | atomic_inc_ushort |\ 57*1dc4a592SRobert Mustacchi void |\ 58*1dc4a592SRobert Mustacchi volatile ushort_t * |\ 59*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 60*1dc4a592SRobert Mustacchi 61*1dc4a592SRobert Mustacchifunc | atomic_inc_32 |\ 62*1dc4a592SRobert Mustacchi void |\ 63*1dc4a592SRobert Mustacchi volatile uint32_t * |\ 64*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 65*1dc4a592SRobert Mustacchi 66*1dc4a592SRobert Mustacchifunc | atomic_inc_uint |\ 67*1dc4a592SRobert Mustacchi void |\ 68*1dc4a592SRobert Mustacchi volatile uint_t * |\ 69*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 70*1dc4a592SRobert Mustacchi 71*1dc4a592SRobert Mustacchifunc | atomic_inc_ulong |\ 72*1dc4a592SRobert Mustacchi void |\ 73*1dc4a592SRobert Mustacchi volatile ulong_t * |\ 74*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 75*1dc4a592SRobert Mustacchi 76*1dc4a592SRobert Mustacchifunc | atomic_inc_64 |\ 77*1dc4a592SRobert Mustacchi void |\ 78*1dc4a592SRobert Mustacchi volatile uint64_t * |\ 79*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 80*1dc4a592SRobert Mustacchi 81*1dc4a592SRobert Mustacchifunc | atomic_dec_8 |\ 82*1dc4a592SRobert Mustacchi void |\ 83*1dc4a592SRobert Mustacchi volatile uint8_t * |\ 84*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 85*1dc4a592SRobert Mustacchi 86*1dc4a592SRobert Mustacchifunc | atomic_dec_uchar |\ 87*1dc4a592SRobert Mustacchi void |\ 88*1dc4a592SRobert Mustacchi volatile uchar_t * |\ 89*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 90*1dc4a592SRobert Mustacchi 91*1dc4a592SRobert Mustacchifunc | atomic_dec_16 |\ 92*1dc4a592SRobert Mustacchi void |\ 93*1dc4a592SRobert Mustacchi volatile uint16_t * |\ 94*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 95*1dc4a592SRobert Mustacchi 96*1dc4a592SRobert Mustacchifunc | atomic_dec_ushort |\ 97*1dc4a592SRobert Mustacchi void |\ 98*1dc4a592SRobert Mustacchi volatile ushort_t * |\ 99*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 100*1dc4a592SRobert Mustacchi 101*1dc4a592SRobert Mustacchifunc | atomic_dec_32 |\ 102*1dc4a592SRobert Mustacchi void |\ 103*1dc4a592SRobert Mustacchi volatile uint32_t * |\ 104*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 105*1dc4a592SRobert Mustacchi 106*1dc4a592SRobert Mustacchifunc | atomic_dec_uint |\ 107*1dc4a592SRobert Mustacchi void |\ 108*1dc4a592SRobert Mustacchi volatile uint_t * |\ 109*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 110*1dc4a592SRobert Mustacchi 111*1dc4a592SRobert Mustacchifunc | atomic_dec_ulong |\ 112*1dc4a592SRobert Mustacchi void |\ 113*1dc4a592SRobert Mustacchi volatile ulong_t * |\ 114*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 115*1dc4a592SRobert Mustacchi 116*1dc4a592SRobert Mustacchifunc | atomic_dec_64 |\ 117*1dc4a592SRobert Mustacchi void |\ 118*1dc4a592SRobert Mustacchi volatile uint64_t * |\ 119*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 120*1dc4a592SRobert Mustacchi 121*1dc4a592SRobert Mustacchifunc | atomic_add_8 |\ 122*1dc4a592SRobert Mustacchi void |\ 123*1dc4a592SRobert Mustacchi volatile uint8_t *; int8_t |\ 124*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 125*1dc4a592SRobert Mustacchi 126*1dc4a592SRobert Mustacchifunc | atomic_add_char |\ 127*1dc4a592SRobert Mustacchi void |\ 128*1dc4a592SRobert Mustacchi volatile uchar_t *; signed char |\ 129*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 130*1dc4a592SRobert Mustacchi 131*1dc4a592SRobert Mustacchifunc | atomic_add_16 |\ 132*1dc4a592SRobert Mustacchi void |\ 133*1dc4a592SRobert Mustacchi volatile uint16_t *; int16_t |\ 134*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 135*1dc4a592SRobert Mustacchi 136*1dc4a592SRobert Mustacchifunc | atomic_add_short |\ 137*1dc4a592SRobert Mustacchi void |\ 138*1dc4a592SRobert Mustacchi volatile ushort_t *; short |\ 139*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 140*1dc4a592SRobert Mustacchi 141*1dc4a592SRobert Mustacchifunc | atomic_add_32 |\ 142*1dc4a592SRobert Mustacchi void |\ 143*1dc4a592SRobert Mustacchi volatile uint32_t *; int32_t |\ 144*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 145*1dc4a592SRobert Mustacchi 146*1dc4a592SRobert Mustacchifunc | atomic_add_int |\ 147*1dc4a592SRobert Mustacchi void |\ 148*1dc4a592SRobert Mustacchi volatile uint_t *; int |\ 149*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 150*1dc4a592SRobert Mustacchi 151*1dc4a592SRobert Mustacchifunc | atomic_add_ptr |\ 152*1dc4a592SRobert Mustacchi void |\ 153*1dc4a592SRobert Mustacchi volatile void *; ssize_t |\ 154*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 155*1dc4a592SRobert Mustacchi 156*1dc4a592SRobert Mustacchifunc | atomic_add_long |\ 157*1dc4a592SRobert Mustacchi void |\ 158*1dc4a592SRobert Mustacchi volatile ulong_t *; long |\ 159*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 160*1dc4a592SRobert Mustacchi 161*1dc4a592SRobert Mustacchifunc | atomic_add_64 |\ 162*1dc4a592SRobert Mustacchi void |\ 163*1dc4a592SRobert Mustacchi volatile uint64_t *; int64_t |\ 164*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 165*1dc4a592SRobert Mustacchi 166*1dc4a592SRobert Mustacchifunc | atomic_or_8 |\ 167*1dc4a592SRobert Mustacchi void |\ 168*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t |\ 169*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 170*1dc4a592SRobert Mustacchi 171*1dc4a592SRobert Mustacchifunc | atomic_or_uchar |\ 172*1dc4a592SRobert Mustacchi void |\ 173*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t |\ 174*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 175*1dc4a592SRobert Mustacchi 176*1dc4a592SRobert Mustacchifunc | atomic_or_16 |\ 177*1dc4a592SRobert Mustacchi void |\ 178*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t |\ 179*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 180*1dc4a592SRobert Mustacchi 181*1dc4a592SRobert Mustacchifunc | atomic_or_ushort |\ 182*1dc4a592SRobert Mustacchi void |\ 183*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t |\ 184*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 185*1dc4a592SRobert Mustacchi 186*1dc4a592SRobert Mustacchifunc | atomic_or_32 |\ 187*1dc4a592SRobert Mustacchi void |\ 188*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t |\ 189*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 190*1dc4a592SRobert Mustacchi 191*1dc4a592SRobert Mustacchifunc | atomic_or_uint |\ 192*1dc4a592SRobert Mustacchi void |\ 193*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t |\ 194*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 195*1dc4a592SRobert Mustacchi 196*1dc4a592SRobert Mustacchifunc | atomic_or_ulong |\ 197*1dc4a592SRobert Mustacchi void |\ 198*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t |\ 199*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 200*1dc4a592SRobert Mustacchi 201*1dc4a592SRobert Mustacchifunc | atomic_or_64 |\ 202*1dc4a592SRobert Mustacchi void |\ 203*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t |\ 204*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 205*1dc4a592SRobert Mustacchi 206*1dc4a592SRobert Mustacchifunc | atomic_and_8 |\ 207*1dc4a592SRobert Mustacchi void |\ 208*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t |\ 209*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 210*1dc4a592SRobert Mustacchi 211*1dc4a592SRobert Mustacchifunc | atomic_and_uchar |\ 212*1dc4a592SRobert Mustacchi void |\ 213*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t |\ 214*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 215*1dc4a592SRobert Mustacchi 216*1dc4a592SRobert Mustacchifunc | atomic_and_16 |\ 217*1dc4a592SRobert Mustacchi void |\ 218*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t |\ 219*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 220*1dc4a592SRobert Mustacchi 221*1dc4a592SRobert Mustacchifunc | atomic_and_ushort |\ 222*1dc4a592SRobert Mustacchi void |\ 223*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t |\ 224*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 225*1dc4a592SRobert Mustacchi 226*1dc4a592SRobert Mustacchifunc | atomic_and_32 |\ 227*1dc4a592SRobert Mustacchi void |\ 228*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t |\ 229*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 230*1dc4a592SRobert Mustacchi 231*1dc4a592SRobert Mustacchifunc | atomic_and_uint |\ 232*1dc4a592SRobert Mustacchi void |\ 233*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t |\ 234*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 235*1dc4a592SRobert Mustacchi 236*1dc4a592SRobert Mustacchifunc | atomic_and_ulong |\ 237*1dc4a592SRobert Mustacchi void |\ 238*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t |\ 239*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 240*1dc4a592SRobert Mustacchi 241*1dc4a592SRobert Mustacchifunc | atomic_and_64 |\ 242*1dc4a592SRobert Mustacchi void |\ 243*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t |\ 244*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 245*1dc4a592SRobert Mustacchi 246*1dc4a592SRobert Mustacchifunc | atomic_inc_8_nv |\ 247*1dc4a592SRobert Mustacchi uint8_t |\ 248*1dc4a592SRobert Mustacchi volatile uint8_t * |\ 249*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 250*1dc4a592SRobert Mustacchi 251*1dc4a592SRobert Mustacchifunc | atomic_inc_uchar_nv |\ 252*1dc4a592SRobert Mustacchi uchar_t |\ 253*1dc4a592SRobert Mustacchi volatile uchar_t * |\ 254*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 255*1dc4a592SRobert Mustacchi 256*1dc4a592SRobert Mustacchifunc | atomic_inc_16_nv |\ 257*1dc4a592SRobert Mustacchi uint16_t |\ 258*1dc4a592SRobert Mustacchi volatile uint16_t * |\ 259*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 260*1dc4a592SRobert Mustacchi 261*1dc4a592SRobert Mustacchifunc | atomic_inc_ushort_nv |\ 262*1dc4a592SRobert Mustacchi ushort_t |\ 263*1dc4a592SRobert Mustacchi volatile ushort_t * |\ 264*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 265*1dc4a592SRobert Mustacchi 266*1dc4a592SRobert Mustacchifunc | atomic_inc_32_nv |\ 267*1dc4a592SRobert Mustacchi uint32_t |\ 268*1dc4a592SRobert Mustacchi volatile uint32_t * |\ 269*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 270*1dc4a592SRobert Mustacchi 271*1dc4a592SRobert Mustacchifunc | atomic_inc_uint_nv |\ 272*1dc4a592SRobert Mustacchi uint_t |\ 273*1dc4a592SRobert Mustacchi volatile uint_t * |\ 274*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 275*1dc4a592SRobert Mustacchi 276*1dc4a592SRobert Mustacchifunc | atomic_inc_ulong_nv |\ 277*1dc4a592SRobert Mustacchi ulong_t |\ 278*1dc4a592SRobert Mustacchi volatile ulong_t * |\ 279*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 280*1dc4a592SRobert Mustacchi 281*1dc4a592SRobert Mustacchifunc | atomic_inc_64_nv |\ 282*1dc4a592SRobert Mustacchi uint64_t |\ 283*1dc4a592SRobert Mustacchi volatile uint64_t * |\ 284*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 285*1dc4a592SRobert Mustacchi 286*1dc4a592SRobert Mustacchifunc | atomic_dec_8_nv |\ 287*1dc4a592SRobert Mustacchi uint8_t |\ 288*1dc4a592SRobert Mustacchi volatile uint8_t * |\ 289*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 290*1dc4a592SRobert Mustacchi 291*1dc4a592SRobert Mustacchifunc | atomic_dec_uchar_nv |\ 292*1dc4a592SRobert Mustacchi uchar_t |\ 293*1dc4a592SRobert Mustacchi volatile uchar_t * |\ 294*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 295*1dc4a592SRobert Mustacchi 296*1dc4a592SRobert Mustacchifunc | atomic_dec_16_nv |\ 297*1dc4a592SRobert Mustacchi uint16_t |\ 298*1dc4a592SRobert Mustacchi volatile uint16_t * |\ 299*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 300*1dc4a592SRobert Mustacchi 301*1dc4a592SRobert Mustacchifunc | atomic_dec_ushort_nv |\ 302*1dc4a592SRobert Mustacchi ushort_t |\ 303*1dc4a592SRobert Mustacchi volatile ushort_t * |\ 304*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 305*1dc4a592SRobert Mustacchi 306*1dc4a592SRobert Mustacchifunc | atomic_dec_32_nv |\ 307*1dc4a592SRobert Mustacchi uint32_t |\ 308*1dc4a592SRobert Mustacchi volatile uint32_t * |\ 309*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 310*1dc4a592SRobert Mustacchi 311*1dc4a592SRobert Mustacchifunc | atomic_dec_uint_nv |\ 312*1dc4a592SRobert Mustacchi uint_t |\ 313*1dc4a592SRobert Mustacchi volatile uint_t * |\ 314*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 315*1dc4a592SRobert Mustacchi 316*1dc4a592SRobert Mustacchifunc | atomic_dec_ulong_nv |\ 317*1dc4a592SRobert Mustacchi ulong_t |\ 318*1dc4a592SRobert Mustacchi volatile ulong_t * |\ 319*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 320*1dc4a592SRobert Mustacchi 321*1dc4a592SRobert Mustacchifunc | atomic_dec_64_nv |\ 322*1dc4a592SRobert Mustacchi uint64_t |\ 323*1dc4a592SRobert Mustacchi volatile uint64_t * |\ 324*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 325*1dc4a592SRobert Mustacchi 326*1dc4a592SRobert Mustacchifunc | atomic_add_8_nv |\ 327*1dc4a592SRobert Mustacchi uint8_t |\ 328*1dc4a592SRobert Mustacchi volatile uint8_t *; int8_t |\ 329*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 330*1dc4a592SRobert Mustacchi 331*1dc4a592SRobert Mustacchifunc | atomic_add_char_nv |\ 332*1dc4a592SRobert Mustacchi uchar_t |\ 333*1dc4a592SRobert Mustacchi volatile uchar_t *; signed char |\ 334*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 335*1dc4a592SRobert Mustacchi 336*1dc4a592SRobert Mustacchifunc | atomic_add_16_nv |\ 337*1dc4a592SRobert Mustacchi uint16_t |\ 338*1dc4a592SRobert Mustacchi volatile uint16_t *; int16_t |\ 339*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 340*1dc4a592SRobert Mustacchi 341*1dc4a592SRobert Mustacchifunc | atomic_add_short_nv |\ 342*1dc4a592SRobert Mustacchi ushort_t |\ 343*1dc4a592SRobert Mustacchi volatile ushort_t *; short |\ 344*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 345*1dc4a592SRobert Mustacchi 346*1dc4a592SRobert Mustacchifunc | atomic_add_32_nv |\ 347*1dc4a592SRobert Mustacchi uint32_t |\ 348*1dc4a592SRobert Mustacchi volatile uint32_t *; int32_t |\ 349*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 350*1dc4a592SRobert Mustacchi 351*1dc4a592SRobert Mustacchifunc | atomic_add_int_nv |\ 352*1dc4a592SRobert Mustacchi uint_t |\ 353*1dc4a592SRobert Mustacchi volatile uint_t *; int |\ 354*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 355*1dc4a592SRobert Mustacchi 356*1dc4a592SRobert Mustacchifunc | atomic_add_ptr_nv |\ 357*1dc4a592SRobert Mustacchi void * |\ 358*1dc4a592SRobert Mustacchi volatile void *; ssize_t |\ 359*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 360*1dc4a592SRobert Mustacchi 361*1dc4a592SRobert Mustacchifunc | atomic_add_long_nv |\ 362*1dc4a592SRobert Mustacchi ulong_t |\ 363*1dc4a592SRobert Mustacchi volatile ulong_t *; long |\ 364*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 365*1dc4a592SRobert Mustacchi 366*1dc4a592SRobert Mustacchifunc | atomic_add_64_nv |\ 367*1dc4a592SRobert Mustacchi uint64_t |\ 368*1dc4a592SRobert Mustacchi volatile uint64_t *; int64_t |\ 369*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 370*1dc4a592SRobert Mustacchi 371*1dc4a592SRobert Mustacchifunc | atomic_or_8_nv |\ 372*1dc4a592SRobert Mustacchi uint8_t |\ 373*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t |\ 374*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 375*1dc4a592SRobert Mustacchi 376*1dc4a592SRobert Mustacchifunc | atomic_or_uchar_nv |\ 377*1dc4a592SRobert Mustacchi uchar_t |\ 378*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t |\ 379*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 380*1dc4a592SRobert Mustacchi 381*1dc4a592SRobert Mustacchifunc | atomic_or_16_nv |\ 382*1dc4a592SRobert Mustacchi uint16_t |\ 383*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t |\ 384*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 385*1dc4a592SRobert Mustacchi 386*1dc4a592SRobert Mustacchifunc | atomic_or_ushort_nv |\ 387*1dc4a592SRobert Mustacchi ushort_t |\ 388*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t |\ 389*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 390*1dc4a592SRobert Mustacchi 391*1dc4a592SRobert Mustacchifunc | atomic_or_32_nv |\ 392*1dc4a592SRobert Mustacchi uint32_t |\ 393*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t |\ 394*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 395*1dc4a592SRobert Mustacchi 396*1dc4a592SRobert Mustacchifunc | atomic_or_uint_nv |\ 397*1dc4a592SRobert Mustacchi uint_t |\ 398*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t |\ 399*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 400*1dc4a592SRobert Mustacchi 401*1dc4a592SRobert Mustacchifunc | atomic_or_ulong_nv |\ 402*1dc4a592SRobert Mustacchi ulong_t |\ 403*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t |\ 404*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 405*1dc4a592SRobert Mustacchi 406*1dc4a592SRobert Mustacchifunc | atomic_or_64_nv |\ 407*1dc4a592SRobert Mustacchi uint64_t |\ 408*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t |\ 409*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 410*1dc4a592SRobert Mustacchi 411*1dc4a592SRobert Mustacchifunc | atomic_and_8_nv |\ 412*1dc4a592SRobert Mustacchi uint8_t |\ 413*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t |\ 414*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 415*1dc4a592SRobert Mustacchi 416*1dc4a592SRobert Mustacchifunc | atomic_and_uchar_nv |\ 417*1dc4a592SRobert Mustacchi uchar_t |\ 418*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t |\ 419*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 420*1dc4a592SRobert Mustacchi 421*1dc4a592SRobert Mustacchifunc | atomic_and_16_nv |\ 422*1dc4a592SRobert Mustacchi uint16_t |\ 423*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t |\ 424*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 425*1dc4a592SRobert Mustacchi 426*1dc4a592SRobert Mustacchifunc | atomic_and_ushort_nv |\ 427*1dc4a592SRobert Mustacchi ushort_t |\ 428*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t |\ 429*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 430*1dc4a592SRobert Mustacchi 431*1dc4a592SRobert Mustacchifunc | atomic_and_32_nv |\ 432*1dc4a592SRobert Mustacchi uint32_t |\ 433*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t |\ 434*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 435*1dc4a592SRobert Mustacchi 436*1dc4a592SRobert Mustacchifunc | atomic_and_uint_nv |\ 437*1dc4a592SRobert Mustacchi uint_t |\ 438*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t |\ 439*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 440*1dc4a592SRobert Mustacchi 441*1dc4a592SRobert Mustacchifunc | atomic_and_ulong_nv |\ 442*1dc4a592SRobert Mustacchi ulong_t |\ 443*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t |\ 444*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 445*1dc4a592SRobert Mustacchi 446*1dc4a592SRobert Mustacchifunc | atomic_and_64_nv |\ 447*1dc4a592SRobert Mustacchi uint64_t |\ 448*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t |\ 449*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 450*1dc4a592SRobert Mustacchi 451*1dc4a592SRobert Mustacchifunc | atomic_cas_8 |\ 452*1dc4a592SRobert Mustacchi void |\ 453*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t; uint8_t |\ 454*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 455*1dc4a592SRobert Mustacchi 456*1dc4a592SRobert Mustacchifunc | atomic_cas_uchar |\ 457*1dc4a592SRobert Mustacchi void |\ 458*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t; uchar_t |\ 459*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 460*1dc4a592SRobert Mustacchi 461*1dc4a592SRobert Mustacchifunc | atomic_cas_16 |\ 462*1dc4a592SRobert Mustacchi void |\ 463*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t; uint16_t |\ 464*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 465*1dc4a592SRobert Mustacchi 466*1dc4a592SRobert Mustacchifunc | atomic_cas_ushort |\ 467*1dc4a592SRobert Mustacchi void |\ 468*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t; ushort_t |\ 469*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 470*1dc4a592SRobert Mustacchi 471*1dc4a592SRobert Mustacchifunc | atomic_cas_32 |\ 472*1dc4a592SRobert Mustacchi void |\ 473*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t; uint32_t |\ 474*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 475*1dc4a592SRobert Mustacchi 476*1dc4a592SRobert Mustacchifunc | atomic_cas_uint |\ 477*1dc4a592SRobert Mustacchi void |\ 478*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t; uint_t |\ 479*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 480*1dc4a592SRobert Mustacchi 481*1dc4a592SRobert Mustacchifunc | atomic_cas_ptr |\ 482*1dc4a592SRobert Mustacchi void |\ 483*1dc4a592SRobert Mustacchi volatile void *; void *; void * |\ 484*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 485*1dc4a592SRobert Mustacchi 486*1dc4a592SRobert Mustacchifunc | atomic_cas_ulong |\ 487*1dc4a592SRobert Mustacchi void |\ 488*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t; ulong_t |\ 489*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 490*1dc4a592SRobert Mustacchi 491*1dc4a592SRobert Mustacchifunc | atomic_cas_64 |\ 492*1dc4a592SRobert Mustacchi void |\ 493*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t; uint64_t |\ 494*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 495*1dc4a592SRobert Mustacchi 496*1dc4a592SRobert Mustacchifunc | atomic_swap_8 |\ 497*1dc4a592SRobert Mustacchi void |\ 498*1dc4a592SRobert Mustacchi volatile uint8_t *; uint8_t |\ 499*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 500*1dc4a592SRobert Mustacchi 501*1dc4a592SRobert Mustacchifunc | atomic_swap_uchar |\ 502*1dc4a592SRobert Mustacchi void |\ 503*1dc4a592SRobert Mustacchi volatile uchar_t *; uchar_t |\ 504*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 505*1dc4a592SRobert Mustacchi 506*1dc4a592SRobert Mustacchifunc | atomic_swap_16 |\ 507*1dc4a592SRobert Mustacchi void |\ 508*1dc4a592SRobert Mustacchi volatile uint16_t *; uint16_t |\ 509*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 510*1dc4a592SRobert Mustacchi 511*1dc4a592SRobert Mustacchifunc | atomic_swap_ushort |\ 512*1dc4a592SRobert Mustacchi void |\ 513*1dc4a592SRobert Mustacchi volatile ushort_t *; ushort_t |\ 514*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 515*1dc4a592SRobert Mustacchi 516*1dc4a592SRobert Mustacchifunc | atomic_swap_32 |\ 517*1dc4a592SRobert Mustacchi void |\ 518*1dc4a592SRobert Mustacchi volatile uint32_t *; uint32_t |\ 519*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 520*1dc4a592SRobert Mustacchi 521*1dc4a592SRobert Mustacchifunc | atomic_swap_uint |\ 522*1dc4a592SRobert Mustacchi void |\ 523*1dc4a592SRobert Mustacchi volatile uint_t *; uint_t |\ 524*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 525*1dc4a592SRobert Mustacchi 526*1dc4a592SRobert Mustacchifunc | atomic_swap_ptr |\ 527*1dc4a592SRobert Mustacchi void |\ 528*1dc4a592SRobert Mustacchi volatile void *; void * |\ 529*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 530*1dc4a592SRobert Mustacchi 531*1dc4a592SRobert Mustacchifunc | atomic_swap_ulong |\ 532*1dc4a592SRobert Mustacchi void |\ 533*1dc4a592SRobert Mustacchi volatile ulong_t *; ulong_t |\ 534*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 535*1dc4a592SRobert Mustacchi 536*1dc4a592SRobert Mustacchifunc | atomic_swap_64 |\ 537*1dc4a592SRobert Mustacchi void |\ 538*1dc4a592SRobert Mustacchi volatile uint64_t *; uint64_t |\ 539*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 540*1dc4a592SRobert Mustacchi 541*1dc4a592SRobert Mustacchifunc | atomic_set_long_excl |\ 542*1dc4a592SRobert Mustacchi int |\ 543*1dc4a592SRobert Mustacchi volatile ulong_t *; uint_t |\ 544*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 545*1dc4a592SRobert Mustacchi 546*1dc4a592SRobert Mustacchifunc | atomic_clear_long_excl |\ 547*1dc4a592SRobert Mustacchi int |\ 548*1dc4a592SRobert Mustacchi volatile ulong_t *; uint_t |\ 549*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 550*1dc4a592SRobert Mustacchi 551*1dc4a592SRobert Mustacchifunc | membar_enter |\ 552*1dc4a592SRobert Mustacchi void |\ 553*1dc4a592SRobert Mustacchi void |\ 554*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 555*1dc4a592SRobert Mustacchi 556*1dc4a592SRobert Mustacchifunc | membar_exit |\ 557*1dc4a592SRobert Mustacchi void |\ 558*1dc4a592SRobert Mustacchi void |\ 559*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 560*1dc4a592SRobert Mustacchi 561*1dc4a592SRobert Mustacchifunc | membar_producer |\ 562*1dc4a592SRobert Mustacchi void |\ 563*1dc4a592SRobert Mustacchi void |\ 564*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 565*1dc4a592SRobert Mustacchi 566*1dc4a592SRobert Mustacchifunc | membar_consumer |\ 567*1dc4a592SRobert Mustacchi void |\ 568*1dc4a592SRobert Mustacchi void |\ 569*1dc4a592SRobert Mustacchi sys/atomic.h | +ALL 570