Skip to content

Commit e102a72

Browse files
committed
Auto merge of #749 - joshlf:mach-vm-flags, r=alexcrichton
apple: Add VM_* constants from mach/vm_statistics.h Closes #736.
2 parents 04a5e75 + f8bfc6e commit e102a72

File tree

2 files changed

+110
-0
lines changed

2 files changed

+110
-0
lines changed

.travis.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,10 @@ matrix:
3838
- env: TARGET=i686-unknown-linux-gnu
3939
- os: osx
4040
env: TARGET=x86_64-apple-darwin NO_ADD=1
41+
osx_image: xcode8.3
4142
- os: osx
4243
env: TARGET=i686-apple-darwin
44+
osx_image: xcode8.3
4345
- env: TARGET=arm-linux-androideabi
4446
- env: TARGET=aarch64-linux-android
4547
- env: TARGET=i686-linux-android
@@ -78,13 +80,15 @@ matrix:
7880
rust: beta
7981
- os: osx
8082
env: TARGET=x86_64-apple-darwin NO_ADD=1
83+
osx_image: xcode8.3
8184
rust: beta
8285

8386
# nightly
8487
- env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
8588
rust: nightly
8689
- os: osx
8790
env: TARGET=x86_64-apple-darwin NO_ADD=1
91+
osx_image: xcode8.3
8892
rust: nightly
8993

9094
# QEMU based targets that compile in an emulator

src/unix/bsd/apple/mod.rs

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -601,6 +601,112 @@ pub const MAP_PRIVATE: ::c_int = 0x0002;
601601
pub const MAP_FIXED: ::c_int = 0x0010;
602602
pub const MAP_ANON: ::c_int = 0x1000;
603603

