Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a11d2b64 authored by André Goddard Rosa's avatar André Goddard Rosa Committed by Linus Torvalds
Browse files

lib/string.c: simplify stricmp()



Removes 32 bytes on core2 with gcc 4.4.1:
   text    data     bss     dec     hex filename
   3196       0       0    3196     c7c lib/string-BEFORE.o
   3164       0       0    3164     c5c lib/string-AFTER.o

Signed-off-by: default avatarAndré Goddard Rosa <andre.goddard@gmail.com>
Cc: Joe Perches <joe@perches.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8a6e2535
Loading
Loading
Loading
Loading
+15 −19
Original line number Diff line number Diff line
@@ -36,16 +36,13 @@ int strnicmp(const char *s1, const char *s2, size_t len)
	/* Yes, Virginia, it had better be unsigned */
	unsigned char c1, c2;

	c1 = c2 = 0;
	if (len) {
	if (!len)
		return 0;

	do {
			c1 = *s1;
			c2 = *s2;
			s1++;
			s2++;
			if (!c1)
				break;
			if (!c2)
		c1 = *s1++;
		c2 = *s2++;
		if (!c1 || !c2)
			break;
		if (c1 == c2)
			continue;
@@ -54,7 +51,6 @@ int strnicmp(const char *s1, const char *s2, size_t len)
		if (c1 != c2)
			break;
	} while (--len);
	}
	return (int)c1 - (int)c2;
}
EXPORT_SYMBOL(strnicmp);