Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!seismo!lll-crg!mordor!sri-spam!ames!ucbcad!ucbvax!decvax!decwrl!pyramid!gould9!scubed!piaget!jc
From: jc@piaget.UUCP (John Cornelius)
Newsgroups: comp.arch
Subject: Re: How does compiled code use the floa
Message-ID: <132@piaget.UUCP>
Date: Thu, 11-Dec-86 12:52:26 EST
Article-I.D.: piaget.132
Posted: Thu Dec 11 12:52:26 1986
Date-Received: Mon, 15-Dec-86 21:17:44 EST
References: <394@houxs.UUCP> <165100001@uiucdcsb>
Reply-To: jc@piaget.UUCP (John Cornelius, System Manager)
Organization: International Widget
Lines: 20

In article <165100001@uiucdcsb> robison@uiucdcsb.cs.uiuc.edu writes:
>
>Code generation emits a call to a floating point library.
>If the FP hardware is available, the library routine changes 
>(at run time) the call instruction to the equivalent hardware 
>instruction.  This way you pay for the subroutine linkage only 
>on the first call. The disadvantage is that self-modifying code 
>is not allowed on some architectures.
>

I wrote microcoded floating point for a machine that is now (mercifully)
out of production that did that.  The floating point library actally
executed an instruction that replaced the call to the library with a
real floating point instruction.  That was 15 years ago and I've become
somewhat wiser now.  In the meantime, the microcode wound up in several
hundred Meta-IVs, many of which are still floating around out there.

-- 
John Cornelius
(...!sdcsvax!piaget!jc)