// Code generated by cmd/cgo -godefs; DO NOT EDIT.
// cgo -godefs defs_darwin.go

package pprof

type machVMRegionBasicInfoData struct {
	Protection       int32
	Max_protection   int32
	Inheritance      uint32
	Shared           int32
	Reserved         int32
	Offset           [8]byte // This is hand-edited since godefs generates: Pad_cgo_0 [8]byte. Cannot use uint64 due to alignment.
	Behavior         int32
	User_wired_count uint16
	Pad_cgo_1        [2]byte
}

const (
	_VM_PROT_READ    = 0x1
	_VM_PROT_WRITE   = 0x2
	_VM_PROT_EXECUTE = 0x4

	_MACH_SEND_INVALID_DEST = 0x10000003

	_MAXPATHLEN = 0x400
)
