Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 31 for Or32 (0.15 sec)

  1. src/internal/runtime/atomic/atomic_andor_generic.go

    //
    //go:linkname And32
    //go:linkname Or32
    //go:linkname And64
    //go:linkname Or64
    //go:linkname Anduintptr
    //go:linkname Oruintptr
    
    package atomic
    
    import _ "unsafe" // For linkname
    
    //go:nosplit
    func And32(ptr *uint32, val uint32) uint32 {
    	for {
    		old := *ptr
    		if Cas(ptr, old, old&val) {
    			return old
    		}
    	}
    }
    
    //go:nosplit
    func Or32(ptr *uint32, val uint32) uint32 {
    	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)
  2. src/internal/runtime/atomic/atomic_andor_test.go

    	var x [128]uint32 // give x its own cache line
    	sink = &x
    	for i := 0; i < b.N; i++ {
    		atomic.Or32(&x[63], uint32(i))
    	}
    }
    
    func BenchmarkOr32Parallel(b *testing.B) {
    	var x [128]uint32 // give x its own cache line
    	sink = &x
    	b.RunParallel(func(pb *testing.PB) {
    		i := uint32(0)
    		for pb.Next() {
    			atomic.Or32(&x[63], i)
    			i++
    		}
    	})
    }
    
    func BenchmarkOr64(b *testing.B) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat Apr 27 20:49:32 UTC 2024
    - 5.2K bytes
    - Viewed (0)
  3. src/internal/runtime/atomic/atomic_mipsx.s

    TEXT ·And(SB), NOSPLIT, $0-8
    	MOVW	ptr+0(FP), R1
    	MOVW	val+4(FP), R2
    
    	SYNC
    	LL	(R1), R3
    	AND	R2, R3
    	SC	R3, (R1)
    	BEQ	R3, -4(PC)
    	SYNC
    	RET
    
    // func Or32(addr *uint32, v uint32) old uint32
    TEXT ·Or32(SB), NOSPLIT, $0-12
    	MOVW	ptr+0(FP), R1
    	MOVW	val+4(FP), R2
    
    	SYNC
    	LL	(R1), R3
    	OR	R2, R3, R4
    	SC	R4, (R1)
    	BEQ	R4, -4(PC)
    	SYNC
    	MOVW	R3, ret+8(FP)
    	RET
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat May 11 21:29:34 UTC 2024
    - 4.9K bytes
    - Viewed (0)
  4. src/internal/runtime/atomic/atomic_mips64x.go

    //go:noescape
    func And(ptr *uint32, val uint32)
    
    //go:noescape
    func Or(ptr *uint32, val uint32)
    
    //go:noescape
    func And32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func Or32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func And64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    func Or64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Sat May 11 21:29:34 UTC 2024
    - 2.1K bytes
    - Viewed (0)
  5. src/internal/runtime/atomic/atomic_386.s

    	MOVL	val+4(FP), CX
    casloop:
    	MOVL 	CX, DX
    	MOVL	(BX), AX
    	ANDL	AX, DX
    	LOCK
    	CMPXCHGL	DX, (BX)
    	JNZ casloop
    	MOVL 	AX, ret+8(FP)
    	RET
    
    // func Or32(addr *uint32, v uint32) old uint32
    TEXT ·Or32(SB), NOSPLIT, $0-12
    	MOVL	ptr+0(FP), BX
    	MOVL	val+4(FP), CX
    casloop:
    	MOVL 	CX, DX
    	MOVL	(BX), AX
    	ORL	AX, DX
    	LOCK
    	CMPXCHGL	DX, (BX)
    	JNZ casloop
    	MOVL 	AX, ret+8(FP)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 6.5K bytes
    - Viewed (0)
  6. src/internal/runtime/atomic/atomic_amd64.s

    	ORL	BX, (AX)
    	RET
    
    // func And(addr *uint32, v uint32)
    TEXT ·And(SB), NOSPLIT, $0-12
    	MOVQ	ptr+0(FP), AX
    	MOVL	val+8(FP), BX
    	LOCK
    	ANDL	BX, (AX)
    	RET
    
    // func Or32(addr *uint32, v uint32) old uint32
    TEXT ·Or32(SB), NOSPLIT, $0-20
    	MOVQ	ptr+0(FP), BX
    	MOVL	val+8(FP), CX
    casloop:
    	MOVL 	CX, DX
    	MOVL	(BX), AX
    	ORL	AX, DX
    	LOCK
    	CMPXCHGL	DX, (BX)
    	JNZ casloop
    	MOVL 	AX, ret+16(FP)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 5.2K bytes
    - Viewed (0)
  7. src/internal/runtime/atomic/atomic_s390x.go

    //go:noescape
    func And(ptr *uint32, val uint32)
    
    //go:noescape
    func Or(ptr *uint32, val uint32)
    
    //go:noescape
    func And32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func Or32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func And64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    func Or64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 2.5K bytes
    - Viewed (0)
  8. src/internal/runtime/atomic/atomic_386.go

    //go:noescape
    func And(ptr *uint32, val uint32)
    
    //go:noescape
    func Or(ptr *uint32, val uint32)
    
    //go:noescape
    func And32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func Or32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func And64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    func Or64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 15 19:57:43 UTC 2024
    - 2.2K bytes
    - Viewed (0)
  9. src/internal/runtime/atomic/atomic_loong64.go

    //go:noescape
    func Or8(ptr *uint8, val uint8)
    
    //go:noescape
    func Or(ptr *uint32, val uint32)
    
    //go:noescape
    func And32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func Or32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func And64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    func Or64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 2.1K bytes
    - Viewed (0)
  10. src/internal/runtime/atomic/atomic_ppc64x.go

    //go:noescape
    func And(ptr *uint32, val uint32)
    
    //go:noescape
    func Or(ptr *uint32, val uint32)
    
    //go:noescape
    func And32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func Or32(ptr *uint32, val uint32) uint32
    
    //go:noescape
    func And64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    func Or64(ptr *uint64, val uint64) uint64
    
    //go:noescape
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 2.1K bytes
    - Viewed (0)
Back to top