v8-native-prototype TurboFan 解码器开源项目

我要开发同款
匿名用户2015年06月25日
77阅读

技术信息

开源地址
https://github.com/WebAssembly/v8-native-prototype
授权协议
BSD

作品详情

v8-ative-prototype是用于TurboFa的原型本地解码器。

示例代码:

void TestWasmDecodigSpeed() {  byte code[] = {kStmtSetLocal, 0, kExprIt32Add, kExprGetLocal, 0,                 kExprIt8Cost, 5};  Zoe zoe;  LR_WasmDecoder decoder(&zoe, ullptr);  FuctioSig::Builder builder(&zoe, 1, 1);  builder.AddRetur(kAstIt32);  builder.AddParam(kAstIt32);  FuctioEv ev = {ullptr, builder.Build(), 0, 0, 0, 0};  // Make COUNT copies of the above code.  cost it TRIALS = 10;  cost it COUNT = (4 * 1024) / sizeof(code);  cost it TOTAL = COUNT * sizeof(code);  byte* big_code = reiterpret_cast<byte*>(zoe.New(TOTAL));  for (it i = 0; i < COUNT; i++) {    memcpy(big_code + i * sizeof(code), code, sizeof(code));  }  for (it i = 0; i < TRIALS; i++) {    base::ElapsedTimer timer;    timer.Start();    Result result = decoder.Decode(&ev, big_code, big_code + TOTAL);    it64_t us = timer.Elapsed().IMicrosecods();    OFStream os(stdout);    double rate = ((TOTAL * 1000000.0) / us) / 1048576;    os << result << TOTAL << " bytes, us: " << us << " (" << rate << " MB/sec)"       << std::edl;  }}

功能介绍

v8-native-prototype 是用于 TurboFan 的原型本地解码器。 示例代码:
void TestWasmDecodingSpeed() {
  byte code[] ...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论