Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 289 for atomics (0.3 sec)

  1. test/codegen/atomics.go

    // These tests check that atomic instructions without dynamic checks are
    // generated for architectures that support them
    
    package codegen
    
    import "sync/atomic"
    
    type Counter struct {
    	count int32
    }
    
    func (c *Counter) Increment() {
    	// Check that ARm64 v8.0 has both atomic instruction (LDADDALW) and a dynamic check
    	// (for arm64HasATOMICS), while ARM64 v8.1 has only atomic and no dynamic check.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Mar 21 20:08:06 UTC 2024
    - 728 bytes
    - Viewed (0)
  2. internal/pubsub/pubsub.go

    			}
    		}
    		atomic.StoreUint64(&ps.types, uint64(remainTypes))
    		atomic.AddInt32(&ps.numSubscribers, -1)
    	}()
    
    	return nil
    }
    
    // SubscribeJSON - Adds a subscriber to pubsub system and returns results with JSON encoding.
    func (ps *PubSub[T, M]) SubscribeJSON(mask M, subCh chan<- []byte, doneCh <-chan struct{}, filter func(entry T) bool, wg *sync.WaitGroup) error {
    	totalSubs := atomic.AddInt32(&ps.numSubscribers, 1)
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Tue Feb 06 16:57:30 UTC 2024
    - 5.2K bytes
    - Viewed (0)
  3. src/internal/cpu/cpu_arm64_hwcap.go

    	ARM64.HasSHA2 = isSet(HWCap, hwcap_SHA2)
    	ARM64.HasCRC32 = isSet(HWCap, hwcap_CRC32)
    	ARM64.HasCPUID = isSet(HWCap, hwcap_CPUID)
    	ARM64.HasSHA512 = isSet(HWCap, hwcap_SHA512)
    
    	// The Samsung S9+ kernel reports support for atomics, but not all cores
    	// actually support them, resulting in SIGILL. See issue #28431.
    	// TODO(elias.naur): Only disable the optimization on bad chipsets on android.
    	ARM64.HasATOMICS = isSet(HWCap, hwcap_ATOMICS) && os != "android"
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 2.4K bytes
    - Viewed (0)
  4. src/internal/runtime/atomic/atomic_arm.s

    TEXT ·Xchgint32(SB),NOSPLIT,$0-12
    	B	·Xchg(SB)
    
    TEXT ·Xchgint64(SB),NOSPLIT,$-4-20
    	B	·Xchg64(SB)
    
    // 64-bit atomics
    // The native ARM implementations use LDREXD/STREXD, which are
    // available on ARMv6k or later. We use them only on ARMv7.
    // On older ARM, we use Go implementations which simulate 64-bit
    // atomics with locks.
    TEXT armCas64<>(SB),NOSPLIT,$0-21
    	// addr is already in R1
    	MOVW	old_lo+4(FP), R2
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 5.7K bytes
    - Viewed (0)
  5. src/internal/godebug/godebug_test.go

    	}
    	if count := m[0].Value.Uint64(); count != 3 {
    		t.Fatalf("NonDefault value = %d, want 3", count)
    	}
    }
    
    // TestPanicNilRace checks for a race in the runtime caused by use of runtime
    // atomics (not visible to usual race detection) to install the counter for
    // non-default panic(nil) semantics.  For #64649.
    func TestPanicNilRace(t *testing.T) {
    	if !race.Enabled {
    		t.Skip("Skipping test intended for use with -race.")
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 01:00:11 UTC 2024
    - 4K bytes
    - Viewed (0)
  6. cmd/service.go

    }
    
    // freezeServices will freeze all incoming S3 API calls.
    // For each call, unfreezeServices must be called once.
    func freezeServices() {
    	// Use atomics for globalServiceFreeze, so we can read without locking.
    	// We need a lock since we are need the 2 atomic values to remain in sync.
    	globalServiceFreezeMu.Lock()
    	// If multiple calls, first one creates channel.
    	globalServiceFreezeCnt++
    	if globalServiceFreezeCnt == 1 {
    Registered: Sun Jun 16 00:44:34 UTC 2024
    - Last Modified: Wed Feb 28 07:02:14 UTC 2024
    - 3.8K bytes
    - Viewed (0)
  7. src/vendor/golang.org/x/sys/cpu/cpu_arm64.go

    		{Name: "sm3", Feature: &ARM64.HasSM3},
    		{Name: "sm4", Feature: &ARM64.HasSM4},
    		{Name: "sve", Feature: &ARM64.HasSVE},
    		{Name: "sve2", Feature: &ARM64.HasSVE2},
    		{Name: "crc32", Feature: &ARM64.HasCRC32},
    		{Name: "atomics", Feature: &ARM64.HasATOMICS},
    		{Name: "asimdhp", Feature: &ARM64.HasASIMDHP},
    		{Name: "cpuid", Feature: &ARM64.HasCPUID},
    		{Name: "asimrdm", Feature: &ARM64.HasASIMDRDM},
    		{Name: "fcma", Feature: &ARM64.HasFCMA},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 16:12:58 UTC 2024
    - 3.9K bytes
    - Viewed (0)
  8. src/runtime/cgo/gcc_libinit.c

    //go:build unix
    
    // When cross-compiling with clang to linux/armv5, atomics are emulated
    // and cause a compiler warning. This results in a build failure since
    // cgo uses -Werror. See #65290.
    #pragma GCC diagnostic ignored "-Wpragmas"
    #pragma GCC diagnostic ignored "-Wunknown-warning-option"
    #pragma GCC diagnostic ignored "-Watomic-alignment"
    
    #include <pthread.h>
    #include <errno.h>
    #include <stdio.h>
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Feb 29 01:07:18 UTC 2024
    - 5.8K bytes
    - Viewed (0)
  9. src/internal/runtime/atomic/atomic_test.go

    	p64 := (*int64)(u)   // misaligned
    
    	shouldPanic(t, "Load64", func() { atomic.Load64(up64) })
    	shouldPanic(t, "Loadint64", func() { atomic.Loadint64(p64) })
    	shouldPanic(t, "Store64", func() { atomic.Store64(up64, 0) })
    	shouldPanic(t, "Xadd64", func() { atomic.Xadd64(up64, 1) })
    	shouldPanic(t, "Xchg64", func() { atomic.Xchg64(up64, 1) })
    	shouldPanic(t, "Cas64", func() { atomic.Cas64(up64, 1, 2) })
    }
    
    func TestAnd8(t *testing.T) {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 8.5K bytes
    - Viewed (0)
  10. src/runtime/atomic_pointer.go

    	if writeBarrier.enabled {
    		atomicwb(ptr, new)
    	}
    	if goexperiment.CgoCheck2 {
    		cgoCheckPtrWrite(ptr, new)
    	}
    	return atomic.Casp1(ptr, old, new)
    }
    
    // Like above, but implement in terms of sync/atomic's uintptr operations.
    // We cannot just call the runtime routines, because the race detector expects
    // to be able to intercept the sync/atomic forms but not the runtime forms.
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 16:25:21 UTC 2024
    - 4K bytes
    - Viewed (0)
Back to top