internal/abi.Type.PtrBytes (field)
49 uses
internal/abi (current package)
type.go#L22: PtrBytes uintptr // number of (prefix) bytes in the type that can contain pointers
type.go#L196: func (t *Type) Pointers() bool { return t.PtrBytes != 0 }
reflect
type.go#L2164: PtrBytes: ptrdata,
type.go#L2182: ptrs := typ.PtrBytes / goarch.PtrSize
type.go#L2206: ptrs := typ.PtrBytes / goarch.PtrSize
type.go#L2643: typ.PtrBytes = typeptrdata(&typ.Type)
type.go#L2682: off += ft.Typ.PtrBytes
type.go#L2770: return f.Offset + f.Typ.PtrBytes
type.go#L2826: array.PtrBytes = typ.Size_*uintptr(length-1) + typ.PtrBytes
type.go#L2837: array.PtrBytes = 0
type.go#L2843: array.PtrBytes = typ.PtrBytes
type.go#L2849: n := (array.PtrBytes/goarch.PtrSize + 7) / 8
type.go#L2862: elemPtrs := typ.PtrBytes / goarch.PtrSize
type.go#L2884: array.PtrBytes = array.Size_ // overestimate but ok; must match program
type.go#L2994: 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#L564: nb := typ.PtrBytes / goarch.PtrSize
arena.go#L585: h = h.pad(s, typ.Size_-typ.PtrBytes)
arena.go#L595: s.largeType.PtrBytes = uintptr(ptr) - base + typ.PtrBytes
arena.go#L1118: s.largeType.PtrBytes = 0
cgocheck.go#L138: if typ.PtrBytes <= off {
cgocheck.go#L141: if ptrdataSize := typ.PtrBytes - off; size > ptrdataSize {
cgocheck.go#L241: if typ.PtrBytes <= off {
cgocheck.go#L244: if ptrdataSize := typ.PtrBytes - off; size > ptrdataSize {
heapdump.go#L208: dumpbool(t.Kind_&abi.KindDirectIface == 0 || t.PtrBytes != 0)
mbarrier.go#L170: bulkBarrierPreWrite(uintptr(dst), uintptr(src), typ.PtrBytes, typ)
mbarrier.go#L195: bulkBarrierPreWrite(uintptr(dst), 0, typ.PtrBytes, typ)
mbarrier.go#L209: bulkBarrierPreWrite(uintptr(dst), uintptr(src), typ.PtrBytes, typ)
mbarrier.go#L328: pwsize := size - typ.Size_ + typ.PtrBytes
mbarrier.go#L373: bulkBarrierPreWrite(uintptr(ptr), 0, typ.PtrBytes, typ)
mbitmap.go#L285: if tp.addr+goarch.PtrSize*ptrBits >= tp.elem+tp.typ.PtrBytes {
mbitmap.go#L343: if tp.addr-tp.elem >= tp.typ.PtrBytes {
mbitmap.go#L647: scanSize = typ.PtrBytes
mbitmap.go#L681: print("runtime: dataSize=", dataSize, " typ.Size_=", typ.Size_, " typ.PtrBytes=", typ.PtrBytes, "\n")
mbitmap.go#L725: spaceNeeded += alignUp(typ.PtrBytes/goarch.PtrSize/8, goarch.PtrSize)
mbitmap.go#L738: gctyp.PtrBytes = typ.PtrBytes
mbitmap.go#L795: if off < typ.PtrBytes {
mbitmap.go#L822: print("runtime: typ=", unsafe.Pointer(typ), " typ.PtrBytes=", typ.PtrBytes, "\n")
mbitmap.go#L852: if off < typ.PtrBytes {
mbitmap.go#L900: if off < typ.PtrBytes {
mbitmap.go#L1396: 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#L286: _ptrdata: int32(abiRegArgsType.PtrBytes),
tracetype.go#L69: w.varint(uint64(typ.PtrBytes))
 |
The pages are generated with Golds v0.7.6. (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds. |