• Bill Budge's avatar
    [Memory] Use OS::Allocate for all OS memory allocations. · 7e78506f
    Bill Budge authored
    - Eliminates OS::ReserveRegion and OS::ReserveAlignedRegion.
    - Changes OS::Allocate to take alignment parameter, reorders parameters
      to match page_allocator.
    - Since the size of memory allocation can be deduced, don't return the
      amount of memory allocated.
    - Changes reservation of aligned address space. Before we would reserve
      (size + alignment) rounded up to page size. This is too much, because
      maximum misalignment is (alignment - page_size).
    - On Windows and Cygwin, we release an oversize allocation and
      immediately retry at the aligned address in the allocation. If we
      lose the address due to a race, we just retry.
    - Clean up all the calls to OS::Allocate in codegen and tests by adding
      helper AllocateSystemPage function (allocation.h) and
      AllocateAssemblerBuffer (cctest.h).
    - Changes 'assm' to 'masm' in some targets for consistency when using
      a macro-assembler.
    
    Bug: chromium:756050
    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: I306dbe042cc867670fdc935abca29db074b0da71
    Reviewed-on: https://chromium-review.googlesource.com/749848
    Commit-Queue: Bill Budge <bbudge@chromium.org>
    Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
    Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49235}
    7e78506f
test-macro-assembler-x64.cc 31.5 KB