1/* public domain rewrite of memcmp(3) */ 2 3#include "ruby/missing.h" 4#include <stddef.h> 5 6int 7memcmp(const void *s1, const void *s2, size_t len) 8{ 9 register unsigned char *a = (unsigned char*)s1; 10 register unsigned char *b = (unsigned char*)s2; 11 register int tmp; 12 13 for (; len; --len) { 14 if (tmp = *a++ - *b++) 15 return tmp; 16 } 17 return 0; 18} 19