Segemented memory addressing makes assembly language a nightmare, so the current situation is that high level language compilers are compiled by other high level compilers, and software doesn't get the asm optimisation it should. Therefore, x86 software gets slower, more bloated and less efficient as time goes on. I compiled HelloWorld.c on visual basic with a fairly basic set of includes in uni and it was 56KB. Combine this inefficiency with the huge instruction decoding time of the x86 and you have a CPU that is propped up only by mounting clock speeds and bigger coolers. Er, no thanks.
On the other hand, PPC asm is a comparitive breeze. The exe's are big, because it is RISC code and needs more instructions, but its a great deal more efficient. It doesn't have 200 extra instructions no-one ever uses, so the decoding time is measured in picoseconds rather that nanoseconds. PPC is a lot better than x86, period.