
Why is x86 ugly? Why is it considered inferior when compared to others? - peter_d_sherman
https://stackoverflow.com/questions/2679882/why-is-x86-ugly-why-is-it-considered-inferior-when-compared-to-others
======
peter_d_sherman
Excerpts:

"The DEC Alpha AXP chip, a MIPS style RISC design, was painfully spartan in
the instructions available, but the instruction set was designed to avoid
inter-instruction implicit register dependencies. There was no hardware-
defined stack register. There was no hardware-defined flags register. Even the
instruction pointer was OS defined - if you wanted to return to the caller,
you had to work out how the caller was going to let you know what address to
return to. This was usually defined by the OS calling convention. On the x86,
though, it's defined by the chip hardware."

[...]

"You don't see those kinds of bursts of performance boosting things in the x86
family tree largely because the x86 instruction set's complexity makes many
kinds of execution optimizations prohibitively expensive if not impossible.
Intel's stroke of genius was in giving up on implementing the x86 instruction
set in hardware anymore - all modern x86 chips are actually RISC cores that to
a certain degree interpret the x86 instructions, translating them into
internal microcode which preserves all the semantics of the original x86
instruction, but allows for a little bit of that RISC out-of-order and other
optimizations over the microcode."

"I've written a lot of x86 assembler and can fully appreciate the convenience
of its CISC roots. But I didn't fully appreciate just how complicated x86 was
until I spent some time writing Alpha AXP assembler. I was gobsmacked by AXP's
simplicity and uniformity. The differences are enormous, and profound."

------
Seenso
IIRC, some of the people thought the dislike of x86 was from RISC-loving
academics, but I don't think that's the case. IIRC, the CISC Motorola 68k ISA
was much better regarded than x86.

------
pmontra
The question and most of the answers are from 2010.

