func internal/abi.NoEscape
42 uses
internal/abi (current package)
escape.go#L19: func NoEscape(p unsafe.Pointer) unsafe.Pointer {
escape.go#L64: return *(*T)(NoEscape(unsafe.Pointer(&v)))
type.go#L185: return (*Type)(NoEscape(unsafe.Pointer(eface.Type)))
internal/reflectlite
value.go#L99: return (*abi.Type)(abi.NoEscape(unsafe.Pointer(v.typ_)))
internal/runtime/maps
runtime_fast32_swiss.go#L52: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast32_swiss.go#L121: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast32_swiss.go#L209: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast32_swiss.go#L348: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast32_swiss.go#L474: m.Delete(typ, abi.NoEscape(unsafe.Pointer(&key)))
runtime_fast64_swiss.go#L52: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast64_swiss.go#L121: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast64_swiss.go#L209: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast64_swiss.go#L386: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_fast64_swiss.go#L513: m.Delete(typ, abi.NoEscape(unsafe.Pointer(&key)))
runtime_faststr_swiss.go#L59: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&key)), m.seed)
runtime_faststr_swiss.go#L128: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_faststr_swiss.go#L187: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_faststr_swiss.go#L277: hash := typ.Hasher(abi.NoEscape(unsafe.Pointer(&k)), m.seed)
runtime_faststr_swiss.go#L412: m.Delete(typ, abi.NoEscape(unsafe.Pointer(&key)))
internal/sync
hashtriemap.go#L66: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L90: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L207: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L285: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L311: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L373: hash := ht.keyHash(abi.NoEscape(unsafe.Pointer(&key)), ht.seed)
hashtriemap.go#L591: if e.key == key && (valEqual == nil || valEqual(unsafe.Pointer(&e.value), abi.NoEscape(unsafe.Pointer(&value)))) {
hashtriemap.go#L633: if head.key == key && valEqual(unsafe.Pointer(&head.value), abi.NoEscape(unsafe.Pointer(&old))) {
hashtriemap.go#L644: if e.key == key && valEqual(unsafe.Pointer(&e.value), abi.NoEscape(unsafe.Pointer(&old))) {
hashtriemap.go#L683: if head.key == key && valEqual(unsafe.Pointer(&head.value), abi.NoEscape(unsafe.Pointer(&value))) {
hashtriemap.go#L690: if e.key == key && valEqual(unsafe.Pointer(&e.value), abi.NoEscape(unsafe.Pointer(&value))) {
hash/maphash
maphash_runtime.go#L61: return uint64(hasher(abi.NoEscape(unsafe.Pointer(&v)), uintptr(s)))
maphash_runtime.go#L63: lo := hasher(abi.NoEscape(unsafe.Pointer(&v)), uintptr(s))
maphash_runtime.go#L64: hi := hasher(abi.NoEscape(unsafe.Pointer(&v)), uintptr(s>>32))
reflect
map_swiss.go#L220: mptr := abi.NoEscape(v.pointer())
value.go#L105: return (*abi.Type)(abi.NoEscape(unsafe.Pointer(v.typ_)))
value.go#L1661: return typ.Equal(abi.NoEscape(v.ptr), unsafe.Pointer(&zeroVal[0]))
value.go#L1690: return typ.Equal(abi.NoEscape(v.ptr), unsafe.Pointer(&zeroVal[0]))
value.go#L2455: return (*rtype)(abi.NoEscape(unsafe.Pointer(v.typ_))) // inline of toRType(v.typ()), for own inlining in inline test
runtime
mheap.go#L2701: hash := memhash(abi.NoEscape(unsafe.Pointer(&p)), 0, goarch.PtrSize)
strings
builder.go#L39: b.addr = (*Builder)(abi.NoEscape(unsafe.Pointer(b)))
unique
canonmap.go#L38: hash := m.hash(abi.NoEscape(unsafe.Pointer(&key)), m.seed)
canonmap.go#L59: hash := m.hash(abi.NoEscape(unsafe.Pointer(&key)), m.seed)