In article <3070804442620792@naggum.no>, Erik Naggum <erik@naggum.no> wrote:
> Donal K. Fellows wrote:
>> Erik Naggum wrote:
>>> (yes, CPU's _do_ have instructions that C compilers don't use.)
>>
>> I take it you don't work in computer hardware design, and haven't even
>> looked at the field for at least 10 or 15 years, since that last
>> statement is plain wrong. Maybe Vaxes had a "Reverse Bit Shift, Cast
>> to Type and Catch Fire if the Programmer is Stupid" instruction (with
>> mnemonic RBSCTCFPS :^) but technology is substantially advanced since
>> then. RISC CPU's have only the instructions that are measured as
>> being needed in practice, and virtually all new designs are RISC (with
>> the notable distiction of the ix86 line of processors). In future, try
>> to check your facts, and especially those that have been contradicted
>> by people (with good reason) for loads of years...
>
> the SPARC architecture has several instructions that C compilers doesn't
> use, but which are convenient with type-tagged languages. the _fact_ is
> that it has an the instruction, with Sun's recommended mnemonic "taddcctv",
> that is specifically useful in Lisp, and specifically unused in C. other
> instructions are also measurably useful in languages _other_ than C.
What does the instruction do? I've not got a SPARC manual to hand and
I'm quite sure that there are other people reading this thread who are
also unaware of the meaning of that instruction. I must admit that
when I read it, I immediately think of something to do with Closed
Circuit Television - obviously, I'm way off the mark with that! :^)
> C is _not_ the be-all, end-all of programming languages and C is _not_ the
> universal assembler that some would like it to be. that you cannot even
> put this instruction to use without a lot of prior work that you also have
> a hard time doing in C, shows that the SPARC designers thought of more than
> increasingly myopic C crowd.
I was thinking in reference to the ARM, x86 and MIPS architectures
(which I know much better than SPARC). Erik, if you are going to
claim something about the general case, you should have more than one
example lined up to illustrate your case.
> actually, I find it rather astonishing to learn that some people are so
> belligerently ignorant as to believe they can pull off a stunt like the
> above from D. K. Fellows.
Now, now, now. There was no need for that last paragraph. It turns
your argument from one of (reasonable) strength into one of ad hominem
flaming. If you wish your technical points to be taken seriously by
most people on USENET, cutting out this sort of thing is going to be
virutally essential.
BTW, if you can point to a special instruction used in Lisp but not C
in the ARM architecture, I would like to know so that I can pass that
information on to the asynchronous microprocessor design team in my
department. At the moment, their benchmarking is done using standard
pieces of C, and adding a new benchmark which exercises parts of the
silicon that other benchmarks do not reach would be of great utility
to them.
Donal. (still in a good mood)
--
Donal K. Fellows http://r8h.cs.man.ac.uk:8000/ (SAY NO TO COMMERCIAL SPAMS!)
(work) fellowsd@cs.man.ac.uk Dept. Comp. Sci, Univ. Manchester, U.K.
| donal@ugglan.demon.co.uk 6,Randall Place, Heaton, Bradford, U.K. (home)
+-> ++44-161-275-6137 Send correspondence to my office ++44-1274-401017 <-+
|