1. 12 Sep, 2018 1 commit
  2. 10 Sep, 2018 1 commit
  3. 04 Sep, 2018 1 commit
  4. 27 Aug, 2018 1 commit
  5. 24 Aug, 2018 1 commit
  6. 23 Aug, 2018 1 commit
  7. 22 Aug, 2018 1 commit
    • Camillo Bruni's avatar
      Reland "[runtime] Improve for-in performance" · 827e6d12
      Camillo Bruni authored
      This is a reland of 8fa7f9ed
      
      Original change's description:
      > [runtime] Improve for-in performance
      > 
      > - Add fast-path String conversion for Smi (which is the most common case)
      >   This improves for-in by ~10% on non-initialized enum-caches
      > - Don't use the NumberStringCache for large indices to not overflow the cache
      >   during key collection. This improves worst-case performance by ~2.5x
      > - Drop number_to_string_native and number_to_string_runtime counters
      > 
      > Bug: v8:7717
      > Change-Id: Ic1ff385e3374e6a7e7e7bdb9ae75fb8c238105d1
      > Reviewed-on: https://chromium-review.googlesource.com/1167049
      > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55233}
      
      Bug: v8:7717
      Change-Id: Ie29041b20ca4a06b8e74a4378e7c1118373072ae
      Reviewed-on: https://chromium-review.googlesource.com/1183721
      Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55316}
      827e6d12
  8. 21 Aug, 2018 1 commit
    • Aseem Garg's avatar
      Revert "[runtime] Improve for-in performance" · a4235f00
      Aseem Garg authored
      This reverts commit 8fa7f9ed.
      
      Reason for revert: Speculating that this breaks GC stress
      
      Original change's description:
      > [runtime] Improve for-in performance
      > 
      > - Add fast-path String conversion for Smi (which is the most common case)
      >   This improves for-in by ~10% on non-initialized enum-caches
      > - Don't use the NumberStringCache for large indices to not overflow the cache
      >   during key collection. This improves worst-case performance by ~2.5x
      > - Drop number_to_string_native and number_to_string_runtime counters
      > 
      > Bug: v8:7717
      > Change-Id: Ic1ff385e3374e6a7e7e7bdb9ae75fb8c238105d1
      > Reviewed-on: https://chromium-review.googlesource.com/1167049
      > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Camillo Bruni <cbruni@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#55233}
      
      TBR=ulan@chromium.org,cbruni@chromium.org,verwaest@chromium.org
      
      Change-Id: I8d0332478afcd7c6a3f8fbf1f044b9aa870b6b13
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:7717
      Reviewed-on: https://chromium-review.googlesource.com/1182676Reviewed-by: 's avatarAseem Garg <aseemgarg@chromium.org>
      Commit-Queue: Aseem Garg <aseemgarg@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#55241}
      a4235f00
  9. 20 Aug, 2018 2 commits
  10. 17 Aug, 2018 2 commits
  11. 14 Aug, 2018 1 commit
  12. 10 Aug, 2018 1 commit
  13. 09 Aug, 2018 2 commits
  14. 08 Aug, 2018 2 commits
  15. 06 Aug, 2018 1 commit
    • Marja Hölttä's avatar
      Revert "Revert (partially) "Reland [in-place weak refs] Use WeakArrayList in Heap::noscript_list."" · a12cbd34
      Marja Hölttä authored
      This reverts commit a5efd507.
      
      Reason for revert: was a GC bug, unrelated to this CL.
      
      Original change's description:
      > Revert (partially) "Reland [in-place weak refs] Use WeakArrayList in Heap::noscript_list."
      > 
      > Reason: flaky wasm crashes.
      > 
      > This leaves WeakArrayList::RemoveOne (+ tests for it) in place.
      > 
      > BUG=v8:7308, v8:8014
      > 
      > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      > Change-Id: I1195d061ae7d3c82f921f94f50df3f09a55de5ca
      > Reviewed-on: https://chromium-review.googlesource.com/1161904
      > Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
      > Commit-Queue: Marja Hölttä <marja@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#54891}
      
      TBR=marja@chromium.org,mlippautz@chromium.org
      
      # Not skipping CQ checks because original CL landed > 1 day ago.
      
      Bug: v8:7308, v8:8014
      Change-Id: Id8002e2178ac89378b047dd0acd1bf4e3c272918
      Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng
      Reviewed-on: https://chromium-review.googlesource.com/1162124Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Commit-Queue: Marja Hölttä <marja@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54921}
      a12cbd34
  16. 03 Aug, 2018 1 commit
  17. 31 Jul, 2018 1 commit
  18. 26 Jul, 2018 2 commits
  19. 25 Jul, 2018 2 commits
  20. 24 Jul, 2018 6 commits
  21. 20 Jul, 2018 1 commit
  22. 19 Jul, 2018 1 commit
    • Leszek Swirski's avatar
      [sfi] Remove SFI function identifier field · c941f11a
      Leszek Swirski authored
      Remove the function identifier field from SharedFunctionInfo. This field
      would store one of a) the function's inferred name, b) the "builtin
      function id", or c) debug info. We remove these in turn:
      
      a) The function's inferred name is available on the ScopeInfo, so like
         the start/end position we read it off either the ScopeInfo (for
         compiled functions) or the UncompiledData (for uncompiled functions).
      
         As a side-effect, now both UncompiledData and its subclass,
         UncompiledDataWithPreparsedScope, contain a pointer field. To keep
         BodyDescriptors manageable, we introduce a SubclassBodyDescriptor
         which effectively appends two BodyDescriptors together.
      
      b) The builtin function id is < 255, so we can steal a byte from
         expected no. of properies (also <255) and store these together.
         Eventually we want to get rid of this field and use the builtin ID,
         but this is pending JS builtin removal.
      
         As a side-effect, BuiltinFunctionId becomes an enum class (for better
         storage size guarantees).
      
      c) The debug info can hang off anything (since it stores the field it
         replaces), so we can attach it to the script field instead.
      
      This saves a word on compiled function (uncompiled functions
      unfortunately still have to store it in UncompiledData).
      
      Bug: chromium:818642
      Change-Id: I8b4b3a070f0fe328aafcaeac58842d144d12d996
      Reviewed-on: https://chromium-review.googlesource.com/1138328Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
      Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54543}
      c941f11a
  23. 18 Jul, 2018 2 commits
  24. 17 Jul, 2018 2 commits
  25. 16 Jul, 2018 3 commits
    • Leszek Swirski's avatar
      [sfi] Remove SFI function literal id field (reland^2) · 5dee5ade
      Leszek Swirski authored
      SharedFunctionInfos store their original function literal's id. This is
      also their index in the Script's SFI list.
      
      The function literal id is only needed for lazy compilation and live edit,
      and access only has to be fast in the former. So, we can move the SFI
      function literal id field to UncompiledData, and if patching with live
      edit, or discarding compiled code, we can perform a slower linear search
      through the Script's SFI list.
      
      This is a reland of
       1) https://chromium-review.googlesource.com/1082480 and
       2) https://chromium-review.googlesource.com/1128854
      the differences being:
       1) caching the literal id on UncompiledData rather than always linearly
          searching the SFI list, and removing the unused runtime-liveedit.cc
          file instead of fixing it to support this change.
       2) clearing padding on UncompiledData now that it has 3 int32 fields,
          making its end unaligned on x64.
      
      TBR=yangguo@chromium.org,marja@chromium.org,ulan@chromium.org,cbruni@chromium.org
      
      Bug: chromium:818642
      Change-Id: I58dcb12a2a60a680f662568da428e01189c62638
      Reviewed-on: https://chromium-review.googlesource.com/1138325Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54473}
      5dee5ade
    • Sigurd Schneider's avatar
      Revert "[sfi] Remove SFI function literal id field" · 58578584
      Sigurd Schneider authored
      This reverts commit 1d4a1172.
      
      Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/21989
      
      Original change's description:
      > [sfi] Remove SFI function literal id field
      > 
      > SharedFunctionInfos store their original function literal's id. This is
      > also their index in the Script's SFI list.
      > 
      > The function literal id is only needed for lazy compilation and live edit,
      > and access only has to be fast in the former. So, we can move the SFI
      > function literal id field to UncompiledData, and if patching with live
      > edit, or discarding compiled code, we can perform a slower linear search
      > through the Script's SFI list.
      > 
      > This is a reland of
      > https://chromium-review.googlesource.com/c/v8/v8/+/1082480
      > but caching the literal id on UncompiledData rather than always linearly
      > searching the SFI list. Also, removes the unused runtime-liveedit.cc file
      > instead of fixing it to support this change.
      > 
      > Bug: chromium:818642
      > Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde
      > Reviewed-on: https://chromium-review.googlesource.com/1128854
      > Reviewed-by: Yang Guo <yangguo@chromium.org>
      > Reviewed-by: Marja Hölttä <marja@chromium.org>
      > Reviewed-by: Camillo Bruni <cbruni@chromium.org>
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#54464}
      
      TBR=ulan@chromium.org,marja@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,cbruni@chromium.org,leszeks@chromium.org,verwaest@chromium.org
      
      Change-Id: Icee5ee3ab7688b93e2963f91debed65a58164534
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: chromium:818642
      Reviewed-on: https://chromium-review.googlesource.com/1138276Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54466}
      58578584
    • Leszek Swirski's avatar
      [sfi] Remove SFI function literal id field · 1d4a1172
      Leszek Swirski authored
      SharedFunctionInfos store their original function literal's id. This is
      also their index in the Script's SFI list.
      
      The function literal id is only needed for lazy compilation and live edit,
      and access only has to be fast in the former. So, we can move the SFI
      function literal id field to UncompiledData, and if patching with live
      edit, or discarding compiled code, we can perform a slower linear search
      through the Script's SFI list.
      
      This is a reland of
      https://chromium-review.googlesource.com/c/v8/v8/+/1082480
      but caching the literal id on UncompiledData rather than always linearly
      searching the SFI list. Also, removes the unused runtime-liveedit.cc file
      instead of fixing it to support this change.
      
      Bug: chromium:818642
      Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde
      Reviewed-on: https://chromium-review.googlesource.com/1128854Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Reviewed-by: 's avatarMarja Hölttä <marja@chromium.org>
      Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Leszek Swirski <leszeks@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#54464}
      1d4a1172