]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.c-torture/execute/builtins/lib/memcmp.c
Merge lto branch into trunk.
[thirdparty/gcc.git] / gcc / testsuite / gcc.c-torture / execute / builtins / lib / memcmp.c
CommitLineData
58e292f1 1extern void abort(void);
a61d05be 2extern int inside_main;
3
7bfefa9d 4__attribute__ ((__noinline__))
a61d05be 5int
6memcmp (const void *s1, const void *s2, __SIZE_TYPE__ len)
7{
8 const unsigned char *sp1, *sp2;
9
10#ifdef __OPTIMIZE__
11 if (inside_main)
12 abort ();
13#endif
14
15 sp1 = s1;
16 sp2 = s2;
17 while (len != 0 && *sp1 == *sp2)
18 sp1++, sp2++, len--;
19
20 if (len == 0)
21 return 0;
22 return *sp1 - *sp2;
23}