Text file src/sync/atomic/asm.s

     1  // Copyright 2011 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  //go:build !race
     6  
     7  #include "textflag.h"
     8  
     9  TEXT ·SwapInt32(SB),NOSPLIT,$0
    10  	JMP	runtime∕internal∕atomic·Xchg(SB)
    11  
    12  TEXT ·SwapUint32(SB),NOSPLIT,$0
    13  	JMP	runtime∕internal∕atomic·Xchg(SB)
    14  
    15  TEXT ·SwapInt64(SB),NOSPLIT,$0
    16  	JMP	runtime∕internal∕atomic·Xchg64(SB)
    17  
    18  TEXT ·SwapUint64(SB),NOSPLIT,$0
    19  	JMP	runtime∕internal∕atomic·Xchg64(SB)
    20  
    21  TEXT ·SwapUintptr(SB),NOSPLIT,$0
    22  	JMP	runtime∕internal∕atomic·Xchguintptr(SB)
    23  
    24  TEXT ·CompareAndSwapInt32(SB),NOSPLIT,$0
    25  	JMP	runtime∕internal∕atomic·Cas(SB)
    26  
    27  TEXT ·CompareAndSwapUint32(SB),NOSPLIT,$0
    28  	JMP	runtime∕internal∕atomic·Cas(SB)
    29  
    30  TEXT ·CompareAndSwapUintptr(SB),NOSPLIT,$0
    31  	JMP	runtime∕internal∕atomic·Casuintptr(SB)
    32  
    33  TEXT ·CompareAndSwapInt64(SB),NOSPLIT,$0
    34  	JMP	runtime∕internal∕atomic·Cas64(SB)
    35  
    36  TEXT ·CompareAndSwapUint64(SB),NOSPLIT,$0
    37  	JMP	runtime∕internal∕atomic·Cas64(SB)
    38  
    39  TEXT ·AddInt32(SB),NOSPLIT,$0
    40  	JMP	runtime∕internal∕atomic·Xadd(SB)
    41  
    42  TEXT ·AddUint32(SB),NOSPLIT,$0
    43  	JMP	runtime∕internal∕atomic·Xadd(SB)
    44  
    45  TEXT ·AddUintptr(SB),NOSPLIT,$0
    46  	JMP	runtime∕internal∕atomic·Xadduintptr(SB)
    47  
    48  TEXT ·AddInt64(SB),NOSPLIT,$0
    49  	JMP	runtime∕internal∕atomic·Xadd64(SB)
    50  
    51  TEXT ·AddUint64(SB),NOSPLIT,$0
    52  	JMP	runtime∕internal∕atomic·Xadd64(SB)
    53  
    54  TEXT ·LoadInt32(SB),NOSPLIT,$0
    55  	JMP	runtime∕internal∕atomic·Load(SB)
    56  
    57  TEXT ·LoadUint32(SB),NOSPLIT,$0
    58  	JMP	runtime∕internal∕atomic·Load(SB)
    59  
    60  TEXT ·LoadInt64(SB),NOSPLIT,$0
    61  	JMP	runtime∕internal∕atomic·Load64(SB)
    62  
    63  TEXT ·LoadUint64(SB),NOSPLIT,$0
    64  	JMP	runtime∕internal∕atomic·Load64(SB)
    65  
    66  TEXT ·LoadUintptr(SB),NOSPLIT,$0
    67  	JMP	runtime∕internal∕atomic·Loaduintptr(SB)
    68  
    69  TEXT ·LoadPointer(SB),NOSPLIT,$0
    70  	JMP	runtime∕internal∕atomic·Loadp(SB)
    71  
    72  TEXT ·StoreInt32(SB),NOSPLIT,$0
    73  	JMP	runtime∕internal∕atomic·Store(SB)
    74  
    75  TEXT ·StoreUint32(SB),NOSPLIT,$0
    76  	JMP	runtime∕internal∕atomic·Store(SB)
    77  
    78  TEXT ·StoreInt64(SB),NOSPLIT,$0
    79  	JMP	runtime∕internal∕atomic·Store64(SB)
    80  
    81  TEXT ·StoreUint64(SB),NOSPLIT,$0
    82  	JMP	runtime∕internal∕atomic·Store64(SB)
    83  
    84  TEXT ·StoreUintptr(SB),NOSPLIT,$0
    85  	JMP	runtime∕internal∕atomic·Storeuintptr(SB)
    86  

View as plain text