xref: /dflybsd-src/contrib/gcc-4.7/libgcc/memcmp.c (revision 04febcfb30580676d3e95f58a16c5137ee478b32)
1*e4b17023SJohn Marino /* Public domain.  */
2*e4b17023SJohn Marino #include <stddef.h>
3*e4b17023SJohn Marino 
4*e4b17023SJohn Marino int
memcmp(const void * str1,const void * str2,size_t count)5*e4b17023SJohn Marino memcmp (const void *str1, const void *str2, size_t count)
6*e4b17023SJohn Marino {
7*e4b17023SJohn Marino   const unsigned char *s1 = str1;
8*e4b17023SJohn Marino   const unsigned char *s2 = str2;
9*e4b17023SJohn Marino 
10*e4b17023SJohn Marino   while (count-- > 0)
11*e4b17023SJohn Marino     {
12*e4b17023SJohn Marino       if (*s1++ != *s2++)
13*e4b17023SJohn Marino 	  return s1[-1] < s2[-1] ? -1 : 1;
14*e4b17023SJohn Marino     }
15*e4b17023SJohn Marino   return 0;
16*e4b17023SJohn Marino }
17