I examined the ARM-1's barrel shifter on the die [1]. It takes roughly 10% of the chip so it's a fairly hefty investment.
8-bit chips probably didn't have a barrel shifter because they were very limited in functionality. (I didn't realize how limited until I looked at mainframes of the time.) Functions like multiply and divide are more useful than barrel shifting, and those were missing too. Barrel shifting is sort of a frill. As for the Z80, it was very, very tight on space so it's not surprising the barrel shifter was lacking. It didn't even have an 8-bit ALU; it had a 4-bit ALU that was used twice per operation.
> I examined the ARM-1's barrel shifter on the die. It takes roughly 10% of the chip so it's a fairly hefty investment.
> Functions like multiply and divide are more useful than barrel shifting, and those were missing too.
My thought was that the lack of multiplier/divider can be somewhat compensated by adding a cheaper 8-bit barrel shifter instead. So according to your analysis, apparently even that didn't make economic sense for a 8-bit chip.
Thanks a lot for giving an authoritative assessment, Ken!
8-bit chips probably didn't have a barrel shifter because they were very limited in functionality. (I didn't realize how limited until I looked at mainframes of the time.) Functions like multiply and divide are more useful than barrel shifting, and those were missing too. Barrel shifting is sort of a frill. As for the Z80, it was very, very tight on space so it's not surprising the barrel shifter was lacking. It didn't even have an 8-bit ALU; it had a 4-bit ALU that was used twice per operation.
[1] http://www.righto.com/2015/12/reverse-engineering-arm1-ances...