221 lines · plain
1add_custom_target(libc_sys_mman_unittests)2 3add_libc_unittest(4 mmap_test5 SUITE6 libc_sys_mman_unittests7 SRCS8 mmap_test.cpp9 DEPENDS10 libc.include.sys_mman11 libc.src.errno.errno12 libc.src.sys.mman.mmap13 libc.src.sys.mman.munmap14 libc.test.UnitTest.ErrnoCheckingTest15 libc.test.UnitTest.ErrnoSetterMatcher16)17 18add_libc_unittest(19 mremap_test20 SUITE21 libc_sys_mman_unittests22 SRCS23 mremap_test.cpp24 DEPENDS25 libc.include.sys_mman26 libc.src.errno.errno27 libc.src.sys.mman.mmap28 libc.src.sys.mman.mremap29 libc.src.sys.mman.munmap30 libc.test.UnitTest.ErrnoCheckingTest31 libc.test.UnitTest.ErrnoSetterMatcher32)33 34if (NOT LLVM_USE_SANITIZER)35 add_libc_unittest(36 mprotect_test37 SUITE38 libc_sys_mman_unittests39 SRCS40 mprotect_test.cpp41 DEPENDS42 libc.include.sys_mman43 libc.include.signal44 libc.src.errno.errno45 libc.src.sys.mman.mmap46 libc.src.sys.mman.munmap47 libc.src.sys.mman.mprotect48 libc.test.UnitTest.ErrnoCheckingTest49 libc.test.UnitTest.ErrnoSetterMatcher50 )51endif()52 53add_libc_unittest(54 madvise_test55 SUITE56 libc_sys_mman_unittests57 SRCS58 madvise_test.cpp59 DEPENDS60 libc.include.sys_mman61 libc.src.errno.errno62 libc.src.sys.mman.mmap63 libc.src.sys.mman.munmap64 libc.src.sys.mman.madvise65 libc.test.UnitTest.ErrnoCheckingTest66 libc.test.UnitTest.ErrnoSetterMatcher67)68 69# Disable sanitizers for pkey_test.70# This test intentionally triggers segfaults to verify pkey_mprotect behavior,71# and sanitizers register signal handlers that interfere with death testing.72if (NOT LLVM_USE_SANITIZER)73 add_libc_unittest(74 pkey_test75 SUITE76 libc_sys_mman_unittests77 SRCS78 pkey_test.cpp79 DEPENDS80 libc.hdr.errno_macros81 libc.hdr.signal_macros82 libc.hdr.types.size_t83 libc.src.sys.mman.mmap84 libc.src.sys.mman.munmap85 libc.src.sys.mman.pkey_alloc86 libc.src.sys.mman.pkey_free87 libc.src.sys.mman.pkey_get88 libc.src.sys.mman.pkey_mprotect89 libc.src.sys.mman.pkey_set90 libc.test.UnitTest.ErrnoCheckingTest91 libc.test.UnitTest.ErrnoSetterMatcher92 )93endif()94 95add_libc_unittest(96 posix_madvise_test97 SUITE98 libc_sys_mman_unittests99 SRCS100 posix_madvise_test.cpp101 DEPENDS102 libc.include.sys_mman103 libc.src.errno.errno104 libc.src.sys.mman.mmap105 libc.src.sys.mman.munmap106 libc.src.sys.mman.posix_madvise107 libc.test.UnitTest.ErrnoCheckingTest108 libc.test.UnitTest.ErrnoSetterMatcher109)110 111add_libc_unittest(112 mincore_test113 SUITE114 libc_sys_mman_unittests115 SRCS116 mincore_test.cpp117 DEPENDS118 libc.include.sys_mman119 libc.include.unistd120 libc.src.errno.errno121 libc.src.sys.mman.mmap122 libc.src.sys.mman.munmap123 libc.src.sys.mman.madvise124 libc.src.sys.mman.mincore125 libc.src.sys.mman.mlock126 libc.src.sys.mman.munlock127 libc.src.unistd.sysconf128 libc.test.UnitTest.ErrnoCheckingTest129 libc.test.UnitTest.ErrnoSetterMatcher130)131 132add_libc_unittest(133 mlock_test134 SUITE135 libc_sys_mman_unittests136 SRCS137 mlock_test.cpp138 DEPENDS139 libc.include.sys_mman140 libc.include.unistd141 libc.src.errno.errno142 libc.src.sys.mman.mmap143 libc.src.sys.mman.munmap144 libc.src.sys.mman.madvise145 libc.src.sys.mman.mincore146 libc.src.sys.mman.mlock147 libc.src.sys.mman.mlock2148 libc.src.sys.mman.munlock149 libc.src.sys.mman.mlockall150 libc.src.sys.mman.munlockall151 libc.src.sys.resource.getrlimit152 libc.src.unistd.sysconf153 libc.src.__support.OSUtil.osutil154 libc.test.UnitTest.ErrnoCheckingTest155 libc.test.UnitTest.ErrnoSetterMatcher156)157 158add_libc_unittest(159 msync_test160 SUITE161 libc_sys_mman_unittests162 SRCS163 msync_test.cpp164 DEPENDS165 libc.include.sys_mman166 libc.include.unistd167 libc.src.errno.errno168 libc.src.sys.mman.mmap169 libc.src.sys.mman.munmap170 libc.src.sys.mman.msync171 libc.src.sys.mman.mincore172 libc.src.sys.mman.mlock173 libc.src.sys.mman.munlock174 libc.src.unistd.sysconf175 libc.test.UnitTest.ErrnoCheckingTest176 libc.test.UnitTest.ErrnoSetterMatcher177)178 179add_libc_unittest(180 remap_file_pages_test181 SUITE182 libc_sys_mman_unittests183 SRCS184 remap_file_pages_test.cpp185 DEPENDS186 libc.include.sys_mman187 libc.include.sys_stat188 libc.test.UnitTest.ErrnoCheckingTest189 libc.test.UnitTest.ErrnoSetterMatcher190 libc.src.sys.mman.remap_file_pages191 libc.src.errno.errno192 libc.src.sys.mman.mmap193 libc.src.sys.mman.munmap194 libc.src.fcntl.open195 libc.src.unistd.close196 libc.src.unistd.sysconf197)198 199add_libc_unittest(200 shm_test201 SUITE202 libc_sys_mman_unittests203 SRCS204 shm_test.cpp205 DEPENDS206 libc.include.sys_mman207 libc.include.sys_syscall208 libc.src.errno.errno209 libc.src.fcntl.fcntl210 libc.src.sys.mman.shm_open211 libc.src.sys.mman.shm_unlink212 libc.src.sys.mman.mmap213 libc.src.sys.mman.munmap214 libc.src.unistd.ftruncate215 libc.src.unistd.close216 libc.src.__support.OSUtil.osutil217 libc.hdr.fcntl_macros218 libc.test.UnitTest.ErrnoCheckingTest219 libc.test.UnitTest.ErrnoSetterMatcher220)221