История изменений
Исправление backbone, (текущая версия) :
Убейте, не вижу:
18 #include <string.h>
19 #include <memcopy.h>
20
21 #undef strcmp
22
23 /* Compare S1 and S2, returning less than, equal to or
24 greater than zero if S1 is lexicographically less than,
25 equal to or greater than S2. */
26 int
27 strcmp (p1, p2)
28 const char *p1;
29 const char *p2;
30 {
31 const unsigned char *s1 = (const unsigned char *) p1;
32 const unsigned char *s2 = (const unsigned char *) p2;
33 unsigned char c1, c2;
34
35 do
36 {
37 c1 = (unsigned char) *s1++;
38 c2 = (unsigned char) *s2++;
39 if (c1 == '\0')
40 return c1 - c2;
41 }
42 while (c1 == c2);
43
44 return c1 - c2;
45 }
46 libc_hidden_builtin_def (strcmp)
Up. Вижу, sysdeps/x86_64/multiarch/strcmp-sse42.S, спасибо.
Исправление backbone, :
Убейте, не вижу:
18 #include <string.h>
19 #include <memcopy.h>
20
21 #undef strcmp
22
23 /* Compare S1 and S2, returning less than, equal to or
24 greater than zero if S1 is lexicographically less than,
25 equal to or greater than S2. */
26 int
27 strcmp (p1, p2)
28 const char *p1;
29 const char *p2;
30 {
31 const unsigned char *s1 = (const unsigned char *) p1;
32 const unsigned char *s2 = (const unsigned char *) p2;
33 unsigned char c1, c2;
34
35 do
36 {
37 c1 = (unsigned char) *s1++;
38 c2 = (unsigned char) *s2++;
39 if (c1 == '\0')
40 return c1 - c2;
41 }
42 while (c1 == c2);
43
44 return c1 - c2;
45 }
46 libc_hidden_builtin_def (strcmp)
Исправление backbone, :
Убейте, не вижу:
18 #include <string.h>
19 #include <memcopy.h>
20
21 #undef strcmp
22
23 /* Compare S1 and S2, returning less than, equal to or
24 greater than zero if S1 is lexicographically less than,
25 equal to or greater than S2. */
26 int
27 strcmp (p1, p2)
28 const char *p1;
29 const char *p2;
30 {
31 const unsigned char *s1 = (const unsigned char *) p1;
32 const unsigned char *s2 = (const unsigned char *) p2;
33 unsigned char c1, c2;
34
35 do
36 {
37 c1 = (unsigned char) *s1++;
38 c2 = (unsigned char) *s2++;
39 if (c1 == '\0')
40 return c1 - c2;
41 }
42 while (c1 == c2);
43
44 return c1 - c2;
45 }
46 libc_hidden_builtin_def (strcmp)
Исходная версия backbone, :
Убейте, не вижу:
18 #include <string.h>
19 #include <memcopy.h>
20
21 #undef strcmp
22
23 /* Compare S1 and S2, returning less than, equal to or
24 greater than zero if S1 is lexicographically less than,
25 equal to or greater than S2. */
26 int
27 strcmp (p1, p2)
28 const char *p1;
29 const char *p2;
30 {
31 const unsigned char *s1 = (const unsigned char *) p1;
32 const unsigned char *s2 = (const unsigned char *) p2;
33 unsigned char c1, c2;
34
35 do
36 {
37 c1 = (unsigned char) *s1++;
38 c2 = (unsigned char) *s2++;
39 if (c1 == '\0')
40 return c1 - c2;
41 }
42 while (c1 == c2);
43
44 return c1 - c2;
45 }
46 libc_hidden_builtin_def (strcmp)