Comments
Patch
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@gmx.net>
===================================================================
@@ -56,13 +56,13 @@
while (*ptr && isspace((unsigned char)*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((unsigned char)*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((unsigned char)*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;