internal/abi.Type.PtrBytes (field)
45 uses
internal/abi (current package)
type.go#L22: PtrBytes uintptr // number of (prefix) bytes in the type that can contain pointers
type.go#L204: func (t *Type) Pointers() bool { return t.PtrBytes != 0 }
reflect
type.go#L2045: ptrs := typ.PtrBytes / goarch.PtrSize
type.go#L2475: typ.PtrBytes = typeptrdata(&typ.Type)
type.go#L2483: if typ.PtrBytes == 0 {
type.go#L2485: } else if typ.PtrBytes <= abi.MaxPtrmaskBytes*8*goarch.PtrSize {
type.go#L2570: return f.Offset + f.Typ.PtrBytes
type.go#L2626: array.PtrBytes = typ.Size_*uintptr(length-1) + typ.PtrBytes
type.go#L2628: array.PtrBytes = 0
type.go#L2636: case array.PtrBytes == 0:
type.go#L2646: case array.PtrBytes <= abi.MaxPtrmaskBytes*8*goarch.PtrSize:
type.go#L2648: n := (array.PtrBytes/goarch.PtrSize + 7) / 8
type.go#L2769: PtrBytes: uintptr(abid.stackPtrs.n) * goarch.PtrSize,
runtime
arena.go#L516: c.scanAlloc += size - (typ.Size_ - typ.PtrBytes)
arena.go#L518: c.scanAlloc += typ.PtrBytes
arena.go#L558: nb := typ.PtrBytes / goarch.PtrSize
arena.go#L579: h = h.pad(s, typ.Size_-typ.PtrBytes)
arena.go#L584: s.largeType.PtrBytes = uintptr(ptr) - base + typ.PtrBytes
arena.go#L1117: s.largeType.PtrBytes = 0
cgocheck.go#L137: if typ.PtrBytes <= off {
cgocheck.go#L140: if ptrdataSize := typ.PtrBytes - off; size > ptrdataSize {
cgocheck.go#L195: if typ.PtrBytes <= off {
cgocheck.go#L198: if ptrdataSize := typ.PtrBytes - off; size > ptrdataSize {
mbarrier.go#L158: bulkBarrierPreWrite(uintptr(dst), uintptr(src), typ.PtrBytes, typ)
mbarrier.go#L183: bulkBarrierPreWrite(uintptr(dst), 0, typ.PtrBytes, typ)
mbarrier.go#L197: bulkBarrierPreWrite(uintptr(dst), uintptr(src), typ.PtrBytes, typ)
mbarrier.go#L321: pwsize := size - typ.Size_ + typ.PtrBytes
mbarrier.go#L366: bulkBarrierPreWrite(uintptr(ptr), 0, typ.PtrBytes, typ)
mbitmap.go#L284: if tp.addr+goarch.PtrSize*ptrBits >= tp.elem+tp.typ.PtrBytes {
mbitmap.go#L342: if tp.addr-tp.elem >= tp.typ.PtrBytes {
mbitmap.go#L646: scanSize = typ.PtrBytes
mbitmap.go#L694: print("runtime: dataSize=", dataSize, " typ.Size_=", typ.Size_, " typ.PtrBytes=", typ.PtrBytes, "\n")
mbitmap.go#L792: if off < typ.PtrBytes {
mbitmap.go#L819: print("runtime: typ=", unsafe.Pointer(typ), " typ.PtrBytes=", typ.PtrBytes, "\n")
mbitmap.go#L849: if off < typ.PtrBytes {
mbitmap.go#L897: if off < typ.PtrBytes {
mbitmap.go#L1386: for i := uintptr(0); i < typ.PtrBytes; i += goarch.PtrSize {
slice.go#L280: bulkBarrierPreWriteSrcOnly(uintptr(p), uintptr(oldPtr), lenmem-et.Size_+et.PtrBytes, et)
stkframe.go#L283: ptrBytes: int32(abiRegArgsType.PtrBytes),
tracetype.go#L69: w.varint(uint64(typ.PtrBytes))
type.go#L129: bytes := goarch.PtrSize * divRoundUp(t.PtrBytes/goarch.PtrSize, 8*goarch.PtrSize)
type.go#L204: if t.PtrBytes == 0 {
type.go#L209: dst.write(t.GCData, t.PtrBytes/goarch.PtrSize)