[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <f10ae6f99b20a00bfbce030d28992381f034fdf3.1258181837.git.andre.goddard@gmail.com>
Date: Thu, 3 Dec 2009 12:49:01 -0200
From: André Goddard Rosa <andre.goddard@...il.com>
To: "Andrew Morton" <akpm@...ux-foundation.org>,
"linux list" <linux-kernel@...r.kernel.org>
Cc: André Goddard Rosa <andre.goddard@...il.com>
Subject: [PATCH v5 05/12][resend] vsprintf: reduce code size by avoiding extra check
No functional change, just refactor the code so that it avoid checking
"if (hi)" two times in a sequence, taking advantage of previous check made.
It also reduces code size:
text data bss dec hex filename
15726 0 8 15734 3d76 vsprintf.o (ex lib/lib.a-BEFORE)
15710 0 8 15718 3d66 vsprintf.o (ex lib/lib.a-AFTER)
Signed-off-by: André Goddard Rosa <andre.goddard@...il.com>
Acked-by: Frederic Weisbecker <fweisbec@...il.com>
---
lib/vsprintf.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index d107583..3c83f7b 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -745,8 +745,9 @@ static char *ip6_compressed_string(char *p, const char *addr)
p = pack_hex_byte(p, hi);
else
*p++ = hex_asc_lo(hi);
+ p = pack_hex_byte(p, lo);
}
- if (hi || lo > 0x0f)
+ else if (lo > 0x0f)
p = pack_hex_byte(p, lo);
else
*p++ = hex_asc_lo(lo);
--
1.6.5.2.180.gc5b3e.dirty
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists