1 /* Test that data prefetch instructions are not generated for i386 variants
2 that do not support those instructions. */
3
4 /* { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
5
6 extern void exit (int);
7
8 char *msg = "howdy there";
9
foo(char * p)10 void foo (char *p)
11 {
12 __builtin_prefetch (p, 0, 0);
13 __builtin_prefetch (p, 0, 1);
14 __builtin_prefetch (p, 0, 2);
15 __builtin_prefetch (p, 0, 3);
16 __builtin_prefetch (p, 1, 0);
17 __builtin_prefetch (p, 1, 1);
18 __builtin_prefetch (p, 1, 2);
19 __builtin_prefetch (p, 1, 3);
20 }
21
main()22 int main ()
23 {
24 foo (msg);
25 exit (0);
26 }
27
28 /* { dg-final { scan-assembler-not "fetch" } } */
29