1. 25 Oct, 2018 1 commit
    • Peter Marshall's avatar
      Reland "[cpu-profiler] Fix a bug which caused a pure virtual function call" · 3767ab39
      Peter Marshall authored
      This is a reland of c92a1dda
      
      Original change's description:
      > [cpu-profiler] Fix a bug which caused a pure virtual function call
      >
      > We need to remove each Sampler from the SamplerManager before we call
      > the Sampler destructor. This is because the signal handler can interrupt
      > the destructor, and call DoSampler(), which calls sampler->SampleStack()
      > on the sampler being destructed, causing general unhappiness and
      > "Pure virtual function called!" crashes.
      >
      > Bug: v8:8346, v8:5193
      > Change-Id: Iaa595a196eab33fb1af31584e9a68fd1ce0a18f6
      > Reviewed-on: https://chromium-review.googlesource.com/c/1293949
      > Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      > Reviewed-by: Alexei Filippov <alph@chromium.org>
      > Cr-Commit-Position: refs/heads/master@{#56882}
      
      TBR=yangguo@chromium.org
      
      Bug: v8:8346, v8:5193
      Change-Id: I9878f65c868ff1aed6f3a587cba688c4241bad8c
      Reviewed-on: https://chromium-review.googlesource.com/c/1298893Reviewed-by: 's avatarPeter Marshall <petermarshall@chromium.org>
      Commit-Queue: Peter Marshall <petermarshall@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#56976}
      3767ab39
  2. 24 Oct, 2018 1 commit
  3. 23 Oct, 2018 4 commits
  4. 18 Oct, 2018 1 commit
  5. 12 Oct, 2018 1 commit
  6. 01 Oct, 2018 1 commit
  7. 14 Sep, 2018 1 commit
  8. 01 Aug, 2018 1 commit
  9. 12 Feb, 2018 1 commit
  10. 08 Feb, 2018 1 commit
  11. 18 Oct, 2017 1 commit
  12. 21 Aug, 2017 1 commit
  13. 14 Jul, 2017 1 commit
  14. 11 Jun, 2017 1 commit
    • scottmg's avatar
      Basic compilation on Fuchsia · c72a6126
      scottmg authored
      Sufficient to compile //v8 in Chrome with target_os="fuchsia". Doesn't
      link yet, due to missing implementations (primarily VirtualMemory, as
      well as a few utility functions).
      
      BUG=chromium:731217
      CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_rel_ng
      
      Review-Url: https://codereview.chromium.org/2931143002
      Cr-Commit-Position: refs/heads/master@{#45831}
      c72a6126
  15. 30 May, 2017 1 commit
  16. 17 Mar, 2017 1 commit
  17. 10 Nov, 2016 1 commit
  18. 29 Sep, 2016 1 commit
    • leszeks's avatar
      [base] Template MatchFun in TemplateHashMapImpl · 837c91e8
      leszeks authored
      Make MatchFun a template parameter in TemplateHashMapImpl, moving the
      PointersMatch function down to an implementation which extends
      TemplateHashMapImpl to void* key and value (i.e. the same as the current
      HashMap and ZoneHashMap typedefs).
      
      This will allow other instantiations of TemplateHashMapImpl, with
      different MatchFun values, e.g. std::equal_to, to have their key
      equality test inlined, rather than calling a function pointer,
      
      Review-Url: https://codereview.chromium.org/2354593002
      Cr-Commit-Position: refs/heads/master@{#39868}
      837c91e8
  19. 25 Aug, 2016 1 commit
  20. 27 Jul, 2016 1 commit
  21. 08 Jul, 2016 1 commit
  22. 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
  23. 30 May, 2016 1 commit
  24. 26 May, 2016 1 commit
    • lpy's avatar
      Reland: Create libsampler as V8 sampler library. · a0198c0f
      lpy authored
      This patch does five things:
      
      1. Extracts sampler as libsampler to provide sampling functionality support.
      2. Makes SampleStack virtual so embedders can override the behaviour of sample collecting.
      3. Removes sampler.[h|cc].
      4. Moves sampling thread into log.cc as workaround to keep the --prof functionality.
      5. Creates SamplerManager to manage the relationship between samplers and threads.
      
      The reason we port hashmap.h is that in debug mode, STL containers are using
      mutexes from a mutex pool, which may lead to deadlock when using asynchronously
      signal handler.
      
      Currently libsampler is used in V8 temporarily.
      
      BUG=v8:4789
      LOG=n
      
      Committed: https://crrev.com/06cc9b7c176a6223971deaa9fbcafe1a05058c7b
      Cr-Commit-Position: refs/heads/master@{#36527}
      
      Review-Url: https://codereview.chromium.org/1922303002
      Cr-Commit-Position: refs/heads/master@{#36532}
      a0198c0f
  25. 25 May, 2016 2 commits
    • lpy's avatar
      Revert of Create libsampler as V8 sampler library. (patchset #24 id:460001 of... · 636f1e8e
      lpy authored
      Revert of Create libsampler as V8 sampler library. (patchset #24 id:460001 of https://codereview.chromium.org/1922303002/ )
      
      Reason for revert:
      V8 Linux64 TSAN failure because ThreadSanitizer indicated data race.
      
      Original issue's description:
      > Create libsampler as V8 sampler library.
      >
      > This patch does five things:
      >
      > 1. Extracts sampler as libsampler to provide sampling functionality support.
      > 2. Makes SampleStack virtual so embedders can override the behaviour of sample collecting.
      > 3. Removes sampler.[h|cc].
      > 4. Moves sampling thread into log.cc as workaround to keep the --prof functionality.
      > 5. Creates SamplerManager to manage the relationship between samplers and threads.
      >
      > The reason we port hashmap.h is that in debug mode, STL containers are using
      > mutexes from a mutex pool, which may lead to deadlock when using asynchronously
      > signal handler.
      >
      > Currently libsampler is used in V8 temporarily.
      >
      > BUG=v8:4789
      > LOG=n
      >
      > Committed: https://crrev.com/06cc9b7c176a6223971deaa9fbcafe1a05058c7b
      > Cr-Commit-Position: refs/heads/master@{#36527}
      
      TBR=jochen@chromium.org,alph@chromium.org,fmeawad@chromium.org,yangguo@chromium.org
      # Skipping CQ checks because original CL landed less than 1 days ago.
      NOPRESUBMIT=true
      NOTREECHECKS=true
      NOTRY=true
      BUG=v8:4789
      
      Review-Url: https://codereview.chromium.org/2000323007
      Cr-Commit-Position: refs/heads/master@{#36529}
      636f1e8e
    • lpy's avatar
      Create libsampler as V8 sampler library. · 06cc9b7c
      lpy authored
      This patch does five things:
      
      1. Extracts sampler as libsampler to provide sampling functionality support.
      2. Makes SampleStack virtual so embedders can override the behaviour of sample collecting.
      3. Removes sampler.[h|cc].
      4. Moves sampling thread into log.cc as workaround to keep the --prof functionality.
      5. Creates SamplerManager to manage the relationship between samplers and threads.
      
      The reason we port hashmap.h is that in debug mode, STL containers are using
      mutexes from a mutex pool, which may lead to deadlock when using asynchronously
      signal handler.
      
      Currently libsampler is used in V8 temporarily.
      
      BUG=v8:4789
      LOG=n
      
      Review-Url: https://codereview.chromium.org/1922303002
      Cr-Commit-Position: refs/heads/master@{#36527}
      06cc9b7c