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
audit_test(__m128i x0,__m128i x1,__m128i x2,__m128i x3,__m128i x4,__m128i x5,__m128i x6,__m128i x7)8 audit_test (__m128i x0, __m128i x1, __m128i x2, __m128i x3,
9 	    __m128i x4, __m128i x5, __m128i x6, __m128i x7)
10 {
11   __m128i xmm;
12 
13   xmm =  _mm_set1_epi32 (0x100);
14   if (memcmp (&xmm, &x0, sizeof (xmm)))
15     abort ();
16 
17   xmm =  _mm_set1_epi32 (0x101);
18   if (memcmp (&xmm, &x1, sizeof (xmm)))
19     abort ();
20 
21   xmm =  _mm_set1_epi32 (0x102);
22   if (memcmp (&xmm, &x2, sizeof (xmm)))
23     abort ();
24 
25   xmm =  _mm_set1_epi32 (0x103);
26   if (memcmp (&xmm, &x3, sizeof (xmm)))
27     abort ();
28 
29   xmm =  _mm_set1_epi32 (0x104);
30   if (memcmp (&xmm, &x4, sizeof (xmm)))
31     abort ();
32 
33   xmm =  _mm_set1_epi32 (0x105);
34   if (memcmp (&xmm, &x5, sizeof (xmm)))
35     abort ();
36 
37   xmm =  _mm_set1_epi32 (0x106);
38   if (memcmp (&xmm, &x6, sizeof (xmm)))
39     abort ();
40 
41   xmm =  _mm_set1_epi32 (0x107);
42   if (memcmp (&xmm, &x7, sizeof (xmm)))
43     abort ();
44 
45   return _mm_setzero_si128 ();
46 }
47