V8 JavaScript mühərrikinin tərtibatçıları
Dekompilyator
Məsələn, wasm-də tərtib edilmiş orijinal C funksiyası
typedef struct { float x, y, z; } vec3;
float nöqtə (const vec3 *a, const vec3 *b) {
a->x * b->x + qaytarın
a->y * b->y +
a->z * b->z;
}
wasm-decompile yardım proqramı tərəfindən psevdo-dilə dekompilyasiya ediləcək
funksiya nöqtəsi(a:{ a:float, b:float, c:float},
b:{ a:float, b:float, c:float}):float {
aa * ba + ab * bb + ac * bc qaytarın
}
mətn formatına çevrilmə isə ".wat" belə görünür
(func $nöqtə (tip 0) (param i32 i32) (nəticə f32)
(f32.əlavə
(f32.əlavə
(f32.mul
(f32.load
(local.get 0))
(f32.load
(local.get 1)))
(f32.mul
(f32.load ofset=4
(local.get 0))
(f32.load ofset=4
(local.get 1))
(f32.mul
(f32.load ofset=8
(local.get 0))
(f32.load ofset=8
(local.get 1))))))
Mənbə: opennet.ru