Some clarification: the .js file which is generated for wasm compile targets is not asm.js, it's regular Javascript and this is (mostly) needed so that the
wasm (or asm.js) code can talk to the HTML5 APIs.
The ccall/cwrarp functions are part of the interop-code which simplifies calling from regular Javascript code into WebAssembly *or* asm.js code.
So I think it's correct to say that ccall/cwrap "belongs to" the Javascript code that's generated during compilation, but not to wasm or asm.js.