[flashrom] [PATCH] Use strlen for const strings

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Thu Sep 30 02:41:15 CEST 2010


Replace sizeof("string")-1 with strlen("string")

We want to avoid calls to strlen at runtime if the string is already
known at compile time.
Turns out that gcc and clang will recognize constant strings and compute
the strlen result already at compile time, so trickery with sizeof only
reduces readability but does not improve the code.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>

Index: flashrom-const_strlen/processor_enable.c
===================================================================
--- flashrom-const_strlen/processor_enable.c	(Revision 1183)
+++ flashrom-const_strlen/processor_enable.c	(Arbeitskopie)
@@ -56,13 +56,13 @@
 		while (*ptr && isspace(*ptr))
 			ptr++;
 		/* "cpu" part appears only with some Linux versions.  */
-		if (strncmp(ptr, "cpu", sizeof("cpu") - 1) == 0)
-			ptr += sizeof("cpu") - 1;
+		if (strncmp(ptr, "cpu", strlen("cpu")) == 0)
+			ptr += strlen("cpu");
 		while (*ptr && isspace(*ptr))
 			ptr++;
-		if (strncmp(ptr, "model", sizeof("model") - 1) != 0)
+		if (strncmp(ptr, "model", strlen("model")) != 0)
 			continue;
-		ptr += sizeof("model") - 1;
+		ptr += strlen("model");
 		while (*ptr && isspace(*ptr))
 			ptr++;
 		if (*ptr != ':')
@@ -72,9 +72,9 @@
 			ptr++;
 		fclose(cpuinfo);
 		return (strncmp(ptr, "ICT Loongson-2 V0.3",
-				sizeof("ICT Loongson-2 V0.3") - 1) == 0)
+				strlen("ICT Loongson-2 V0.3")) == 0)
 		    || (strncmp(ptr, "Godson2 V0.3  FPU V0.1",
-				sizeof("Godson2 V0.3  FPU V0.1") - 1) == 0);
+				strlen("Godson2 V0.3  FPU V0.1")) == 0);
 	}
 	fclose(cpuinfo);
 	return 0;


-- 
http://www.hailfinger.org/





More information about the flashrom mailing list