I can file a bug so that the OdinMonkey related discussion isn't happening here. But I think there are three things one has to keep in mind:
1) Whether or whether not a particular implementation will penalize non tail-call performance (which shouldn't be the case if done properly), any asm.js compile will eventually have to support PTC (when allowed by the asm.js language subset) because a general ES6 will have to.
2) Optimizing pseudo tail calls like
return +f() by just one engine wouldn't help application programmers/compiler writers a lot as a ES6-compliant implementation does not have to do a tail call here, so they can't rely on it.
3) The most simple cases of proper tail calls like self-recursion or mutual recursion are not very interesting for compilers targeting asm.js as these use cases can easily be rewritten in an imperative, non-recursive way. Being able to output a form of continuation passing style would, however, be very helpful for compilers or even byte-code interpreters.