1. 03 Dec, 2019 2 commits
  2. 02 Dec, 2019 1 commit
  3. 27 Nov, 2019 2 commits
  4. 26 Nov, 2019 1 commit
  5. 21 Nov, 2019 1 commit
  6. 20 Nov, 2019 2 commits
  7. 18 Nov, 2019 2 commits
  8. 15 Nov, 2019 1 commit
  9. 14 Nov, 2019 1 commit
  10. 08 Nov, 2019 1 commit
  11. 07 Nov, 2019 2 commits
  12. 06 Nov, 2019 3 commits
  13. 04 Nov, 2019 2 commits
  14. 01 Nov, 2019 1 commit
  15. 30 Oct, 2019 1 commit
    • Jakob Gruber's avatar
      Reland "[compiler] Optionally apply an offset to stack checks" · b875f466
      Jakob Gruber authored
      This is a reland of 4a16305b
      
      The original CL adjust only one part of the stack check, namely the
      comparison of the stack pointer against the stack limit in generated code.
      There is a second part: Runtime::kStackGuard repeats this check to
      distinguish between a stack overflow and an interrupt request.
      
      This second part in runtime must apply the offset just like in generated
      code. It is implemented in this reland by the StackCheckOffset operator
      and a new StackGuardWithGap runtime function.
      
      Original change's description:
      > [compiler] Optionally apply an offset to stack checks
      >
      > The motivation behind this change is that the frame size of an optimized
      > function and its unoptimized version may differ, and deoptimization
      > may thus trigger a stack overflow. The solution implemented in this CL
      > is to optionally apply an offset to the stack check s.t. the check
      > becomes 'sp - offset > limit'. The offset is applied to stack checks at
      > function-entry, and is set to the difference between the optimized and
      > unoptimized frame size.
      >
      > A caveat: OSR may not be fully handled by this fix since we've already
      > passed the function-entry stack check. A possible solution would be to
      > *not* skip creation of function-entry stack checks for inlinees.
      >
      > This CL: 1. annotates stack check nodes with the stack check kind, where
      > kind is one of {function-entry,iteration-body,unknown}. 2. potentially
      > allocates a temporary register to store the result of the 'sp - offset'
      > in instruction selection (and switches input registers to 'unique'
      > mode). 3. Applies the offset in code generation.
      >
      > Drive-by: Add src/compiler/globals.h for compiler-specific globals.
      >
      > Bug: v8:9534,chromium:1000887
      > Change-Id: I257191c4a4978ccb60cfa5805ef421f30f0e9826
      > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1762521
      > Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      > Reviewed-by: Georg Neis <neis@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#63701}
      
      Bug: v8:9534, chromium:1000887
      Change-Id: I71771c281afd7d57c09aa48ea1b182d01e6dee2a
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1822037Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
      Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
      Commit-Queue: Jakob Gruber <jgruber@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#64634}
      b875f466
  16. 28 Oct, 2019 2 commits
  17. 23 Oct, 2019 1 commit
  18. 17 Oct, 2019 1 commit
  19. 16 Oct, 2019 1 commit
  20. 15 Oct, 2019 1 commit
  21. 14 Oct, 2019 3 commits
  22. 09 Oct, 2019 2 commits
  23. 08 Oct, 2019 1 commit
  24. 07 Oct, 2019 1 commit
  25. 04 Oct, 2019 1 commit
  26. 30 Sep, 2019 1 commit
  27. 26 Sep, 2019 1 commit
  28. 25 Sep, 2019 1 commit