1. 19 May, 2016 1 commit
  2. 16 May, 2016 1 commit
  3. 13 May, 2016 2 commits
  4. 12 May, 2016 1 commit
  5. 10 May, 2016 1 commit
  6. 09 May, 2016 3 commits
    • kozyatinskiy's avatar
      [V8] Add v8::Value::TypeOf to API · 6f419dfe
      kozyatinskiy authored
      There is TypeOf static method on object inside V8. In this CL I've extracted it via API.
      
      LOG=Y
      R=yangguo@chromium.org
      BUG=chromium:595206
      
      Review-Url: https://codereview.chromium.org/1829833002
      Cr-Commit-Position: refs/heads/master@{#36113}
      6f419dfe
    • jochen's avatar
      Expose IsConstructor to the C++ API · acbbd59f
      jochen authored
      BUG=v8:4993
      R=verwaest@chromium.org
      LOG=y
      
      Review-Url: https://codereview.chromium.org/1964433002
      Cr-Commit-Position: refs/heads/master@{#36107}
      acbbd59f
    • ulan's avatar
      Introduce a new phantom weakness type without finalization callback. · a6da98d8
      ulan authored
      Handles of this type are automatically reset by the garbage collector
      when their objects are not longer reachable.
      
      The motivation is to reduce pause time of external.weak_global_handles
      phase of the garbage collector by not maintaing the list of pending
      callbacks and not calling the callbacks.
      
      Local testing on discourse page of the v8.inifinite_scroll benchmark
      shows 7x improvement for this GC phase.
      
      Before:
      external.weak_global_handles
       len: 21
       min: 0.0
       max: 4.5
       avg: 0.757142857143
      
      After:
      external.weak_global_handles
       len: 21
       min: 0.0
       max: 0.5
       avg: 0.109523809524
      
      A follow-up patch will enable the new phantom handles in Chromium.
      
      BUG=chromium:608333
      LOG=NO
      
      Review-Url: https://codereview.chromium.org/1950963002
      Cr-Commit-Position: refs/heads/master@{#36095}
      a6da98d8
  7. 06 May, 2016 1 commit
    • ulan's avatar
      [API] Remove deprecated WeakCallbackData and related functions. · 82dcb2be
      ulan authored
      This removes:
      - PersistentBase::SetWeak that takes WeakCallbackData.
        The embedders should use the version that takes WeakCallbackInfo.
      - PersistentBase::SetPhantom.
        The embedders should SetWeak that takes WeakCallbackInfo.
      
      Functions in DefaultPersistentValueMapTraits are changed to accept
      WeakCallbackInfo instead of WeakCallbackData.
      
      BUG=chromium:609808
      LOG=NO
      
      Review-Url: https://codereview.chromium.org/1953263002
      Cr-Commit-Position: refs/heads/master@{#36079}
      82dcb2be
  8. 04 May, 2016 3 commits
  9. 03 May, 2016 1 commit
  10. 27 Apr, 2016 1 commit
  11. 25 Apr, 2016 2 commits
  12. 19 Apr, 2016 1 commit
  13. 18 Apr, 2016 2 commits
  14. 15 Apr, 2016 4 commits
  15. 14 Apr, 2016 1 commit
    • mlippautz's avatar
      [api] Deprecate *MemoryAllocationCallback · 97e3909a
      mlippautz authored
      To keep track of memory characteristics of a JS program use
      GetHeapSpaceStatistics from a combination of
      - a GC epilogue callback registered using AddGCEpilogueCallback
      - an interrupt registered using RequestInterrupt
      
      Rationale:
      The feature is currently broken as those callbacks are (also) executed from
      background threads, breaking our implicit contract for only performing callbacks
      on the foreground thread. Furhtermore, it's not clear for the embedder whether
      these allocations originate in JS, or are required for a GC.
      
      Note:
      - The already deprecated non-isolate versions are removed with this CL.
      
      R=jochen@chromium.org
      BUG=v8:4813
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1886573006
      
      Cr-Commit-Position: refs/heads/master@{#35474}
      97e3909a
  16. 12 Apr, 2016 2 commits
    • hlopko's avatar
      Use EmbedderHeapTracer instead of object grouping when embedder sets the heap tracer. · 6d1f7282
      hlopko authored
      When the embedder sets the heap tracer, V8, during marking, will collect all reachable wrappers, and then ask embedder to trace its heap. The embedder is expected to call PersistentBase::RegisterExternalReference with all wrappers reachable from the given ones. This fixed point iteration happens in MarkCompact::ProcessEphemeralMarking.
      
      For more efficient object visiting during marking, we need a special JS_API_OBJECT_TYPE (in tandem with already existing JS_SPECIAL_API_OBJECT_TYPE) and corresponding visitor (JSApiObjectVisitor).
      
      BUG=chromium:468240
      LOG=no
      
      Review URL: https://codereview.chromium.org/1844413002
      
      Cr-Commit-Position: refs/heads/master@{#35412}
      6d1f7282
    • jochen's avatar
      [api] Introduce ReturnValue::Get · b3d793e4
      jochen authored
      This is a convenience API that an embedder can use to do final checks on
      the return value. Note that this creates a new handle and thus defeats
      the performance optimization done for ReturnValue - an embedder should
      only use this in non-performance critical code paths.
      
      BUG=
      R=verwaest@chromium.org
      
      Review URL: https://codereview.chromium.org/1875263003
      
      Cr-Commit-Position: refs/heads/master@{#35409}
      b3d793e4
  17. 11 Apr, 2016 1 commit
  18. 06 Apr, 2016 1 commit
    • verwaest's avatar
      Use a dictionary-mode code cache on the map rather than a dual system. · d2eb555e
      verwaest authored
      The previous code cache system required stubs to be marked with a StubType, causing them to be inserted either into a fixed array or into a dictionary-mode code cache. This could cause names to be in both cases, and lookup would just find the "fast" one first. Given that we clear out the caches on each GC, the memory overhead shouldn't be too bad. Additionally, the dictionary itself should just stay linear for small arrays; that's faster anyway.
      
      This CL additionally deletes some dead IC code.
      
      BUG=
      
      Review URL: https://codereview.chromium.org/1846963002
      
      Cr-Commit-Position: refs/heads/master@{#35291}
      d2eb555e
  19. 05 Apr, 2016 2 commits
  20. 04 Apr, 2016 1 commit
  21. 01 Apr, 2016 1 commit
  22. 31 Mar, 2016 2 commits
  23. 30 Mar, 2016 1 commit
  24. 24 Mar, 2016 1 commit
  25. 22 Mar, 2016 1 commit
  26. 21 Mar, 2016 2 commits
    • vogelheim's avatar
      Revert of Parser: Make skipping HTML comments optional. (patchset #6 id:140001... · 09ac4f29
      vogelheim authored
      Revert of Parser: Make skipping HTML comments optional. (patchset #6 id:140001 of https://codereview.chromium.org/1801203002/ )
      
      Reason for revert:
      Violates ES6 spec (crbug.com/4850), and implementation was over-eager. Will revert for now.
      
      Original issue's description:
      > Parser: Make skipping HTML comments optional.
      >
      > API change: This adds a new flag skip_html_comments to v8::ScriptOriginOptions. This flag controls whether V8 will attempt to honour HTML-style comments in JS sources.
      >
      > (That is: Gracefully ignore <!-- ... ---> in JS sources, which was a popular technique in the early days of JavaScript, to prevent non-JS-enabled browsers from displaying script sources to uses.)
      >
      > The flag defaults to 'true' when using v8::ScriptOrigin constructor, which preserves the existing behaviour. Embedders which are happy with the existing behaviour will thus not need any changes.
      >
      > BUG=chromium:573887
      > LOG=Y
      >
      > Committed: https://crrev.com/91d344288aa51ed03eaaa1cb3e368ac1e82f0173
      > Cr-Commit-Position: refs/heads/master@{#34904}
      
      TBR=jochen@chromium.org,rossberg@chromium.org
      # Not skipping CQ checks because original CL landed more than 1 days ago.
      BUG=chromium:573887, v8:4850
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1817163003
      
      Cr-Commit-Position: refs/heads/master@{#34958}
      09ac4f29
    • jochen's avatar
      Temporarily undeprecate ForceSet · 2a1570ef
      jochen authored
      I first need to figure out what to do about window.document before we
      can deprecate this: window.document is a regular accessor, however, once
      the window navigated from about:blank, its value will never change.
      Blink uses ForceSet to then replace the accessor with a data constant
      which has way better performance than invoking the accessor all the
      time.
      
      Since the accessor, however, is installed as read only &
      non-configurable, there is no spec compliant way to pull this off right
      now
      
      BUG=chromium:595601
      R=verwaest@chromium.org
      LOG=y
      
      Review URL: https://codereview.chromium.org/1816033002
      
      Cr-Commit-Position: refs/heads/master@{#34919}
      2a1570ef