Not sure of the details but it's an interpreter, so I believe it executes the wasm bytecode using its own VM, so there is overhead, where instead a compiler would generate optimized machine code linked with a wasm runtime for the target platform which can then be executed natively.