1. 24 Jul, 2019 1 commit
    • Jakob Gruber's avatar
      [compiler] Allocate in a temporary zone inside ComputeLoopState · d267c337
      Jakob Gruber authored
      Even in the most basic case (the task queue only ever contains a single
      element), this function triggers ~4KB in zone allocations. These
      allocations are basically lost and can never be reused. Avoid this by
      allocating inside a new temporary zone that is only alive during the
      ComputeLoopState function call.
      
      This reduces allocation size for the zone used during load elimination
      from ~30KB to ~15KB when compiling a trivial for-loop example.
      
      An alternative solution would be to switch to something similar to
      SmallVector (which uses a statically-sized stack storage before
      switching to heap allocations), but based on zones instead of malloc.
      
      Bug: v8:9427,v8:6150
      Change-Id: Ic25abe6d48ac718c9ced2f9ef581f244030980fa
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1714869
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#62883}
      d267c337
  2. 23 Jul, 2019 23 commits
  3. 22 Jul, 2019 16 commits