🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #3343

Re: Integer Multiply/Divide on Sparc

#3343
From: John Mashey
Date: Sat, 13 Jan 1990 22:22
49 lines
2805 bytes
In article <1253@otc.otca.oz> gregw@hls0.oz.au writes:

>Basicly it has to be in the ABI or it might as well not be in the machine.
>That is if this ABI thing gets off the ground, which it will never do if
>every so often a new instruction/co-processor is added.

Well, let us observe that:
	a) Most architecture families have added user-visible instructions
	over time, haven't they:
	S/360 -> S/370 -> etc
	68000->68010->68020
	8086->80286->80386->80486
	for example.
	b) For microprocessors, there are PLENTY of oppurtunities to use
	new things while still retatining backwards binary compatibility,
	like:
		use them in the kernel [50% of your cycles, often....]
		(as khb mentions) shared libraries
		kernel emulation of instructions
		translation [remember that people often translate RISC
		instructions on the fly, becasue it's epseiclaly easy]
	and finally:
	c) Many microprocessors are also used in embedded control, where
	ABI's are mostly irrelevant.
	d) Finally, some programs are ONLY compiled and run on local
	machines, and if somebody wants to compile with appropriate
	flags, so be it.  [After all, consider the history of floating
	point accelerators and Sun & elsewhere, and with Weitek chips that
	go in place of 80387s, etc, etc].

Clearly, one wants to avoid gratuitous changes, and too many different
versions of things, but it is certainly a fact of life that:
	a) at any give time, you may not have enough silicon to do everything
	you'd like to.
	b) Successive generations will almost always have some differences
	relative to the kernel.
	c) And finally, as families evolve, the optimal code generation
	may well change from machine to machine anyway, even if they're
	binary compatible in both directions.  This effect has been seen for
	a long time on S/360.... and VAXen, and 386vs486, etc ,etc.

Anyway, let's observe that what's IMPORTANT is getting enough volume
on anything to make it interesting.... the fact that some 386s run MSDOS,
and some run UNIX, and some run OS/2 doesn't stop people from buying them.
-- 
-john mashey	DISCLAIMER: <generic disclaimer, I speak for me only, etc>
UUCP: 	{ames,decwrl,prls,pyramid}!mips!mash  OR  mash@mips.com
DDD:  	408-991-0253 or 408-720-1700, x253
USPS: 	MIPS Computer Systems, 930 E. Arques, Sunnyvale, CA 94086
Technical Details
Message-ID: <34461@mips.mips.COM>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!mailrus!ames!vsi1!zorch!ardent!mips!winchester!mash
References: <8840005@hpfcso.HP.COM> <1249@otc.otca.oz> <5837@orca.wv.tek.com> <1253@otc.otca.oz>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!mailrus!ames!vsi1!zorch!ardent!mips!winchester!mash
From: mash@mips.COM (John Mashey)
Newsgroups: comp.arch
Subject: Re: Integer Multiply/Divide on Sparc
Message-ID: <34461@mips.mips.COM>
Date: 13 Jan 90 22:22:39 GMT
References: <8840005@hpfcso.HP.COM> <1249@otc.otca.oz> <5837@orca.wv.tek.com> <1253@otc.otca.oz>
Sender: news@mips.COM
Reply-To: mash@mips.COM (John Mashey)
Organization: MIPS Computer Systems, Inc.
Lines: 49