• Junliang Yan's avatar
    PPC/s390: [builtins] implement RunMicrotasks pump as a code stub · 4bc48c21
    Junliang Yan authored
    Port 52ff3ae4
    
    Original Commit Message:
    
        - Implement RunMicrotasks in CSA to prevent a potentially large number
          of jumps between C++ and JS code while consuming te queue. Appears to
          provide a ~60% speedup in microtask-heavy code, which from limited
          testing appears to scale linearly.
    
          The code-stub microtask pump bails out to the old C++ microtask pump
          if it encounters a CallHandlerInfo microtask, and remains in C++ for
          the remainder of the queue (returning to the JS/stub implementation
          after the bailed out queue is exhausted).
    
        - Add a variation of JSEntryStub which enters the new RunMicrotasks code
          stub.
    
        - Add a new RunMicrotasks helper to Execution, which uses the
          RunMicrotasks entry stub.
    
    R=caitp@igalia.com, joransiu@ca.ibm.com, jbarboza@ca.ibm.com
    BUG=
    LOG=N
    
    Change-Id: Ifa15ca19312bb92758e82d19c3e3fc0a8b908d82
    Reviewed-on: https://chromium-review.googlesource.com/820197Reviewed-by: 's avatarJoran Siu <joransiu@ca.ibm.com>
    Commit-Queue: Junliang Yan <jyan@ca.ibm.com>
    Cr-Commit-Position: refs/heads/master@{#50018}
    4bc48c21
code-stubs-ppc.cc 45.5 KB