604+
pub const VM_FLAGS_FIXED: ::c_int = 0x0000;
605+
pub const VM_FLAGS_ANYWHERE: ::c_int = 0x0001;
606+
pub const VM_FLAGS_PURGABLE: ::c_int = 0x0002;
607+
pub const VM_FLAGS_RANDOM_ADDR: ::c_int = 0x0008;
608+
pub const VM_FLAGS_NO_CACHE: ::c_int = 0x0010;
609+
pub const VM_FLAGS_RESILIENT_CODESIGN: ::c_int = 0x0020;
610+
pub const VM_FLAGS_RESILIENT_MEDIA: ::c_int = 0x0040;
611+
pub const VM_FLAGS_OVERWRITE: ::c_int = 0x4000;
612+
pub const VM_FLAGS_SUPERPAGE_MASK: ::c_int = 0x70000;
613+
pub const VM_FLAGS_RETURN_DATA_ADDR: ::c_int = 0x100000;
614+
pub const VM_FLAGS_RETURN_4K_DATA_ADDR: ::c_int = 0x800000;
615+
pub const VM_FLAGS_ALIAS_MASK: ::c_int = 0xFF000000;
616+
pub const VM_FLAGS_USER_ALLOCATE: ::c_int = VM_FLAGS_FIXED | VM_FLAGS_ANYWHERE |
617+
VM_FLAGS_PURGABLE |
618+
VM_FLAGS_RANDOM_ADDR |
619+
VM_FLAGS_NO_CACHE |
620+
VM_FLAGS_OVERWRITE |
621+
VM_FLAGS_SUPERPAGE_MASK |
622+
VM_FLAGS_ALIAS_MASK;
623+
pub const VM_FLAGS_USER_MAP: ::c_int = VM_FLAGS_USER_ALLOCATE |
624+
VM_FLAGS_RETURN_4K_DATA_ADDR |
625+
VM_FLAGS_RETURN_DATA_ADDR;
626+
pub const VM_FLAGS_USER_REMAP: ::c_int = VM_FLAGS_FIXED | VM_FLAGS_ANYWHERE |
627+
VM_FLAGS_RANDOM_ADDR |
628+
VM_FLAGS_OVERWRITE |
629+
VM_FLAGS_RETURN_DATA_ADDR |
630+
VM_FLAGS_RESILIENT_CODESIGN;
631+
632+
pub const VM_FLAGS_SUPERPAGE_SHIFT: ::c_int = 16;
633+
pub const SUPERPAGE_NONE: ::c_int = 0;
634+
pub const SUPERPAGE_SIZE_ANY: ::c_int = 1;
635+
pub const VM_FLAGS_SUPERPAGE_NONE: ::c_int = SUPERPAGE_NONE <<
636+
VM_FLAGS_SUPERPAGE_SHIFT;
637+
pub const VM_FLAGS_SUPERPAGE_SIZE_ANY: ::c_int = SUPERPAGE_SIZE_ANY <<
638+
VM_FLAGS_SUPERPAGE_SHIFT;
639+
pub const SUPERPAGE_SIZE_2MB: ::c_int = 2;
640+
pub const VM_FLAGS_SUPERPAGE_SIZE_2MB: ::c_int = SUPERPAGE_SIZE_2MB <<
641+
VM_FLAGS_SUPERPAGE_SHIFT;
642+
643+
pub const VM_MEMORY_MALLOC: ::c_int = 1;
644+
pub const VM_MEMORY_MALLOC_SMALL: ::c_int = 2;
645+
pub const VM_MEMORY_MALLOC_LARGE: ::c_int = 3;
646+
pub const VM_MEMORY_MALLOC_HUGE: ::c_int = 4;
647+
pub const VM_MEMORY_SBRK: ::c_int = 5;
648+
pub const VM_MEMORY_REALLOC: ::c_int = 6;
649+
pub const VM_MEMORY_MALLOC_TINY: ::c_int = 7;
650+
pub const VM_MEMORY_MALLOC_LARGE_REUSABLE: ::c_int = 8;
651+
pub const VM_MEMORY_MALLOC_LARGE_REUSED: ::c_int = 9;
652+
pub const VM_MEMORY_ANALYSIS_TOOL: ::c_int = 10;
653+
pub const VM_MEMORY_MALLOC_NANO: ::c_int = 11;
654+
pub const VM_MEMORY_MACH_MSG: ::c_int = 20;
655+
pub const VM_MEMORY_IOKIT: ::c_int = 21;
656+
pub const VM_MEMORY_STACK: ::c_int = 30;
657+
pub const VM_MEMORY_GUARD: ::c_int = 31;
658+
pub const VM_MEMORY_SHARED_PMAP: ::c_int = 32;
659+
pub const VM_MEMORY_DYLIB: ::c_int = 33;
660+
pub const VM_MEMORY_OBJC_DISPATCHERS: ::c_int = 34;
661+
pub const VM_MEMORY_UNSHARED_PMAP: ::c_int = 35;
662+
pub const VM_MEMORY_APPKIT: ::c_int = 40;
663+
pub const VM_MEMORY_FOUNDATION: ::c_int = 41;
664+
pub const VM_MEMORY_COREGRAPHICS: ::c_int = 42;
665+
pub const VM_MEMORY_CORESERVICES: ::c_int = 43;
666+
pub const VM_MEMORY_CARBON: ::c_int = VM_MEMORY_CORESERVICES;
667+
pub const VM_MEMORY_JAVA: ::c_int = 44;
668+
pub const VM_MEMORY_COREDATA: ::c_int = 45;
669+
pub const VM_MEMORY_COREDATA_OBJECTIDS: ::c_int = 46;
670+
pub const VM_MEMORY_ATS: ::c_int = 50;
671+
pub const VM_MEMORY_LAYERKIT: ::c_int = 51;
672+
pub const VM_MEMORY_CGIMAGE: ::c_int = 52;
673+
pub const VM_MEMORY_TCMALLOC: ::c_int = 53;
674+
pub const VM_MEMORY_COREGRAPHICS_DATA: ::c_int = 54;
675+
pub const VM_MEMORY_COREGRAPHICS_SHARED: ::c_int = 55;
676+
pub const VM_MEMORY_COREGRAPHICS_FRAMEBUFFERS: ::c_int = 56;
677+
pub const VM_MEMORY_COREGRAPHICS_BACKINGSTORES: ::c_int = 57;
678+
pub const VM_MEMORY_COREGRAPHICS_XALLOC: ::c_int = 58;
679+
pub const VM_MEMORY_COREGRAPHICS_MISC: ::c_int = VM_MEMORY_COREGRAPHICS;
680+
pub const VM_MEMORY_DYLD: ::c_int = 60;
681+
pub const VM_MEMORY_DYLD_MALLOC: ::c_int = 61;
682+
pub const VM_MEMORY_SQLITE: ::c_int = 62;
683+
pub const VM_MEMORY_JAVASCRIPT_CORE: ::c_int = 63;
684+
pub const VM_MEMORY_JAVASCRIPT_JIT_EXECUTABLE_ALLOCATOR: ::c_int = 64;
685+
pub const VM_MEMORY_JAVASCRIPT_JIT_REGISTER_FILE: ::c_int = 65;
686+
pub const VM_MEMORY_GLSL: ::c_int = 66;
687+
pub const VM_MEMORY_OPENCL: ::c_int = 67;
688+
pub const VM_MEMORY_COREIMAGE: ::c_int = 68;
689+
pub const VM_MEMORY_WEBCORE_PURGEABLE_BUFFERS: ::c_int = 69;
690+
pub const VM_MEMORY_IMAGEIO: ::c_int = 70;
691+
pub const VM_MEMORY_COREPROFILE: ::c_int = 71;
692+
pub const VM_MEMORY_ASSETSD: ::c_int = 72;
693+
pub const VM_MEMORY_OS_ALLOC_ONCE: ::c_int = 73;
694+
pub const VM_MEMORY_LIBDISPATCH: ::c_int = 74;
695+
pub const VM_MEMORY_ACCELERATE: ::c_int = 75;
696+
pub const VM_MEMORY_COREUI: ::c_int = 76;
697+
pub const VM_MEMORY_COREUIFILE: ::c_int = 77;
698+
pub const VM_MEMORY_GENEALOGY: ::c_int = 78;
699+
pub const VM_MEMORY_RAWCAMERA: ::c_int = 79;
700+
pub const VM_MEMORY_CORPSEINFO: ::c_int = 80;
701+
pub const VM_MEMORY_ASL: ::c_int = 81;
702+
pub const VM_MEMORY_SWIFT_RUNTIME: ::c_int = 82;
703+
pub const VM_MEMORY_SWIFT_METADATA: ::c_int = 83;
704+
pub const VM_MEMORY_DHMM: ::c_int = 84;
705+
pub const VM_MEMORY_SCENEKIT: ::c_int = 86;
706+
pub const VM_MEMORY_SKYWALK: ::c_int = 87;
707+
pub const VM_MEMORY_APPLICATION_SPECIFIC_1: ::c_int = 240;
708+
pub const VM_MEMORY_APPLICATION_SPECIFIC_16: ::c_int = 255;
709+
604710
pub const MAP_FAILED: *mut ::c_void = !0 as *mut ::c_void;
605711

606712
pub const MCL_CURRENT: ::c_int = 0x0001;

0 commit comments

Comments
 (0)