1. 25 Mar, 2015 1 commit
    • mstarzinger's avatar
      Switch full-codegen from StackHandlers to handler table. · 38a719f9
      mstarzinger authored
      This switches full-codegen to no longer push and pop StackHandler
      markers onto the operand stack, but relies on a range-based handler
      table instead. We only use StackHandlers in JSEntryStubs to mark the
      transition from C to JS code.
      
      Note that this makes deoptimization and OSR from within any try-block
      work out of the box, makes the non-exception paths faster and should
      overall be neutral on the memory footprint (pros).
      
      On the other hand it makes the exception paths slower and actually
      throwing and exception more expensive (cons).
      
      R=yangguo@chromium.org
      TEST=cctest/test-run-jsexceptions/DeoptTry
      
      Review URL: https://codereview.chromium.org/1010883002
      
      Cr-Commit-Position: refs/heads/master@{#27440}
      38a719f9
  2. 18 Mar, 2015 1 commit
    • mstarzinger's avatar
      Remove kind field from StackHandler. · 15f82138
      mstarzinger authored
      This relands commit 96f79568.
      
      This makes the Isolate::Throw logic not depend on a prediction of
      whether an exception is caught or uncaught. Such a prediction is
      inherently undecidable because a finally block can decide between
      consuming or re-throwing an exception depending on arbitray control
      flow.
      
      There still is a conservative prediction mechanism in place that
      components like the debugger or tracing can use for reporting.
      
      With this change we can get rid of the StackHandler::kind field, a
      pre-requisite to do table-based lookups of exception handlers.
      
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/997213003
      
      Cr-Commit-Position: refs/heads/master@{#27263}
      15f82138
  3. 16 Mar, 2015 2 commits
    • mstarzinger's avatar
      Revert of Remove kind field from StackHandler. (patchset #4 id:60001 of... · 5977ed02
      mstarzinger authored
      Revert of Remove kind field from StackHandler. (patchset #4 id:60001 of https://codereview.chromium.org/1002203002/)
      
      Reason for revert:
      Layout test failure in inspector/sources/debugger/debugger-pause-on-promise-rejection.html
      
      Original issue's description:
      > Remove kind field from StackHandler.
      >
      > This makes the Isolate::Throw logic not depend on a prediction of
      > whether an exception is caught or uncaught. Such a prediction is
      > inherently undecidable because a finally block can decide between
      > consuming or re-throwing an exception depending on arbitray control
      > flow.
      >
      > There still is a conservative prediction mechanism in place that
      > components like the debugger or tracing can use for reporting.
      >
      > With this change we can get rid of the StackHandler::kind field, a
      > pre-requisite to do table-based lookups of exception handlers.
      >
      > R=yangguo@chromium.org
      >
      > Committed: https://crrev.com/96f79568a926966ebcf0685bf9adc947f4e1fbff
      > Cr-Commit-Position: refs/heads/master@{#27210}
      
      TBR=yangguo@chromium.org
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      
      Review URL: https://codereview.chromium.org/1009903002
      
      Cr-Commit-Position: refs/heads/master@{#27215}
      5977ed02
    • mstarzinger's avatar
      Remove kind field from StackHandler. · 96f79568
      mstarzinger authored
      This makes the Isolate::Throw logic not depend on a prediction of
      whether an exception is caught or uncaught. Such a prediction is
      inherently undecidable because a finally block can decide between
      consuming or re-throwing an exception depending on arbitray control
      flow.
      
      There still is a conservative prediction mechanism in place that
      components like the debugger or tracing can use for reporting.
      
      With this change we can get rid of the StackHandler::kind field, a
      pre-requisite to do table-based lookups of exception handlers.
      
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1002203002
      
      Cr-Commit-Position: refs/heads/master@{#27210}
      96f79568
  4. 10 Mar, 2015 2 commits
  5. 11 Feb, 2015 3 commits
  6. 30 Sep, 2014 1 commit
  7. 18 Sep, 2014 1 commit
  8. 17 Sep, 2014 2 commits
  9. 02 Sep, 2014 1 commit
  10. 25 Aug, 2014 1 commit
  11. 20 Aug, 2014 1 commit
  12. 05 Aug, 2014 1 commit
  13. 04 Aug, 2014 1 commit
  14. 30 Jul, 2014 1 commit
  15. 08 Jul, 2014 1 commit
  16. 07 Jul, 2014 1 commit
  17. 05 Jun, 2014 1 commit
  18. 03 Jun, 2014 1 commit
  19. 30 May, 2014 1 commit
  20. 23 May, 2014 1 commit
  21. 22 May, 2014 1 commit
  22. 30 Apr, 2014 1 commit
  23. 29 Apr, 2014 1 commit
  24. 28 Apr, 2014 1 commit
  25. 24 Apr, 2014 2 commits
  26. 16 Apr, 2014 3 commits
  27. 14 Mar, 2014 1 commit
  28. 31 Jan, 2014 1 commit
  29. 07 Jan, 2014 1 commit
  30. 09 Dec, 2013 1 commit
  31. 02 Dec, 2013 1 commit
  32. 20 Nov, 2013 1 commit