1. 06 Dec, 2018 1 commit
    • tzik's avatar
      Replace %RunMicrotasks with %PerformMicrotaskCheckpoint · 07011cc4
      tzik authored
      This replaces Runtime_RunMicrotasks with Runtime_PerformMicrotaskCheckpoint.
      
      RunMicrotasks forcibly runs Microtasks even when the microtasks are suppressed,
      and may causes nested Microtasks in a problematic way. E.g. that confuses
      v8::MicrotasksScope::IsRunningMicrotasks() and GetEnteredOrMicrotaskContext().
      
      OTOH, PerformMicrotaskCheckpoint() doesn't run cause the failure as it
      respects the microtask suppressions.
      
      As all existing tests don't call RunMicrotasks() in the suppressed situation
      (like Promise.resolve().then(()=>{%RunMicrotasks();})), this change should
      not affect to these tests.
      
      Change-Id: Ib043a0cc8e482e022d375084d65ea98a6f54ef3d
      Reviewed-on: https://chromium-review.googlesource.com/c/1360095Reviewed-by: 's avatarYang Guo <yangguo@chromium.org>
      Commit-Queue: Taiju Tsuiki <tzik@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#58068}
      07011cc4
  2. 20 Dec, 2016 1 commit
    • jgruber's avatar
      [js-perf-test] Add a basic async-await microbenchmark · 9feefafa
      jgruber authored
      These benchmarks are intended to compare the overhead of async-await vs.
      a naive promise implementation vs. the babel async-await transformation.
      The functions in the benchmark don't do any work themselves, so results
      should reflect only overhead of the chosen implementation.
      
      Current numbers on my local machine (higher is better):
      
      BaselineES2017-AsyncAwait(Score): 2006
      BaselineNaivePromises-AsyncAwait(Score): 7470
      Native-AsyncAwait(Score): 3640
      
      BUG=v8:5639
      
      Review-Url: https://codereview.chromium.org/2577393002
      Cr-Commit-Position: refs/heads/master@{#41860}
      9feefafa