Yes it would be quite useless to do a multiply by 0 on purpose. But i was 
thinking about cases where you have no control over the inputs values? I 
don't know. In any case, early termination was next on my list. However 
it requires supporting an arbritrary shift distance which will be on the 
critical path and maybe require quite a bit of hardware. We'll see how it 
turns out.

On Fri, August 31, 2007 10:42 pm, Paul Brook said:
>> The other question is, is this even beneficial? I seem to recall that 
>> zeros occur quite commonly. Even in the MIPS ISA, r0 is just a
>> hardwired zero because of this if i remember right... so that is my
>> justification for doing this.
> 
> I'd expect multiplication by zero to be relatively rare. One of the
> advantages of a zero register is that some unary operations can be 
> implemented as a binary operation with a zero operand. e.g. x = -y can
> be implemented as x = 0 - y without requiring an extra instruction.
> 
> Early termination when the high bits are zero (ie. small values) would
> be more useful. I've no idea how hard that is to achieve though.
> 
> Paul
> 
> 

_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)

Reply via email to