1. 10 Sep, 2018 2 commits
  2. 07 Sep, 2018 1 commit
  3. 06 Sep, 2018 1 commit
  4. 14 Apr, 2018 1 commit
    • Jakob Kummerow's avatar
      [ubsan] Change Address typedef to uintptr_t · 2459046c
      Jakob Kummerow authored
      The "Address" type is V8's general-purpose type for manipulating memory
      addresses. Per the C++ spec, pointer arithmetic and pointer comparisons
      are undefined behavior except within the same array; since we generally
      don't operate within a C++ array, our general-purpose type shouldn't be
      a pointer type.
      
      Bug: v8:3770
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel
      Change-Id: Ib96016c24a0f18bcdba916dabd83e3f24a1b5779
      Reviewed-on: https://chromium-review.googlesource.com/988657
      Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
      Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#52601}
      2459046c
  5. 22 Mar, 2018 1 commit
  6. 02 Feb, 2018 2 commits
  7. 22 Dec, 2017 2 commits
  8. 21 Dec, 2017 2 commits
  9. 15 Dec, 2017 1 commit
    • Bill Budge's avatar
      [Memory] Create memory management API in v8::internal. · a449f09f
      Bill Budge authored
      - Creates a memory management API in v8::internal, which corresponds
        to the existing one in base::OS.
      - Implements the new API in terms of the old one.
      - Changes all usage of the base::OS API to the one in v8::internal. This
        includes all tests, except platform and OS tests.
      - Makes OS:: methods private.
      - Moves all LSAN calls into the v8::internal functions.
      
      Bug: chromium:756050
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Iaa3f022e3e12fdebf937f3c76b6c6455014beb8a
      Reviewed-on: https://chromium-review.googlesource.com/794856
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarEric Holk <eholk@chromium.org>
      Reviewed-by: 's avatarHannes Payer <hpayer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50139}
      a449f09f
  10. 23 Nov, 2017 1 commit
  11. 22 Nov, 2017 1 commit
  12. 21 Nov, 2017 1 commit
  13. 17 Nov, 2017 1 commit
  14. 16 Nov, 2017 2 commits
  15. 14 Nov, 2017 1 commit
    • Bill Budge's avatar
      Reland "[Memory] Use OS::Allocate for all OS memory allocations." · adc52af5
      Bill Budge authored
      This is a reland of 4899bcb6
      This is a reland of b73ee334
      
      Original change's description:
      > [Memory] Use OS::Allocate for all OS memory allocations.
      >
      > - 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.
      >
      > - Eliminates OS::ReleaseRegion, replacing with calls to OS::Free.
      > - Adds bool return value to OS::Free.
      > - Cleans up types of flags, protection on Windows and Cygwin.
      
      > Bug: chromium:756050
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I306dbe042cc867670fdc935abca29db074b0da71
      
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Iad3c025334e8f8d7d647be99a36a11ee449c9087
      Reviewed-on: https://chromium-review.googlesource.com/767014
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49363}
      adc52af5
  16. 11 Nov, 2017 1 commit
  17. 10 Nov, 2017 1 commit
  18. 09 Nov, 2017 1 commit
    • Bill Budge's avatar
      Reland "[Memory] Use OS::Allocate for all OS memory allocations." · 4899bcb6
      Bill Budge authored
      This is a reland of 7e78506f
      Original change's description:
      > [Memory] Use OS::Allocate for all OS memory allocations.
      > 
      > - 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: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Hannes Payer <hpayer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49235}
      
      Bug: chromium:756050
      Change-Id: I333f7a6aea0bcb608d01cafb43e94893a4625b15
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/758509Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49273}
      4899bcb6
  19. 08 Nov, 2017 2 commits
    • Bill Budge's avatar
      Revert "[Memory] Use OS::Allocate for all OS memory allocations." · 1ea3fd2e
      Bill Budge authored
      This reverts commit 7e78506f.
      
      Reason for revert: Broke Android build on Arm64.
      
      Original change's description:
      > [Memory] Use OS::Allocate for all OS memory allocations.
      > 
      > - 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: Michael Lippautz <mlippautz@chromium.org>
      > Reviewed-by: Hannes Payer <hpayer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49235}
      
      TBR=bbudge@chromium.org,hpayer@chromium.org,mlippautz@chromium.org
      
      Change-Id: Ic09de4d63c19746a62e804b1f889817ffaebc330
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:756050
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/758625Reviewed-by: 's avatarBill Budge <bbudge@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49242}
      1ea3fd2e
    • 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
  20. 07 Nov, 2017 2 commits
  21. 18 Oct, 2017 1 commit
  22. 13 Oct, 2017 1 commit
  23. 01 Oct, 2017 1 commit
  24. 22 Sep, 2017 1 commit
  25. 21 Sep, 2017 1 commit
    • Bill Budge's avatar
      Reland "Reland "[Memory] Move VirtualMemory out of base:: platform."" · 645cda07
      Bill Budge authored
      This is a reland of f2cd10db
      Original change's description:
      > Reland "[Memory] Move VirtualMemory out of base:: platform."
      > 
      > This is a reland of 4dd293d9
      > Original change's description:
      > > [Memory] Move VirtualMemory out of base:: platform.
      > > 
      > > - Moves base::VirtualMemory to v8::internal::VirtualMemory.
      > > - Makes VirtualMemory platform-independent by moving internals to new
      > >   OS:: static methods, for each platform.
      > > 
      > > This will make it easier to delegate memory management in VirtualMemory
      > > to V8::Platform, so that embedders like Blink can override it. We can't
      > > depend on V8::Platform in base/platform.
      > > 
      > > Bug: chromium:756050
      > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf
      > > Reviewed-on: https://chromium-review.googlesource.com/653214
      > > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#48048}
      > 
      > Bug: chromium:756050
      > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Reviewed-on: https://chromium-review.googlesource.com/671125
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48084}
      
      Bug: chromium:756050
      Change-Id: Ie596730b5cefc38137cab7fc1f76613f5af7b825
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/675283Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48113}
      645cda07
  26. 20 Sep, 2017 1 commit
    • Michael Hablich's avatar
      Revert "Reland "[Memory] Move VirtualMemory out of base:: platform."" · 7447fd53
      Michael Hablich authored
      This reverts commit f2cd10db.
      
      Reason for revert: Blocks the roll https://chromium-review.googlesource.com/c/chromium/src/+/674623
      
      Original change's description:
      > Reland "[Memory] Move VirtualMemory out of base:: platform."
      > 
      > This is a reland of 4dd293d9
      > Original change's description:
      > > [Memory] Move VirtualMemory out of base:: platform.
      > > 
      > > - Moves base::VirtualMemory to v8::internal::VirtualMemory.
      > > - Makes VirtualMemory platform-independent by moving internals to new
      > >   OS:: static methods, for each platform.
      > > 
      > > This will make it easier to delegate memory management in VirtualMemory
      > > to V8::Platform, so that embedders like Blink can override it. We can't
      > > depend on V8::Platform in base/platform.
      > > 
      > > Bug: chromium:756050
      > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf
      > > Reviewed-on: https://chromium-review.googlesource.com/653214
      > > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#48048}
      > 
      > Bug: chromium:756050
      > Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Reviewed-on: https://chromium-review.googlesource.com/671125
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48084}
      
      TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org
      
      Change-Id: I04176d77ca9ad8315b0e1bb2b21f40f2c8ab9536
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:756050
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/674843Reviewed-by: 's avatarMichael Hablich <hablich@chromium.org>
      Commit-Queue: Michael Hablich <hablich@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48088}
      7447fd53
  27. 19 Sep, 2017 1 commit
    • Bill Budge's avatar
      Reland "[Memory] Move VirtualMemory out of base:: platform." · f2cd10db
      Bill Budge authored
      This is a reland of 4dd293d9
      Original change's description:
      > [Memory] Move VirtualMemory out of base:: platform.
      > 
      > - Moves base::VirtualMemory to v8::internal::VirtualMemory.
      > - Makes VirtualMemory platform-independent by moving internals to new
      >   OS:: static methods, for each platform.
      > 
      > This will make it easier to delegate memory management in VirtualMemory
      > to V8::Platform, so that embedders like Blink can override it. We can't
      > depend on V8::Platform in base/platform.
      > 
      > Bug: chromium:756050
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf
      > Reviewed-on: https://chromium-review.googlesource.com/653214
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48048}
      
      Bug: chromium:756050
      Change-Id: Ib492c7c69f1833be127a571808301e96b84b8aa2
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/671125
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48084}
      f2cd10db
  28. 18 Sep, 2017 1 commit
    • Michael Hablich's avatar
      Revert "[Memory] Move VirtualMemory out of base:: platform." · 4fc43530
      Michael Hablich authored
      This reverts commit 4dd293d9.
      
      Reason for revert: Blocks roll: https://chromium-review.googlesource.com/c/chromium/src/+/669785
      
      Original change's description:
      > [Memory] Move VirtualMemory out of base:: platform.
      > 
      > - Moves base::VirtualMemory to v8::internal::VirtualMemory.
      > - Makes VirtualMemory platform-independent by moving internals to new
      >   OS:: static methods, for each platform.
      > 
      > This will make it easier to delegate memory management in VirtualMemory
      > to V8::Platform, so that embedders like Blink can override it. We can't
      > depend on V8::Platform in base/platform.
      > 
      > Bug: chromium:756050
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: Iadfe230b6850bd917727a373f277afded9883adf
      > Reviewed-on: https://chromium-review.googlesource.com/653214
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#48048}
      
      TBR=bbudge@chromium.org,ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org,scottmg@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: chromium:756050
      Change-Id: Ice2618ef72950e1b64c31434a239c626aa5e5970
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/670843Reviewed-by: 's avatarMichael Hablich <hablich@chromium.org>
      Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
      Commit-Queue: Michael Hablich <hablich@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48062}
      4fc43530
  29. 15 Sep, 2017 1 commit
    • Bill Budge's avatar
      [Memory] Move VirtualMemory out of base:: platform. · 4dd293d9
      Bill Budge authored
      - Moves base::VirtualMemory to v8::internal::VirtualMemory.
      - Makes VirtualMemory platform-independent by moving internals to new
        OS:: static methods, for each platform.
      
      This will make it easier to delegate memory management in VirtualMemory
      to V8::Platform, so that embedders like Blink can override it. We can't
      depend on V8::Platform in base/platform.
      
      Bug: chromium:756050
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: Iadfe230b6850bd917727a373f277afded9883adf
      Reviewed-on: https://chromium-review.googlesource.com/653214
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#48048}
      4dd293d9
  30. 01 Aug, 2017 1 commit
    • Bill Budge's avatar
      Reland "[Memory] Add an OnCriticalMemoryPressure method to V8::Platform." · f8db3e8f
      Bill Budge authored
      This is a reland of 3f90d9f9
      Original change's description:
      > [Memory] Add an OnCriticalMemoryPressure method to V8::Platform.
      > 
      > Adds virtual V8::Platform::OnCriticalMemoryPressure method, default
      > implementation does nothing.
      > 
      > Calls this method on first allocation failures in NewArray, Malloced,
      > and zone AccountingAllocator and adds retry logic.
      > 
      > Adds utility functions for allocating base::VirtualMemory to functions
      > in allocation.h, which call this method and add retry logic.
      > 
      > Calls these utility functions in heap CodeRange, Spaces, StoreBuffer
      > and SequentialMarkingDeque.
      > 
      > Bug: v8:6635
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I38afd394f3be556aca037d16675e9884658158cb
      > Reviewed-on: https://chromium-review.googlesource.com/583543
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#46988}
      
      Bug: v8:6635
      Change-Id: I0d70c5796f407f0ed42cfddf581d26f533f9bea8
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/593090Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#47027}
      f8db3e8f
  31. 29 Jul, 2017 2 commits
    • Georg Neis's avatar
      Revert "[Memory] Add an OnCriticalMemoryPressure method to V8::Platform." · 53db0584
      Georg Neis authored
      This reverts commit 3f90d9f9.
      
      Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20TSAN/builds/16510
      
      Original change's description:
      > [Memory] Add an OnCriticalMemoryPressure method to V8::Platform.
      > 
      > Adds virtual V8::Platform::OnCriticalMemoryPressure method, default
      > implementation does nothing.
      > 
      > Calls this method on first allocation failures in NewArray, Malloced,
      > and zone AccountingAllocator and adds retry logic.
      > 
      > Adds utility functions for allocating base::VirtualMemory to functions
      > in allocation.h, which call this method and add retry logic.
      > 
      > Calls these utility functions in heap CodeRange, Spaces, StoreBuffer
      > and SequentialMarkingDeque.
      > 
      > Bug: v8:6635
      > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      > Change-Id: I38afd394f3be556aca037d16675e9884658158cb
      > Reviewed-on: https://chromium-review.googlesource.com/583543
      > Commit-Queue: Bill Budge <bbudge@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#46988}
      
      TBR=bbudge@chromium.org,ulan@chromium.org,mlippautz@chromium.org
      
      Change-Id: I79afea5982e62db1462cc5a5585a226f0ddbe752
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:6635
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/592887Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Commit-Queue: Georg Neis <neis@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#46989}
      53db0584
    • Bill Budge's avatar
      [Memory] Add an OnCriticalMemoryPressure method to V8::Platform. · 3f90d9f9
      Bill Budge authored
      Adds virtual V8::Platform::OnCriticalMemoryPressure method, default
      implementation does nothing.
      
      Calls this method on first allocation failures in NewArray, Malloced,
      and zone AccountingAllocator and adds retry logic.
      
      Adds utility functions for allocating base::VirtualMemory to functions
      in allocation.h, which call this method and add retry logic.
      
      Calls these utility functions in heap CodeRange, Spaces, StoreBuffer
      and SequentialMarkingDeque.
      
      Bug: v8:6635
      Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
      Change-Id: I38afd394f3be556aca037d16675e9884658158cb
      Reviewed-on: https://chromium-review.googlesource.com/583543
      Commit-Queue: Bill Budge <bbudge@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarMichael Lippautz <mlippautz@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#46988}
      3f90d9f9
  32. 13 Jul, 2017 1 commit