Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 6 of 6 for persistentalloc1 (0.47 sec)

  1. src/runtime/internal/sys/nih.go

    // to these types must always fail the `runtime.inheap` check. The type may be used
    // for global variables, or for objects in unmanaged memory (e.g., allocated with
    // `sysAlloc`, `persistentalloc`, r`fixalloc`, or from a manually-managed span).
    //
    // Specifically:
    //
    // 1. `new(T)`, `make([]T)`, `append([]T, ...)` and implicit heap
    // allocation of T are disallowed. (Though implicit allocations are
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Sep 02 18:24:50 UTC 2022
    - 1.7K bytes
    - Viewed (0)
  2. src/runtime/mcheckmark.go

    	for _, ai := range mheap_.allArenas {
    		arena := mheap_.arenas[ai.l1()][ai.l2()]
    		bitmap := arena.checkmarks
    
    		if bitmap == nil {
    			// Allocate bitmap on first use.
    			bitmap = (*checkmarksMap)(persistentalloc(unsafe.Sizeof(*bitmap), 0, &memstats.gcMiscSys))
    			if bitmap == nil {
    				throw("out of memory allocating checkmarks bitmap")
    			}
    			arena.checkmarks = bitmap
    		} else {
    			// Otherwise clear the existing bitmap.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 2.8K bytes
    - Viewed (0)
  3. src/runtime/mfixalloc.go

    		v := unsafe.Pointer(f.list)
    		f.list = f.list.next
    		f.inuse += f.size
    		if f.zero {
    			memclrNoHeapPointers(v, f.size)
    		}
    		return v
    	}
    	if uintptr(f.nchunk) < f.size {
    		f.chunk = uintptr(persistentalloc(uintptr(f.nalloc), 0, f.stat))
    		f.nchunk = f.nalloc
    	}
    
    	v := unsafe.Pointer(f.chunk)
    	if f.first != nil {
    		f.first(f.arg, v)
    	}
    	f.chunk = f.chunk + f.size
    	f.nchunk -= uint32(f.size)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Oct 24 20:28:25 UTC 2023
    - 3.1K bytes
    - Viewed (0)
  4. src/runtime/lfstack_test.go

    // outside the Go heap.
    // We require lfstack objects to live outside the heap so that
    // checkptr passes on the unsafe shenanigans used.
    func allocMyNode(data int) *MyNode {
    	n := (*MyNode)(PersistentAlloc(unsafe.Sizeof(MyNode{})))
    	LFNodeValidate(&n.LFNode)
    	n.data = data
    	return n
    }
    
    func fromMyNode(node *MyNode) *LFNode {
    	return (*LFNode)(unsafe.Pointer(node))
    }
    
    func toMyNode(node *LFNode) *MyNode {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Nov 17 23:12:04 UTC 2022
    - 2.7K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/typebits/typebits.go

    		}
    		// The first word of an interface is a pointer, but we don't
    		// treat it as such.
    		// 1. If it is a non-empty interface, the pointer points to an itab
    		//    which is always in persistentalloc space.
    		// 2. If it is an empty interface, the pointer points to a _type.
    		//   a. If it is a compile-time-allocated type, it points into
    		//      the read-only data section.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Aug 22 01:53:41 UTC 2023
    - 3.2K bytes
    - Viewed (0)
  6. src/runtime/cgocheck.go

    		return
    	}
    
    	// If the object is pinned, it's safe to store it in C memory. The GC
    	// ensures it will not be moved or freed.
    	if isPinned(src) {
    		return
    	}
    
    	// It's OK if writing to memory allocated by persistentalloc.
    	// Do this check last because it is more expensive and rarely true.
    	// If it is false the expense doesn't matter since we are crashing.
    	if inPersistentAlloc(uintptr(unsafe.Pointer(dst))) {
    		return
    	}
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 09 04:07:57 UTC 2024
    - 7.6K bytes
    - Viewed (0)
Back to top