However, you don't seem to understand what asm.js is.
Asm.js is not JavaScript.
Syntactically it does look like JavaScript but it's really bytecode emulating CPU in JavaScript clothing.
As such asm.js is used to execute C code bases cross-compiled to asm.js with a tool like emscripten.
There is no such thing as "compiling JavaScript to asm.js" because there's no point. V8 (and every other modern JS VM) already compiles JavaScript to optimized CPU instruction set so it doesn't make sense to do JavaScript -> asm.js -> CPU instructions set.
To re-iterate: asm.js targets the same use case as p(nacl) i.e. compiling C/C++ code bases to something that can be executed in the web.
See http://mrale.ph/blog/2013/03/28/why-asmjs-bothers-me.html for more info.