1. 03 Jan, 2019 2 commits
    • Junliang Yan's avatar
      PPC/s390: [builtins] Remove InternalArray and reduce InternalPackedArray constructors. · 3e7fa30b
      Junliang Yan authored
      Port 640d3adf
      
      Original Commit Message:
      
          InternalPackedArray now only has one constructor variant that expects no
          arguments (Chrome's only usage of InternalPackedArray). As such, these TFC
          builtins are no longer used and were removed:
          - InternalArrayNoArgumentConstructor_Holey
          - InternalArraySingleArgumentConstructor_Packed
          - InternalArraySingleArgumentConstructor_Holey
      
          On x64.release, this reduces builtins size by ~1.2KB.
      
      R=peter.wm.wong@gmail.com, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=
      LOG=N
      
      Change-Id: I46d86178c33e47acf2fb75fd3de743686641caa1
      Reviewed-on: https://chromium-review.googlesource.com/c/1393825Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
      Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
      Cr-Commit-Position: refs/heads/master@{#58509}
      3e7fa30b
    • Junliang Yan's avatar
      PPC/s390: [SFI] Add support for flushing old Bytecode from SharedFunctionInfos. · 3136b4f5
      Junliang Yan authored
      Port a55803a1
      
      Original Commit Message:
      
          This change makes the SFI to bytecode link pseudo-weak. The marking visitors
          check whether the bytecode is old, and if so, don't mark it and instead
          push the SFI onto a bytecode_flushing_candidates worklist. Once marking
          is complete, this list is walked, and for any of the candidates who's bytecode
          has not been marked (i.e., is only referenced by the shared function info),
          the bytecode is flushed and the SFI has the function data replaced with
          an UncompiledData (which overwrites the flushed bytecode array).
      
          Since we don't track JSFunctions, these can still think the underlying
          function is compiled, and so calling them will invoke
          InterpreterEntryTrampoline. As such, logic is added to
          InterpreterEntryTrampoline to detect flushed functions, and enter
          CompileLazy instead.
      
      R=rmcilroy@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com
      BUG=v8:8395
      LOG=N
      
      Change-Id: I4a913d318363a584d79aa6d7f4ee09f04a89bbbe
      Reviewed-on: https://chromium-review.googlesource.com/c/1393824Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
      Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
      Cr-Commit-Position: refs/heads/master@{#58508}
      3136b4f5
  2. 02 Jan, 2019 3 commits
  3. 31 Dec, 2018 1 commit
  4. 27 Dec, 2018 1 commit
  5. 26 Dec, 2018 1 commit
  6. 24 Dec, 2018 1 commit
    • Aleksandar Rikalo's avatar
      [mips] InterpreterEntryTrampoline improvement · 0f1b6112
      Aleksandar Rikalo authored
      Logic is added to InterpreterEntryTrampoline to detect flushed functions,
      and enter CompileLazy instead. Get the bytecode array from the function
      object and load it. The bytecode array could have been flushed from the
      shared function info, if so, call into CompileLazy.
      
      This fixes:
      
         cctest/test-heap/TestBytecodeFlushing
         cctest/test-heap/TestOptimizeAfterBytecodeFlushingCandidate
         debugger/debug/lazy-deopt-then-flush-bytecode
      
      [mips] Macro-assembler fix
      
      Fix massive failing of tests after fa3cbf60.
      
      Change-Id: Ic1978b5233eefc743fd7b020f65153630ffa281f
      Reviewed-on: https://chromium-review.googlesource.com/c/1388528Reviewed-by: 's avatarSreten Kovacevic <skovacevic@wavecomp.com>
      Commit-Queue: Sreten Kovacevic <skovacevic@wavecomp.com>
      Cr-Commit-Position: refs/heads/master@{#58463}
      0f1b6112
  7. 21 Dec, 2018 4 commits
    • Jakob Gruber's avatar
      [nojit] Skip the on-heap trampoline for builtin calls · ccc068d5
      Jakob Gruber authored
      This CL does two things:
      
      1. It introduces Call/JumpCodeObject as the bottleneck for all calls
         to non-heap-constant Code objects; and
      2. it dispatches directly to the off-heap entry point for all embedded
         code.
      
      Codegen at runtime remains unchanged to preserve the shorter,
      branch-less calling sequence.
      
      Bug: v8:7777
      Change-Id: I15fdcb51625209904c6a56737f085a23219319b9
      Reviewed-on: https://chromium-review.googlesource.com/c/1382461
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58440}
      ccc068d5
    • Sigurd Schneider's avatar
      Reland "[deoptimizer] Refactor GenerateDeoptimizationEntries" · 2a72b8ac
      Sigurd Schneider authored
      This is a reland of f63a657e
      
      Original change's description:
      > [deoptimizer] Refactor GenerateDeoptimizationEntries
      >
      > This reduces preprocessor-expanded source size by 64,359 from
      >
      > gen         (   21 files):    71,570 to    1,613,100 (   23x)
      > src         (  624 files):   367,830 to   52,964,659 (  144x)
      > test        (  392 files):   490,924 to   37,360,916 (   76x)
      > third_party (  432 files):   239,085 to    9,547,902 (   40x)
      > total       ( 1521 files): 1,184,093 to  102,461,098 (   87x)
      >
      > to
      >
      > gen         (   21 files):    71,570 to    1,613,100 (   23x)
      > src         (  624 files):   367,837 to   52,919,005 (  144x)
      > test        (  392 files):   490,924 to   37,342,211 (   76x)
      > third_party (  432 files):   239,085 to    9,547,902 (   40x)
      > total       ( 1521 files): 1,184,100 to  102,396,739 (   86x)
      >
      > Bug: v8:8562
      > Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a
      > Reviewed-on: https://chromium-review.googlesource.com/c/1384091
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
      > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58424}
      
      TBR=jarin@chromium.org,ulan@chromium.org
      
      Bug: v8:8562
      Change-Id: I7a8a350414941f49c6155ff43e36e0cb0b2006e5
      Reviewed-on: https://chromium-review.googlesource.com/c/1387497Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58437}
      2a72b8ac
    • Sigurd Schneider's avatar
      Revert "[deoptimizer] Refactor GenerateDeoptimizationEntries" · 4b4175d7
      Sigurd Schneider authored
      This reverts commit f63a657e.
      
      Reason for revert: breaks compile on lite mode:
      
      https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8926535782549686576/+/steps/build/0/steps/compile/0/stdout
      
      
      Original change's description:
      > [deoptimizer] Refactor GenerateDeoptimizationEntries
      > 
      > This reduces preprocessor-expanded source size by 64,359 from
      > 
      > gen         (   21 files):    71,570 to    1,613,100 (   23x)
      > src         (  624 files):   367,830 to   52,964,659 (  144x)
      > test        (  392 files):   490,924 to   37,360,916 (   76x)
      > third_party (  432 files):   239,085 to    9,547,902 (   40x)
      > total       ( 1521 files): 1,184,093 to  102,461,098 (   87x)
      > 
      > to
      > 
      > gen         (   21 files):    71,570 to    1,613,100 (   23x)
      > src         (  624 files):   367,837 to   52,919,005 (  144x)
      > test        (  392 files):   490,924 to   37,342,211 (   76x)
      > third_party (  432 files):   239,085 to    9,547,902 (   40x)
      > total       ( 1521 files): 1,184,100 to  102,396,739 (   86x)
      > 
      > Bug: v8:8562
      > Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a
      > Reviewed-on: https://chromium-review.googlesource.com/c/1384091
      > Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
      > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org>
      > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58424}
      
      TBR=ulan@chromium.org,jarin@chromium.org,sigurds@chromium.org
      
      Change-Id: I06e6f95255a3cea6a428713e9e841781425dffe8
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:8562
      Reviewed-on: https://chromium-review.googlesource.com/c/1387494Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58425}
      4b4175d7
    • Sigurd Schneider's avatar
      [deoptimizer] Refactor GenerateDeoptimizationEntries · f63a657e
      Sigurd Schneider authored
      This reduces preprocessor-expanded source size by 64,359 from
      
      gen         (   21 files):    71,570 to    1,613,100 (   23x)
      src         (  624 files):   367,830 to   52,964,659 (  144x)
      test        (  392 files):   490,924 to   37,360,916 (   76x)
      third_party (  432 files):   239,085 to    9,547,902 (   40x)
      total       ( 1521 files): 1,184,093 to  102,461,098 (   87x)
      
      to
      
      gen         (   21 files):    71,570 to    1,613,100 (   23x)
      src         (  624 files):   367,837 to   52,919,005 (  144x)
      test        (  392 files):   490,924 to   37,342,211 (   76x)
      third_party (  432 files):   239,085 to    9,547,902 (   40x)
      total       ( 1521 files): 1,184,100 to  102,396,739 (   86x)
      
      Bug: v8:8562
      Change-Id: Iee474e22ababa1e080b8d6359af4d0076903e59a
      Reviewed-on: https://chromium-review.googlesource.com/c/1384091Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
      Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58424}
      f63a657e
  8. 20 Dec, 2018 3 commits
  9. 19 Dec, 2018 6 commits
  10. 18 Dec, 2018 6 commits
  11. 17 Dec, 2018 7 commits
  12. 14 Dec, 2018 3 commits
  13. 13 Dec, 2018 2 commits
    • Sigurd Schneider's avatar
      Reland "Reland "Reland "[code-comments] Put code comments into the code object""" · b55dd17f
      Sigurd Schneider authored
      This is a reland of 9c0a4858
      
      Original change's description:
      > Reland "Reland "[code-comments] Put code comments into the code object""
      >
      > This is a reland of ed3d6472
      >
      > This reland fixes that padding at the end of Wasm instruction streams
      > triggered asserts in the code printer.
      >
      > Original change's description:
      > > Reland "[code-comments] Put code comments into the code object"
      > >
      > > This is a reland of e774cffe
      > >
      > > This reland disables a test as v8:8548 is blocking it, which was
      > > broken by a recent CL. CQ did not catch this because the merge-base
      > > CQ used did not yet contain the CL that caused v8:8548.
      > >
      > > Original change's description:
      > > > [code-comments] Put code comments into the code object
      > > >
      > > > Code comments in the snapshot can now be enabled with gn
      > > > arg 'v8_enable_snapshot_code_comments'
      > > >
      > > > Bug: v8:7989
      > > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173
      > > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > > > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > > > Reviewed-by: Michael Stanton <mvstanton@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#58020}
      > >
      > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org
      > >
      > > Bug: v8:7989, v8:8548
      > > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9
      > > Reviewed-on: https://chromium-review.googlesource.com/c/1361166
      > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
      > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#58028}
      >
      > Bug: v8:7989, v8:8548
      > Change-Id: I254f55ff687ad049f8d92b09331ed26a2bd05d7d
      > Reviewed-on: https://chromium-review.googlesource.com/c/1371784
      > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58221}
      
      TBR=jgruber@chromium.org,mstarzinger@chromium.org
      
      Bug: v8:7989, v8:8548, v8:8593
      Change-Id: I4f7ffc98e0281c7b744eb4a04ba0763896c7b59b
      Reviewed-on: https://chromium-review.googlesource.com/c/1375919Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58232}
      b55dd17f
    • Clemens Hammacher's avatar
      Revert "Reland "Reland "[code-comments] Put code comments into the code object""" · 8a5c0095
      Clemens Hammacher authored
      This reverts commit 9c0a4858.
      
      Reason for revert: Seems to break nosnap debug: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20nosnap%20-%20debug/22228
      
      Original change's description:
      > Reland "Reland "[code-comments] Put code comments into the code object""
      > 
      > This is a reland of ed3d6472
      > 
      > This reland fixes that padding at the end of Wasm instruction streams
      > triggered asserts in the code printer.
      > 
      > Original change's description:
      > > Reland "[code-comments] Put code comments into the code object"
      > >
      > > This is a reland of e774cffe
      > >
      > > This reland disables a test as v8:8548 is blocking it, which was
      > > broken by a recent CL. CQ did not catch this because the merge-base
      > > CQ used did not yet contain the CL that caused v8:8548.
      > >
      > > Original change's description:
      > > > [code-comments] Put code comments into the code object
      > > >
      > > > Code comments in the snapshot can now be enabled with gn
      > > > arg 'v8_enable_snapshot_code_comments'
      > > >
      > > > Bug: v8:7989
      > > > Change-Id: I8bd00cafa63132d00d849394c311ba15e6b6daf3
      > > > Reviewed-on: https://chromium-review.googlesource.com/c/1329173
      > > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > > > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > > > Reviewed-by: Michael Stanton <mvstanton@chromium.org>
      > > > Cr-Commit-Position: refs/heads/master@{#58020}
      > >
      > > TBR=mvstanton@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,tebbi@chromium.org
      > >
      > > Bug: v8:7989, v8:8548
      > > Change-Id: I464fc897205fefdf2dfc2eadc54d699c4e08a0e9
      > > Reviewed-on: https://chromium-review.googlesource.com/c/1361166
      > > Reviewed-by: Sigurd Schneider <sigurds@chromium.org>
      > > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > > Cr-Commit-Position: refs/heads/master@{#58028}
      > 
      > Bug: v8:7989, v8:8548
      > Change-Id: I254f55ff687ad049f8d92b09331ed26a2bd05d7d
      > Reviewed-on: https://chromium-review.googlesource.com/c/1371784
      > Commit-Queue: Sigurd Schneider <sigurds@chromium.org>
      > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org>
      > Reviewed-by: Jakob Gruber <jgruber@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#58221}
      
      TBR=mvstanton@chromium.org,mstarzinger@chromium.org,sigurds@chromium.org,jgruber@chromium.org
      
      Change-Id: I681a3c63120c6ab953bfe9cd2b07bcf560ebfdee
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Bug: v8:7989, v8:8548
      Reviewed-on: https://chromium-review.googlesource.com/c/1375916
      Commit-Queue: Clemens Hammacher <clemensh@chromium.org>
      Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58228}
      8a5c0095