Newsgroups: comp.arch Path: utzoo!henry From: henry@zoo.toronto.edu (Henry Spencer) Subject: Re: DEC RISC Architecture? Message-ID: <1990Oct14.003303.19620@zoo.toronto.edu> Organization: U of Toronto Zoology References: <4462@trantor.harris-atd.com> <107038@convex.convex.com> <16034@yunexus.YorkU.CA> <1990Oct12.191024.17856@zoo.toronto.edu> <16138@yunexus.YorkU.CA> Date: Sun, 14 Oct 90 00:33:03 GMT In article <16138@yunexus.YorkU.CA> davecb@yunexus.YorkU.CA (David Collier-Brown) writes: >| (Note that "data formats" includes things like stack frames -- do you >| really want your nice fast RISC to spend half its time emulating the VAX >| calling sequence?) > > I think I can claim that this is a large-scale instance of finding > the right tranformations or right instructions. If it's stereotyped > enough, it is succeptable to transformation, even though it's both > large and pervasive... I'd call it pretty large scale, because you have to deal with all the code's hidden assumptions about data-structure layout if you want to revise the stack-frame design to speed up calls. It's in a different league from what I'd normally think of as instruction choice. >| [rumor] that the NFS code Sun ships is full of >| assumptions that "i++" is an atomic operation, which is true on a >| single-processor 68k but not on most RISCs. > > And that one's a perfect stopper. If such a semantic for the > construct is assumed by a kernel developer, we is in deep do-do... Indeed we is. People within Sun tell me that this particular problem (a) definitely did exist, but (b) has been fixed. Of course, the version Sun has internally, the version it has shipped to suppliers, the versions they are shipping to their customers, and the versions the customers are actually running are four often-different things, so I would not be surprised if this bug is still out in the field in bulk. I've also had various bits of mail about i++ atomicity and |= atomicity assumptions being found in i/o drivers and such during RISC development. The worst part of these bugs is that the interrupt window is very narrow, so they don't necessarily show up quickly. -- "...the i860 is a wonderful source | Henry Spencer at U of Toronto Zoology of thesis topics." --Preston Briggs | henry@zoo.toronto.edu utzoo!henry