1. 09 Jan, 2018 1 commit
  2. 22 Dec, 2017 1 commit
    • Andreas Haas's avatar
      [mips64][turbofan] Implement on-stack returns. · 461274fb
      Andreas Haas authored
      This is the implementation of crrev.com/c/766371 for mips64.
      
      Original description:
      
      Add the ability to return (multiple) return values on the stack:
      
      - Extend stack frames with a new buffer region for return slots.
        This region is located at the end of a caller's frame such that
        its slots can be indexed as caller frame slots in a callee
        (located beyond its parameters) and assigned return values.
      - Adjust stack frame constructon and deconstruction accordingly.
      - Extend linkage computation to support register plus stack returns.
      - Reserve return slots in caller frame when respective calls occur.
      - Introduce and generate architecture instructions ('peek') for
        reading back results from return slots in the caller.
      - Aggressive tests.
      - Some minor clean-up.
      
      R=v8-mips-ports@googlegroups.com
      
      Change-Id: Ia924f94367320b9062e33d35b58ccd38c8fc3ca3
      Reviewed-on: https://chromium-review.googlesource.com/842483Reviewed-by: 's avatarIvica Bogosavljevic <ivica.bogosavljevic@mips.com>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50299}
      461274fb
  3. 21 Dec, 2017 2 commits
  4. 20 Dec, 2017 2 commits
    • Andreas Haas's avatar
      [arm][turbofan] Implement on-stack returns. · 9c7b6e1e
      Andreas Haas authored
      This is the implementation of crrev.com/c/766371 for arm.
      
      Original description:
      
      Add the ability to return (multiple) return values on the stack:
      
      - Extend stack frames with a new buffer region for return slots.
        This region is located at the end of a caller's frame such that
        its slots can be indexed as caller frame slots in a callee
        (located beyond its parameters) and assigned return values.
      - Adjust stack frame constructon and deconstruction accordingly.
      - Extend linkage computation to support register plus stack returns.
      - Reserve return slots in caller frame when respective calls occur.
      - Introduce and generate architecture instructions ('peek') for
        reading back results from return slots in the caller.
      - Aggressive tests.
      - Some minor clean-up.
      
      R=v8-arm-ports@googlegroups.com
      
      Change-Id: I7d61424a184d5778baf1d1270013f4e0c7ec68b4
      Reviewed-on: https://chromium-review.googlesource.com/836608Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50237}
      9c7b6e1e
    • Andreas Haas's avatar
      [wasm] Turn on tests for multiple returns on Windows · bf691e79
      Andreas Haas authored
      R=clemensh@chromium.org
      
      Change-Id: Id2978d2c37a5fb4191db285f4660e22472b70f9d
      Reviewed-on: https://chromium-review.googlesource.com/836427Reviewed-by: 's avatarClemens Hammacher <clemensh@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50225}
      bf691e79
  5. 14 Dec, 2017 2 commits
  6. 13 Dec, 2017 2 commits
    • Junliang Yan's avatar
      PPC/s390: Reland [turbofan] Implement on-stack returns (Intel) · cae7667c
      Junliang Yan authored
      Port bd732f7d
      
      Original Commit Message:
      
          The original CL introduced a test which uses a random number generator.
          I disable the test for now, which is okay because this CL adds to a
          work-in-progress feature anyways, and I will fix the problem in another
          CL.
      
          Original description:
          Add the ability to return (multiple) return values on the stack:
      
          - Extend stack frames with a new buffer region for return slots.
            This region is located at the end of a caller's frame such that
            its slots can be indexed as caller frame slots in a callee
            (located beyond its parameters) and assigned return values.
          - Adjust stack frame constructon and deconstruction accordingly.
          - Extend linkage computation to support register plus stack returns.
          - Reserve return slots in caller frame when respective calls occur.
          - Introduce and generate architecture instructions ('peek') for
            reading back results from return slots in the caller.
          - Aggressive tests.
          - Some minor clean-up.
      
          So far, only ia32 and x64 are implemented.
      
      R=ahaas@chromium.org, joransiu@ca.ibm.com, jbarboza@ca.ibm.com
      BUG=
      LOG=N
      
      Change-Id: I8d63286aa5af5f52cc2eeaf2adeee13d0ff19e7d
      Reviewed-on: https://chromium-review.googlesource.com/823084
      Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
      Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
      Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50091}
      cae7667c
    • Alexei Filippov's avatar
      Mark test-cpu-profiler/NativeFrameStackTrace test as flaky · 5c10512c
      Alexei Filippov authored
      BUG=v8:7202
      TBR=mstarzinger@chromium.org
      
      Change-Id: I5399eab9a04edf98d57ee9e18be76e69f7cc9fa2
      Reviewed-on: https://chromium-review.googlesource.com/823566Reviewed-by: 's avatarAlexei Filippov <alph@chromium.org>
      Commit-Queue: Alexei Filippov <alph@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50059}
      5c10512c
  7. 12 Dec, 2017 1 commit
    • Andreas Haas's avatar
      Reland [turbofan] Implement on-stack returns (Intel) · bd732f7d
      Andreas Haas authored
      The original CL introduced a test which uses a random number generator.
      I disable the test for now, which is okay because this CL adds to a
      work-in-progress feature anyways, and I will fix the problem in another
      CL.
      
      Original description:
      Add the ability to return (multiple) return values on the stack:
      
      - Extend stack frames with a new buffer region for return slots.
        This region is located at the end of a caller's frame such that
        its slots can be indexed as caller frame slots in a callee
        (located beyond its parameters) and assigned return values.
      - Adjust stack frame constructon and deconstruction accordingly.
      - Extend linkage computation to support register plus stack returns.
      - Reserve return slots in caller frame when respective calls occur.
      - Introduce and generate architecture instructions ('peek') for
        reading back results from return slots in the caller.
      - Aggressive tests.
      - Some minor clean-up.
      
      So far, only ia32 and x64 are implemented.
      
      Change-Id: I8b03fc4e53946daaa0e14a34603f4824a04fad7e
      Reviewed-on: https://chromium-review.googlesource.com/819557Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50031}
      bd732f7d
  8. 11 Dec, 2017 2 commits
    • Andreas Haas's avatar
      Revert "[turbofan] Implement on-stack returns (Intel)" · 943ccb98
      Andreas Haas authored
      This reverts commit 1e49864f.
      
      Reason for revert: Crashing test on the waterfall https://logs.chromium.org/v/?s=chromium%2Fbb%2Fclient.v8%2FV8_Linux_gcc_4.8%2F16871%2F%2B%2Frecipes%2Fsteps%2FCheck%2F0%2Flogs%2FReturnMultipleRandom%2F0
      
      Original change's description:
      > [turbofan] Implement on-stack returns (Intel)
      > 
      > Add the ability to return (multiple) return values on the stack:
      > 
      > - Extend stack frames with a new buffer region for return slots.
      >   This region is located at the end of a caller's frame such that
      >   its slots can be indexed as caller frame slots in a callee
      >   (located beyond its parameters) and assigned return values.
      > - Adjust stack frame constructon and deconstruction accordingly.
      > - Extend linkage computation to support register plus stack returns.
      > - Reserve return slots in caller frame when respective calls occur.
      > - Introduce and generate architecture instructions ('peek') for
      >   reading back results from return slots in the caller.
      > - Aggressive tests.
      > - Some minor clean-up.
      > 
      > So far, only ia32 and x64 are implemented.
      > 
      > Change-Id: I9532ad13aa307c1dec40548c5b84600fe2f762ce
      > Reviewed-on: https://chromium-review.googlesource.com/766371
      > Commit-Queue: Andreas Haas <ahaas@chromium.org>
      > Reviewed-by: Ben Titzer <titzer@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#49994}
      
      TBR=titzer@chromium.org,rossberg@chromium.org,ahaas@chromium.org
      
      Change-Id: Ib257e92448942f8ef07d5ef246f9381f4784f014
      No-Presubmit: true
      No-Tree-Checks: true
      No-Try: true
      Reviewed-on: https://chromium-review.googlesource.com/819637Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#50000}
      943ccb98
    • Andreas Haas's avatar
      [turbofan] Implement on-stack returns (Intel) · 1e49864f
      Andreas Haas authored
      Add the ability to return (multiple) return values on the stack:
      
      - Extend stack frames with a new buffer region for return slots.
        This region is located at the end of a caller's frame such that
        its slots can be indexed as caller frame slots in a callee
        (located beyond its parameters) and assigned return values.
      - Adjust stack frame constructon and deconstruction accordingly.
      - Extend linkage computation to support register plus stack returns.
      - Reserve return slots in caller frame when respective calls occur.
      - Introduce and generate architecture instructions ('peek') for
        reading back results from return slots in the caller.
      - Aggressive tests.
      - Some minor clean-up.
      
      So far, only ia32 and x64 are implemented.
      
      Change-Id: I9532ad13aa307c1dec40548c5b84600fe2f762ce
      Reviewed-on: https://chromium-review.googlesource.com/766371
      Commit-Queue: Andreas Haas <ahaas@chromium.org>
      Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49994}
      1e49864f
  9. 08 Dec, 2017 1 commit
  10. 07 Dec, 2017 3 commits
  11. 01 Dec, 2017 1 commit
  12. 29 Nov, 2017 1 commit
  13. 28 Nov, 2017 1 commit
  14. 24 Nov, 2017 1 commit
    • Yang Guo's avatar
      [snapshot] make API external references optional. · 13a68e6c
      Yang Guo authored
      In snapshots with several contexts, some contexts may not reference
      function or object templates, and therefore would not require external
      references for deserialization. However, function and object templates
      are deserialized with the isolate as part of the partial snapshot cache,
      so we would need these external references even if we only use contexts
      that don't need them.
      
      With this patch, we use a fallback in case no external references are
      provided. This way, we only run into issues when we actually call native
      callbacks.
      
      R=jgruber@chromium.org, peria@chromium.org
      
      Change-Id: I6af8a77f26c92bd73fdab6112474c62da270597f
      Reviewed-on: https://chromium-review.googlesource.com/784831Reviewed-by: 's avatarJakob Gruber <jgruber@chromium.org>
      Commit-Queue: Yang Guo <yangguo@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#49615}
      13a68e6c
  15. 09 Nov, 2017 1 commit
  16. 05 Oct, 2017 1 commit
  17. 20 Sep, 2017 1 commit
  18. 25 Aug, 2017 1 commit
  19. 09 Aug, 2017 1 commit
  20. 31 Jul, 2017 1 commit
  21. 18 Jul, 2017 1 commit
  22. 28 Jun, 2017 1 commit
  23. 26 Jun, 2017 1 commit
  24. 09 Jun, 2017 2 commits
  25. 08 Jun, 2017 1 commit
  26. 07 Jun, 2017 1 commit
  27. 06 Jun, 2017 1 commit
  28. 29 May, 2017 1 commit
  29. 05 May, 2017 1 commit
  30. 28 Apr, 2017 2 commits
  31. 25 Apr, 2017 1 commit