From: Rasmus Villemoes Date: Thu, 19 Jun 2014 12:31:52 +0000 (+0200) Subject: drivers/sbus/char: Micro-optimization in display7seg.c X-Git-Tag: v3.17-rc1~105^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=54dcf0ceb8a21a898cd436617483e5646f2edcc6;p=thirdparty%2Fkernel%2Flinux.git drivers/sbus/char: Micro-optimization in display7seg.c Flipping a bit doesn't need four lines of code; and gcc seems to actually generate two branches. Signed-off-by: Rasmus Villemoes Signed-off-by: David S. Miller --- diff --git a/drivers/sbus/char/display7seg.c b/drivers/sbus/char/display7seg.c index b48899ce85066..2b0ce7c350ee6 100644 --- a/drivers/sbus/char/display7seg.c +++ b/drivers/sbus/char/display7seg.c @@ -144,10 +144,7 @@ static long d7s_ioctl(struct file *file, unsigned int cmd, unsigned long arg) case D7SIOCTM: /* toggle device mode-- flip display orientation */ - if (regs & D7S_FLIP) - regs &= ~D7S_FLIP; - else - regs |= D7S_FLIP; + regs ^= D7S_FLIP; writeb(regs, p->regs); break; }