Merge from mainline (gomp-merge-2005-02-26).
[official-gcc.git] / gcc / testsuite / gcc.misc-tests / i386-pf-3dnow-1.c
blobe4961cf6c51a49018cfead68fbe2588d3e6741b9
1 /* Test that the correct data prefetch instructions are generated for i386
2 variants that use 3DNow! prefetch instructions. */
4 /* { dg-do compile { target i?86-*-* } } */
5 /* { dg-skip-if "" { i?86-*-* } { "-m64" } { "" } } */
7 extern void exit (int);
9 char *msg = "howdy there";
11 void foo (char *p)
13 __builtin_prefetch (p, 0, 0);
14 __builtin_prefetch (p, 0, 1);
15 __builtin_prefetch (p, 0, 2);
16 __builtin_prefetch (p, 0, 3);
17 __builtin_prefetch (p, 1, 0);
18 __builtin_prefetch (p, 1, 1);
19 __builtin_prefetch (p, 1, 2);
20 __builtin_prefetch (p, 1, 3);
23 int main ()
25 foo (msg);
26 exit (0);
29 /* { dg-final { scan-assembler "prefetch" } } */
30 /* { dg-final { scan-assembler "prefetchw" } } */
31 /* { dg-final { scan-assembler-not "prefetchnta" } } */
32 /* { dg-final { scan-assembler-not "prefetcht" } } */