Re: * 4 converted to << 2 for networking code

Jamie Lokier (lk@tantalophile.demon.co.uk)
Wed, 10 Jan 2001 17:23:33 +0100


Mike Harrold wrote:
> Be careful. *4 is not a simple <<2 substitution (by the compiler) if
> the variable is signed. *4 translates to 3 instructions (on x86) if
> it's an int.

I think you mean /4 is not the same as >>2 if the variable is signed.

In general, non-widening multiplies give the same result for signed and
unsigned variables.

-- Jamie
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/