Yes, but even if you're using Asm.js, you should maybe still think about NaCl as an interesting potential option.
One reason is that you typically don't write Asm.js code by hand. You could, but you'd probably be bad at it (kind of like assembly language -- compilers just know it better than you do). What you typically do is write your code in C/C++, then "compile" it into Asm.js using a tool like Emscripten.
Thus, if you're writing your code in C/C++ anyway, it wouldn't be such a stretch to take that same code and also compile it into a native binary module for those clients that support NaCl (which so far means only Chrome, and it looks like it's going to stay that way).
In other words, you don't need to look at it as an either/or choice. It's perfectly feasible to use both tools, possibly without much additional development overhead.