True, but wasn't my point with "expensive machinery". By that I was referring to
* discovering which instructions are executed (tracking control flow),
* mapping x86 code addresses to translated addresses,
* discovering the shape of the CFG and finding loops,
* purging translations that get invalidated by overwrites (like self-modifying code),
* sprinkling the translated code full of guards so we can make assumptions about the original code
etc. All this is unnecessary for WASM and you can in fact make a quick and dirty one-pass translation for the 1st gear. I don't know, but it seems reasonable that they would keep the same FP->Int semantics as JS, but you rarely do that in non-JS code.
EDIT: fail to make bullets, oh well.