- Sort Score
- Result 10 results
- Languages All
Results 1 - 10 of 31 for cas64 (0.04 sec)
-
src/internal/runtime/atomic/atomic_mipsx.go
unlock() return } //go:nosplit func Or64(addr *uint64, val uint64) (old uint64) { for { old = *addr if Cas64(addr, old, old|val) { return old } } } //go:nosplit func And64(addr *uint64, val uint64) (old uint64) { for { old = *addr if Cas64(addr, old, old&val) { return old } } } //go:noescape func Xadd(ptr *uint32, delta int32) uint32
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 20:08:37 UTC 2024 - 3.2K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_andor_generic.go
return old } } } //go:nosplit func And64(ptr *uint64, val uint64) uint64 { for { old := *ptr if Cas64(ptr, old, old&val) { return old } } } //go:nosplit func Or64(ptr *uint64, val uint64) uint64 { for { old := *ptr if Cas64(ptr, old, old|val) { return old } } } //go:nosplit func Anduintptr(ptr *uintptr, val uintptr) uintptr { for {
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 20:08:37 UTC 2024 - 1.2K bytes - Viewed (0) -
src/runtime/lfstack.go
for { old := atomic.Load64((*uint64)(head)) node.next = old if atomic.Cas64((*uint64)(head), old, new) { break } } } func (head *lfstack) pop() unsafe.Pointer { for { old := atomic.Load64((*uint64)(head)) if old == 0 { return nil } node := lfstackUnpack(old) next := atomic.Load64(&node.next) if atomic.Cas64((*uint64)(head), old, next) { return unsafe.Pointer(node) } } }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 2K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_amd64.s
MOVQ ptr+0(FP), BX MOVL old+8(FP), AX MOVL new+12(FP), CX LOCK CMPXCHGL CX, 0(BX) SETEQ ret+16(FP) RET // bool ·Cas64(uint64 *val, uint64 old, uint64 new) // Atomically: // if(*val == old){ // *val = new; // return 1; // } else { // return 0; // } TEXT ·Cas64(SB), NOSPLIT, $0-25 MOVQ ptr+0(FP), BX MOVQ old+8(FP), AX MOVQ new+16(FP), CX LOCK CMPXCHGQ CX, 0(BX) SETEQ ret+24(FP) RET
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 5.2K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_mips64x.s
BEQ R3, cas_again MOVV $1, R1 MOVB R1, ret+16(FP) SYNC RET cas_fail: MOVV $0, R1 JMP -4(PC) // bool cas64(uint64 *ptr, uint64 old, uint64 new) // Atomically: // if(*val == old){ // *val = new; // return 1; // } else { // return 0; // } TEXT ·Cas64(SB), NOSPLIT, $0-25 MOVV ptr+0(FP), R1 MOVV old+8(FP), R2 MOVV new+16(FP), R5 SYNC cas64_again: MOVV R5, R3 LLV (R1), R4
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Sat May 11 21:29:34 UTC 2024 - 7.2K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_s390x.s
BNE cas_fail MOVB $1, ret+16(FP) RET cas_fail: MOVB $0, ret+16(FP) RET // func Cas64(ptr *uint64, old, new uint64) bool // Atomically: // if *ptr == old { // *ptr = new // return 1 // } else { // return 0 // } TEXT ·Cas64(SB), NOSPLIT, $0-25 MOVD ptr+0(FP), R3 MOVD old+8(FP), R4 MOVD new+16(FP), R5 CSG R4, R5, 0(R3) // if (R4 == 0(R3)) then 0(R3)= R5
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 7.1K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_riscv64.s
MOV ptr+0(FP), A0 MOV val+8(FP), A1 AMOSWAPD A1, (A0), ZERO RET TEXT ·Casp1(SB), NOSPLIT, $0-25 JMP ·Cas64(SB) TEXT ·Casint32(SB),NOSPLIT,$0-17 JMP ·Cas(SB) TEXT ·Casint64(SB),NOSPLIT,$0-25 JMP ·Cas64(SB) TEXT ·Casuintptr(SB),NOSPLIT,$0-25 JMP ·Cas64(SB) TEXT ·CasRel(SB), NOSPLIT, $0-17 JMP ·Cas(SB) TEXT ·Loaduintptr(SB),NOSPLIT,$0-16 JMP ·Load64(SB)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 7K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_arm64.s
// license that can be found in the LICENSE file. #include "go_asm.h" #include "textflag.h" TEXT ·Casint32(SB), NOSPLIT, $0-17 B ·Cas(SB) TEXT ·Casint64(SB), NOSPLIT, $0-25 B ·Cas64(SB) TEXT ·Casuintptr(SB), NOSPLIT, $0-25 B ·Cas64(SB) TEXT ·CasRel(SB), NOSPLIT, $0-17 B ·Cas(SB) TEXT ·Loadint32(SB), NOSPLIT, $0-12 B ·Load(SB) TEXT ·Loadint64(SB), NOSPLIT, $0-16 B ·Load64(SB)
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 9K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_ppc64x.s
MOVD $1, R3 LWSYNC MOVB R3, ret+16(FP) RET cas_fail: LWSYNC MOVB R0, ret+16(FP) RET // bool ·Cas64(uint64 *ptr, uint64 old, uint64 new) // Atomically: // if(*val == old){ // *val = new; // return 1; // } else { // return 0; // } TEXT ·Cas64(SB), NOSPLIT, $0-25 MOVD ptr+0(FP), R3 MOVD old+8(FP), R4 MOVD new+16(FP), R5 LWSYNC cas64_again: LDAR (R3), R6
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 7.5K bytes - Viewed (0) -
src/internal/runtime/atomic/atomic_loong64.s
BEQ R7, cas_again MOVV $1, R4 MOVB R4, ret+16(FP) DBAR RET cas_fail: MOVV $0, R4 JMP -4(PC) // bool cas64(uint64 *ptr, uint64 old, uint64 new) // Atomically: // if(*ptr == old){ // *ptr = new; // return 1; // } else { // return 0; // } TEXT ·Cas64(SB), NOSPLIT, $0-25 MOVV ptr+0(FP), R4 MOVV old+8(FP), R5 MOVV new+16(FP), R6 DBAR cas64_again: MOVV R6, R7 LLV (R4), R8
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 6.3K bytes - Viewed (0)