Impractical; each x86 instruction would compile to an entire subroutine. The problem is that you have to handle every case which might occur, regardless of whether or not it will occur in practice.
E.g. every memory access would have to emulate the x86 segmentation model, even though the segments will just provide a flat address space
99.999% of the time.Every memory access will have to allow for unaligned access, even though
99% of accesses will be aligned.If you want an ARM-based desktop system, run Linux. Ubuntu, Slackware and Gentoo all have official support for ARM-based systems.