View Single Post
  #22  
Old August 30th 10, 12:52 AM posted to comp.sys.ibm.pc.hardware.chips
Brett Davis
external usenet poster
 
Posts: 22
Default ISA does not matter

In article q3Zco.13329$Sr7.6946@hurricane,
Owen Shepherd wrote:

Brett Davis wrote:

If PowerPC was just another RISC chip this could not have happened.
Being late to the market with a me-too product would not have worked.
PowerPC dominates because of AltiVec and the bitfield extract and
other cool useful instructions that give good performance and good
inner loop code density.

Programmers LIKE PowerPC, whereas MIPS and ARM are tolerated.
(This is a major reason PowerPC dominates, pity the fool manager
that picks MIPS and cant find good programmers to work for him.)

ISA does matter, just not the way you think it does.

Brett - Actually working on ARM code right now.


My general observation of talking to PowerPC developers has been:
1. IBM couldn't have made a more impenetrable assembly language. Seriously
guys, never heard of register prefixes? Apple's variation was so much
nicer.


Most people program in C, so you only see this when debugging and you
pop open the disassembly window, which I always have open.
Seriously gibberish opcodes, have to look them up in the book and growl.
Generally its a constant that the compiler tuned into a bit field extract.
Which saved an instruction, or saved a register, making me happy.

Then I look at the MIPS port, man that MIPS compiler is a stinking pile
of do do. Way more instructions issued, and issued in a brain damaged
way that hurts performance. A 15 year old compiler that was never good
in its heyday, and has not been improved.

The whole idea of RISC is simpler faster more efficient compilers.
The MIPS crowd has dropped the ball (financial reasons) and as a result
have crippled their chances in the market to sell MIPS chips.

Maybe there is some $2000 compiler for MIPS that does not suck, we
used whatever we were given, which was whatever was cheap.
This is a classic give away the razor handle to sell the blades situation.
Letting people use crap compiler, resulting in people thinking your
product sucks, is just a bad idea.

2. Why are the bits numbered back to front? Way to confuse the hell out of
people.


For operations on a monochrome bitmapped display IBM is ordering the bits
in the correct order. Just because this is opposite of everyone else and
what you were taught does not mean it wrong.

On the other hand, ARM development has been a rather pleasant experience; to
each his own