V8 has a JIT, which is always going to require work to port to a new architecture. But the new-ish TurboFan backend is supposed to have the architecture-dependent parts relatively well factored out[1], so it's not as hard as it might be.
v8 is a JIT compiler. It emits instructions for specific architectures. So even if it's not written in assembly, it has some very architecture specific parts in it.
My only experience porting node was to a specialized ARM system a while ago, so ARM support may have been already built in or things may have changed.
edit: as people have commented, there indeed is a fair amount of arch specific stuff for reference the mips directory https://github.com/v8/v8/tree/master/src/mips64