V4L/DVB: lgs8gxx: Use shifts rather than multiply/divide when possible
authorDavid Howells <dhowells@redhat.com>
Fri, 11 Dec 2009 16:11:05 +0000 (13:11 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 16 Dec 2009 11:27:50 +0000 (09:27 -0200)
commit3ab1b9cecdc6540a5b79500b1c10c4362a9cc5f1
treea9234df481a15630ab50f734a8a55db3310633ec
parent5bf583473813530c1bf82051a35fac8d5045f4f7
V4L/DVB: lgs8gxx: Use shifts rather than multiply/divide when possible

If val is a u64, then following:

val *= (u64)1 << 32;
val /= (u64)1 << 32;

should surely be better represented as:

val <<= 32;
val >>= 32;

Especially as, for the division, the compiler might want to actually do a
division:

drivers/built-in.o: In function `lgs8gxx_get_afc_phase':
drivers/media/dvb/frontends/lgs8gxx.c:250: undefined reference to `__udivdi3'

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/frontends/lgs8gxx.c