Skip to content

alexanderGugel/validate-asm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deprecated. This module is now part of the official asm.js repository.

Codeship Status for alexanderGugel/validate-asm

validate-asm

Like JSLint, but for asm.js

example

Let's say you have an asm module called GeometricMean.js:

function GeometricMean(stdlib, foreign, buffer) {
  "use asm";

  var exp = stdlib.Math.exp;
  var log = stdlib.Math.log;
  var values = new stdlib.Float64Array(buffer);

  function logSum(start, end) {
    start = start|0;
    end = end|0;

    var sum = 0.0, p = 0, q = 0;

    // asm.js forces byte addressing of the heap by requiring shifting by 3
    for (p = start << 3, q = end << 3; (p|0) < (q|0); p = (p + 8)|0) {
      sum = sum + +log(values[p>>3]);
    }

    return +sum;
  }

  function geometricMean(start, end) {
    start = start|0;
    end = end|0;

    return +exp(+logSum(start, end) / +((end - start)|0));
  }

  return { geometricMean: geometricMean };
}

module.exports = GeometricMean;

In order to validate it, simply run

validate-asm GeometricMean.js

That's it!

install

With npm do:

npm install -g validate-asm

usage

Usage: validate-asm [entry files] {OPTIONS}

Standard Options:

    --help, -h  Show this message

Specify a parameter.

credits

license

ISC

About

💀 [MERGED UPSTREAM] Like JSLint, but for asm.js

Resources

License

Stars

Watchers

Forks

Packages

No packages published