Comment Re:ARM == Hype (Score 1) 285
Thanks for your substantial reply, as well as the link to the Alpha Architecture Handbook. I'll look into it.
Although I'm not a hardware designer, myself, I've co-authored the extASM ARM assembler, currently being updated to ARMv7. The assembler is itself written in ARM assembly, about 20,000 lines of it, so I've got quite a bit of experience with writing ARM code.
I understand what you mean about the shifter and the page tables, now.
As you allude to, the designers of the ARM weren't stupid when they made this design, but as it often is, what may have been an advantage (or an efficient design) at one time, may turn into a disadvantage (or contributing to less efficiency) later, as the field evolves.
One such thing I was recently made aware of is the SWI (system call) instruction. At the time, it was a reasonable design: Encode the system call number in the instruction (thereby saving a move instruction before the call). At the time, there were no instruction/data caches. However, with today's separate instruction/data caches, using the SWI instruction leads to "polluting" the data cache, as it needs to read the instruction (thus fill a data cache line) to find out the system call number.
Also, historical reasons and market factors may contribute to making a design that was once simple and clean/elegant, become rather more complex and loose some of its elegance. In the ARM's case, it has become rather a lot more complex (I know that all too well, having to implement all of its instructions in extASM...
Regards,
Terje