1/* Test case for x86-64 preserved registers in dynamic linker. */
2
3#include <stdlib.h>
4#include <string.h>
5#include <emmintrin.h>
6
7__m128i
8audit_test (__m128i x0, __m128i x1, __m128i x2, __m128i x3,
9 __m128i x4, __m128i x5, __m128i x6, __m128i x7)
10{
11 __m128i xmm = _mm_setzero_si128 ();
12
13 if (memcmp (&xmm, &x0, sizeof (xmm))
14 || memcmp (&xmm, &x1, sizeof (xmm))
15 || memcmp (&xmm, &x2, sizeof (xmm))
16 || memcmp (&xmm, &x3, sizeof (xmm))
17 || memcmp (&xmm, &x4, sizeof (xmm))
18 || memcmp (&xmm, &x5, sizeof (xmm))
19 || memcmp (&xmm, &x6, sizeof (xmm))
20 || memcmp (&xmm, &x7, sizeof (xmm)))
21 abort ();
22
23 return xmm;
24}
25

source code of glibc/sysdeps/x86_64/tst-auditmod3a.c