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	internal∕runtime∕atomic·Xchg(SB)
    11  
    12  TEXT ·SwapUint32(SB),NOSPLIT,$0
    13  	JMP	internal∕runtime∕atomic·Xchg(SB)
    14  
    15  TEXT ·SwapInt64(SB),NOSPLIT,$0
    16  	JMP	internal∕runtime∕atomic·Xchg64(SB)
    17  
    18  TEXT ·SwapUint64(SB),NOSPLIT,$0
    19  	JMP	internal∕runtime∕atomic·Xchg64(SB)
    20  
    21  TEXT ·SwapUintptr(SB),NOSPLIT,$0
    22  	JMP	internal∕runtime∕atomic·Xchguintptr(SB)
    23  
    24  TEXT ·CompareAndSwapInt32(SB),NOSPLIT,$0
    25  	JMP	internal∕runtime∕atomic·Cas(SB)
    26  
    27  TEXT ·CompareAndSwapUint32(SB),NOSPLIT,$0
    28  	JMP	internal∕runtime∕atomic·Cas(SB)
    29  
    30  TEXT ·CompareAndSwapUintptr(SB),NOSPLIT,$0
    31  	JMP	internal∕runtime∕atomic·Casuintptr(SB)
    32  
    33  TEXT ·CompareAndSwapInt64(SB),NOSPLIT,$0
    34  	JMP	internal∕runtime∕atomic·Cas64(SB)
    35  
    36  TEXT ·CompareAndSwapUint64(SB),NOSPLIT,$0
    37  	JMP	internal∕runtime∕atomic·Cas64(SB)
    38  
    39  TEXT ·AddInt32(SB),NOSPLIT,$0
    40  	JMP	internal∕runtime∕atomic·Xadd(SB)
    41  
    42  TEXT ·AddUint32(SB),NOSPLIT,$0
    43  	JMP	internal∕runtime∕atomic·Xadd(SB)
    44  
    45  TEXT ·AddUintptr(SB),NOSPLIT,$0
    46  	JMP	internal∕runtime∕atomic·Xadduintptr(SB)
    47  
    48  TEXT ·AddInt64(SB),NOSPLIT,$0
    49  	JMP	internal∕runtime∕atomic·Xadd64(SB)
    50  
    51  TEXT ·AddUint64(SB),NOSPLIT,$0
    52  	JMP	internal∕runtime∕atomic·Xadd64(SB)
    53  
    54  TEXT ·LoadInt32(SB),NOSPLIT,$0
    55  	JMP	internal∕runtime∕atomic·Load(SB)
    56  
    57  TEXT ·LoadUint32(SB),NOSPLIT,$0
    58  	JMP	internal∕runtime∕atomic·Load(SB)
    59  
    60  TEXT ·LoadInt64(SB),NOSPLIT,$0
    61  	JMP	internal∕runtime∕atomic·Load64(SB)
    62  
    63  TEXT ·LoadUint64(SB),NOSPLIT,$0
    64  	JMP	internal∕runtime∕atomic·Load64(SB)
    65  
    66  TEXT ·LoadUintptr(SB),NOSPLIT,$0
    67  	JMP	internal∕runtime∕atomic·Loaduintptr(SB)
    68  
    69  TEXT ·LoadPointer(SB),NOSPLIT,$0
    70  	JMP	internal∕runtime∕atomic·Loadp(SB)
    71  
    72  TEXT ·StoreInt32(SB),NOSPLIT,$0
    73  	JMP	internal∕runtime∕atomic·Store(SB)
    74  
    75  TEXT ·StoreUint32(SB),NOSPLIT,$0
    76  	JMP	internal∕runtime∕atomic·Store(SB)
    77  
    78  TEXT ·StoreInt64(SB),NOSPLIT,$0
    79  	JMP	internal∕runtime∕atomic·Store64(SB)
    80  
    81  TEXT ·StoreUint64(SB),NOSPLIT,$0
    82  	JMP	internal∕runtime∕atomic·Store64(SB)
    83  
    84  TEXT ·StoreUintptr(SB),NOSPLIT,$0
    85  	JMP	internal∕runtime∕atomic·Storeuintptr(SB)
    86  
    87  TEXT ·AndInt32(SB),NOSPLIT,$0
    88  	JMP	internal∕runtime∕atomic·And32(SB)
    89  
    90  TEXT ·AndUint32(SB),NOSPLIT,$0
    91  	JMP	internal∕runtime∕atomic·And32(SB)
    92  
    93  TEXT ·AndUintptr(SB),NOSPLIT,$0
    94  	JMP	internal∕runtime∕atomic·Anduintptr(SB)
    95  
    96  TEXT ·AndInt64(SB),NOSPLIT,$0
    97  	JMP	internal∕runtime∕atomic·And64(SB)
    98  
    99  TEXT ·AndUint64(SB),NOSPLIT,$0
   100  	JMP	internal∕runtime∕atomic·And64(SB)
   101  
   102  TEXT ·OrInt32(SB),NOSPLIT,$0
   103  	JMP	internal∕runtime∕atomic·Or32(SB)
   104  
   105  TEXT ·OrUint32(SB),NOSPLIT,$0
   106  	JMP	internal∕runtime∕atomic·Or32(SB)
   107  
   108  TEXT ·OrUintptr(SB),NOSPLIT,$0
   109  	JMP	internal∕runtime∕atomic·Oruintptr(SB)
   110  
   111  TEXT ·OrInt64(SB),NOSPLIT,$0
   112  	JMP	internal∕runtime∕atomic·Or64(SB)
   113  
   114  TEXT ·OrUint64(SB),NOSPLIT,$0
   115  	JMP	internal∕runtime∕atomic·Or64(SB)
   116  

View as plain text