Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: Notesfiles $Revision: 1.7.0.5 $; site uiucdcs
Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!inuxc!pur-ee!uiucdcs!seefromline
From: bcase@uiucdcs.Uiuc.ARPA
Newsgroups: net.arch
Subject: Re: better late... (really, fast NS
Message-ID: <27800047@uiucdcs>
Date: Tue, 9-Jul-85 17:58:00 EDT
Article-I.D.: uiucdcs.27800047
Posted: Tue Jul  9 17:58:00 1985
Date-Received: Fri, 12-Jul-85 00:20:01 EDT
References: <5720@utzoo.UUCP>
Lines: 12
Nf-ID: #R:utzoo.UUCP:-572000:uiucdcs:27800047:000:603
Nf-From: uiucdcs.Uiuc.ARPA!bcase    Jul  9 16:58:00 1985


The multiplies associated with indexing/scaling are nearly always
computing the product of a variable and a small constant.  In this
case, a short sequence of shifts and adds will do the trick and 
probably more quickly than a microcoded mutiply (of course, if you
want to throw a parallel mutiplier at it, that is a different
matter).  In addition, if the index calculation is in a loop, then
elimination of the induction variable and strength reduction can
change the mutiply into an add.  In this last case, even a parllel
multiplier will not help you.  Optimizing compilers can do a lot.

    bcase