Possible Duplicate:
Is shifting bits faster than multiplying and dividing in Java? .NET?
To double a value, is <<1 more performant than *2 in modern languages?
I’m particularly interested in Java and C#. Does having optimization turned on at compile-time change things?
If any compiler written in the last 20 years generates less efficient code for
*2than for<<1, you should stay very far away from it.