asm.js使用示例代码_Javascript教程-查字典教程网
asm.js使用示例代码
asm.js使用示例代码
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:functionmymodule(global,foreign,buffer){"useasm";//----------...

复制代码 代码如下:

function mymodule(global, foreign, buffer) {

"use asm";

// -------------------------------------------------------------------------

// SECTION 1: imports

var H32 = new global.Int32Array(buffer);

var HU32 = new global.Uint32Array(buffer);

var log = foreign.consoleDotLog;

// -------------------------------------------------------------------------

// SECTION 2: functions

function f(x, y, z, w) {

// SECTION A: parameter type declarations

x = x|0; // int parameter

y = +y; // double parameter

// SECTION B: function body

log(x|0); // call into FFI -- must force the sign

log(y); // call into FFI -- already know it's a double

x = (x+3)|0; // signed addition

// SECTION C: unconditional return

return ((((x+1)|0)>>>0)/(x|0))>>>0; // compound expression

}

function g() {

g_f = +g_i; // read/write globals

return;

}

function g2() {

return;

}

function h(i, x) {

i = i|0;

x = x|0;

H32[(i&0xffffffff)>>4] = x; // masked by 2^k-1, shifted by byte count

ftable_2[(x-2)&2](); // dynamic call of functions in table 2

}

// -------------------------------------------------------------------------

// SECTION 3: function tables

var ftable_1 = [f];

var ftable_2 = [g, g2]; // all of the same type

// -------------------------------------------------------------------------

// SECTION 4: globals

var g_i = 0; // int global

var g_f = 0.0; // double global

// -------------------------------------------------------------------------

// SECTION 5: exports

return { f_export: f, goop: g };

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类