wassail (статический анализатор Webassembly и библиотека проверки) - это инструментарий для выполнения как легкого, так и тяжелого статического анализа модулей Webassembly.
Части Wassail можно запустить в вашем веб -браузере здесь.
Установите Opam
Запустите opam install core_unix
Запустите opam install .
Wassail может выполнять ряд задач по модулям Webassembly, как в их .wat представлении ( .wasm
$ wassail imports foo.wasm
0 time i32 - > i32
1 ctime i32 - > i32
2 roundf f32 - > f32
...$ wassail exports foo.wasm
11563 atof i32 - > f64
11586 strlen i32 - > i32
11483 fopen i32, i32 - > i32
...Размеры секций сообщаются в байтах.
$ wassail sizes foo.wasm
1962 type
8724 import
13120 func
0 table
0 memory
23 global
1316 export
0 start
9480 elem
2063620 code
507825 data Чтобы сгенерировать график вызова для модуля foo.dot :
$ wassail callgraph benchmarks/benchmarksgame/fankuchredux.wat foo.dotВыходной график:

Вы можете сгенерировать один CFG, например, для создания CFG функции 1 из файла foo.wat в foo.dot :
$ wassail cfg foo.wasm 1 foo.dotИли вы можете генерировать все CFG в данном каталоге:
$ wassail cfgs foo.wat out/Пример вывода:

Взносы приветствуются! Wassail лицензирован в условиях лицензии GPLV3.0 с некоммерческим пунктом использования.
$ make test Вы можете получить доступ к веб -интерфейсу здесь или собрать его для себя следующим образом:
$ opam install js_of_ocaml js_of_ocaml-ppx
$ make js
$ open js/index.htmlВ следующих публикациях используется Wassail: