• zhengxing.li's avatar
    X87: [runtime] Introduce dedicated JSBoundFunction to represent bound functions. · 37d1dd82
    zhengxing.li authored
      port 97def807 (r33044)
    
      original commit message:
      According to the ES2015 specification, bound functions are exotic
      objects, and thus don't need to be implemented as JSFunctions. So
      we introduce a new JSBoundFunction type to represent bound functions
      and make them optimizable. This already improves the performance of
      calling or constructing bound functions by 10-100x depending on the
      use case because we avoid the crazy dance between JavaScript and C++
      that was implemented in v8natives.js previously.
    
      There's still room for improvement in the performance of actually
      creating bound functions, which is also relevant in practice, but
      we already have a plan how to accomplish that later.
    
      The mips/mips64 ports were contributed by akos.palfi@imgtec.com.
    
    BUG=
    
    Review URL: https://codereview.chromium.org/1548253002
    
    Cr-Commit-Position: refs/heads/master@{#33046}
    37d1dd82
code-stubs-x87.cc 188 KB