🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #20974

Re: Bandwidth and RISC vs. CISC

#20974
From: Stuart Gathman
Date: Mon, 01 May 1989 16:46
21 lines
1506 bytes
The GCC asm() interface gives an excellent interface to special CISC
instructions.  One can code any arbitrary assembler code with register and
address substitutions for C variables, specify input, output, and scratch
registers, and put it in a macro to disguise it as a function call (or
put it in an inline function).

Portability is maintained by proper design of the function interface, machines
that don't have a similar instruction can use a real function.

Turbo C has an inline assembler capability with similar features.  It is
geared specifically to '86 code, however.  Instead of specifying the register
environment in the asm, the compiler knows which instructions affect which
registers.  Automatic register & address substitution for C variables is
available here also.

With this capability, the only difference between custom inline CISC
instructions and standard operators is syntactic.  Using C++ can help that also.
-- 
Stuart D. Gathman	<stuart@bms-at.uucp>
			<..!{vrdxhq|daitc}!bms-at!stuart>
Technical Details
Message-ID: <159@bms-at.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!haven!vrdxhq!bms-at!stuart
References: <38853@bbn.COM> <423@bnr-fos.UUCP> <288@ctycal.UUCP> <3990@ficc.uu.net>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!haven!vrdxhq!bms-at!stuart
From: stuart@bms-at.UUCP (Stuart Gathman)
Newsgroups: comp.arch
Subject: Re: Bandwidth and RISC vs. CISC
Summary: Ideal HLL for CISC processors: GCC, Turbo C
Message-ID: <159@bms-at.UUCP>
Date: 1 May 89 16:46:04 GMT
References: <38853@bbn.COM> <423@bnr-fos.UUCP> <288@ctycal.UUCP> <3990@ficc.uu.net>
Organization: Business Management Systems, Inc., Fairfax, VA
Lines: 21