1. 30 Sep, 2016 1 commit
  2. 20 Sep, 2016 3 commits
  3. 19 Sep, 2016 1 commit
  4. 16 Sep, 2016 1 commit
  5. 10 Aug, 2016 1 commit
  6. 27 Jul, 2016 1 commit
  7. 26 Jul, 2016 2 commits
  8. 09 Jun, 2016 1 commit
    • lpy's avatar
      Move hashmap into src/base. · 2fd55667
      lpy authored
      We ported hashmap.h into libsampler as a workaround before, so the main focus of
      this patch is to reduce code duplication. This patch moves the hashmap into
      src/base as well as creates DefaultAllocationPolicy using malloc and free.
      
      BUG=v8:5050
      LOG=n
      
      Review-Url: https://codereview.chromium.org/2010243003
      Cr-Commit-Position: refs/heads/master@{#36873}
      2fd55667
  9. 27 May, 2016 1 commit
  10. 27 Apr, 2016 1 commit
    • ssanfilippo's avatar
      [Interpreter] Add Ignition statistics JavaScript extension. · 905becd1
      ssanfilippo authored
      This commit introduces IgnitionStatisticsExtension, which provides
      methods for accessing Ignition statistics and counters from JavaScript.
      
      The extension is registered when FLAG_ignition and
      FLAG_trace_ignition_dispatches are both enabled.
      
      For the moment, the only exposed function is
      getIgnitionDispatchCounters(), which allows to retrieve Ignition
      dispatch counters as a JavaScript object.
      
      BUG=v8:4899
      LOG=N
      
      Review URL: https://codereview.chromium.org/1899133004
      
      Cr-Commit-Position: refs/heads/master@{#35816}
      905becd1
  11. 31 Mar, 2016 1 commit
  12. 12 Aug, 2015 1 commit
    • mstarzinger's avatar
      Remove inline header includes from non-inline headers (1). · 00a07bc1
      mstarzinger authored
      This tries to remove includes of "-inl.h" headers from normal ".h"
      headers, thereby reducing the chance of any cyclic dependencies and
      decreasing the average size of our compilation units.
      
      Note that this change still leaves 7 violations of that rule in the
      code. However there now is the "tools/check-inline-includes.sh" tool
      detecting such violations.
      
      R=bmeurer@chromium.org
      
      Review URL: https://codereview.chromium.org/1283033003
      
      Cr-Commit-Position: refs/heads/master@{#30125}
      00a07bc1
  13. 11 Aug, 2015 1 commit
    • mstarzinger's avatar
      Remove several grab-bag includes from the v8.h header. · 58109a2c
      mstarzinger authored
      This is the first step of turning the v8.h file into a normal header
      instead of an include-the-world header. The new rule is that no other
      header files are allowed to include v8.h, which is enforced by DEPS.
      
      Also the number of includes inside the v8.h file has been drastically
      reduced. Basically the last missing piece is the inclusion of the big
      objects-inl.h file.
      
      This in turn makes many headers follow the IWYU principle.
      
      R=bmeurer@chromium.org,hpayer@chromium.org,titzer@chromium.org
      
      Review URL: https://codereview.chromium.org/1282503003
      
      Cr-Commit-Position: refs/heads/master@{#30102}
      58109a2c
  14. 30 Jul, 2015 2 commits
    • binji's avatar
      [d8] Fix tsan bugs · 053b8434
      binji authored
      script_executed and last_run are read/written by multiple threads. Also
      externalized_shared_contents_ is modified by multiple threads.
      
      BUG=4306
      R=jarin@chromium.org
      LOG=n
      
      Review URL: https://codereview.chromium.org/1252623003
      
      Cr-Commit-Position: refs/heads/master@{#29912}
      053b8434
    • binji's avatar
      [d8 Workers] Fix bug creating Worker during main thread termination · a87db3de
      binji authored
      When the main thread terminates, it forcibly terminates all Worker threads.
      When this happens, the threads objects were only half-created; they had a
      JavaScript Worker object, but not a C++ worker object.
      
      This CL fixes that bug, as well as some other fixes:
      * Signatures on Worker methods
      * Use SetAlignedPointerFromInternalField instead of using an External.
      * Remove state_ from Worker. Simplify to atomic bool running_.
      
      BUG=chromium:511880
      R=jarin@chromium.org
      LOG=n
      
      Review URL: https://codereview.chromium.org/1255563002
      
      Cr-Commit-Position: refs/heads/master@{#29911}
      a87db3de
  15. 23 Jul, 2015 2 commits
  16. 20 Jul, 2015 1 commit
  17. 17 Jul, 2015 2 commits
  18. 16 Jul, 2015 1 commit
    • binji's avatar
      d8: Leak context_mutex_ so it will never be destroyed while locked · 162f116a
      binji authored
      Calling quit() from d8 will call exit(), which will run static destructors. If
      context_mutex_ is statically allocated, pthread_mutex_destroy will be called.
      
      When running d8 in "isolates" mode, another thread may be running. If it calls
      CreateEvaluationContext, it will lock the context_mutex_. If the mutex is
      destroyed while it is locked, it will return an error.
      
      This CL changes the Mutex to a LazyMutex, which will leak instead of being
      destroyed.
      
      BUG=v8:4279
      R=jarin@chromium.org
      R=machenbach@chromium.org
      LOG=n
      
      Review URL: https://codereview.chromium.org/1240553003
      
      Cr-Commit-Position: refs/heads/master@{#29709}
      162f116a
  19. 15 Jul, 2015 1 commit
  20. 14 Jul, 2015 4 commits
  21. 13 Jul, 2015 2 commits
  22. 07 Jul, 2015 1 commit
  23. 06 Jul, 2015 1 commit
    • binji's avatar
      Fix bug when transferring SharedArrayBuffer to multiple Workers. · dd7962bf
      binji authored
      Previously, the serialization code would call Externalize for every transferred
      ArrayBuffer or SharedArrayBuffer, but that function can only be called once. If
      the buffer is already externalized, we should call GetContents instead.
      
      Also fix use-after-free bug when transferring ArrayBuffers. The transferred
      ArrayBuffer must be internalized in the new isolate, or be managed by the
      Shell. The current code gives it to the isolate externalized and frees it
      immediately afterward when the SerializationData object is destroyed.
      
      BUG=chromium:497295
      R=jarin@chromium.org
      LOG=n
      
      Review URL: https://codereview.chromium.org/1215233004
      
      Cr-Commit-Position: refs/heads/master@{#29499}
      dd7962bf
  24. 01 Jul, 2015 1 commit
  25. 25 Jun, 2015 1 commit
    • binji's avatar
      Fix cluster-fuzz regression when getting message from Worker · 28b0129b
      binji authored
      The issue is that Worker.prototype.terminate was deleting the C++ Worker
      object, and then Worker.prototype.getMessage was trying to read messages from
      the queue.
      
      The simplest solution is to keep workers in a zombie state when they have been
      terminated. They won't be reaped until Shell::CleanupWorkers is called.
      
      I've also fixed some threading issues with Workers:
      
      * Workers can be created by another Worker, so the Shell::workers_ variable
      must be protected by a mutex.
      
      * An individual Worker can typically only be accessed by the isolate that
      created it, but the main thread can always terminate it, so the Worker::state_
      must be accessed in a thread-safe way.
      
      BUG=chromium:504136
      R=jochen@chromium.org
      LOG=n
      
      Review URL: https://codereview.chromium.org/1208733002
      
      Cr-Commit-Position: refs/heads/master@{#29306}
      28b0129b
  26. 22 Jun, 2015 1 commit
    • binji's avatar
      Add d8 API for spawning function on a new thread (Third try) · 001ee86e
      binji authored
      This API closely matches the Worker API. The differences:
      
      1) The argument to the Worker constructor is a function to run, not a script.
      2) Receiving a message from a worker is a synchronous API (as there is no event
      loop).
      
      The serialization done here is not robust as the real DOM implementation. For
      example, recursive data structures or otherwise duplicated objects are not
      allowed.
      
      BUG=chromium:497295
      LOG=n
      
      Review URL: https://codereview.chromium.org/1192923002
      
      Cr-Commit-Position: refs/heads/master@{#29195}
      001ee86e
  27. 19 Jun, 2015 2 commits
  28. 18 Jun, 2015 2 commits