Messages in this thread Patch in this message | | | From | Rasmus Villemoes <> | Subject | [PATCH] drivers/sbus/char: Micro-optimization in display7seg.c | Date | Thu, 19 Jun 2014 14:31:52 +0200 |
| |
Flipping a bit doesn't need four lines of code; and gcc seems to actually generate two branches.
Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> --- drivers/sbus/char/display7seg.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/sbus/char/display7seg.c b/drivers/sbus/char/display7seg.c index 7c71e7b..3221dff 100644 --- a/drivers/sbus/char/display7seg.c +++ b/drivers/sbus/char/display7seg.c @@ -143,10 +143,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; } -- 1.9.2
| |