Skip to content
  • Alexander Potapenko's avatar
    This patch adds two methods, __asan_allocate_island and __asan_deallocate_island · bd53f597
    Alexander Potapenko authored
    and switches our interceptors to using them instead of the default
    vm_allocate-based approach used by mach_override_ptr.
    
    To simplify the code, a fixed memory mapping is used for the allocation pool --
    note that we can't mmap an arbitrary chunk of memory, because the shadow memory hasn't been mapped yet
    (for the reasons discussed in http://code.google.com/p/address-sanitizer/issues/detail?id=24, we cannot map the shadow earlier)
    
    The patch drops the program startup time from several second to half a second,
    which speeds up the execution of ASan tests noticeably.
    Because of the virtual memory size occupied by the programs it's hard
    to speed up the shutdown time, which would've also helped the tests.
    
    llvm-svn: 148116
    bd53f597
Loading