Hi,

Using this simple test program:
int
main (int argc, char *argv[])
{
  int i;
  int test[8];

  __builtin_prefetch (test, 1);
  for (i = 0; i < 8; i++)
    {
      test[i] = i;
    }
  return 0;
}

And compiling using gcc -S test.c, the generated .s file includes the following 
assembly code:
.LCFI1:
        movl    %edi, -52(%rbp)
        movq    %rsi, -64(%rbp)
        leaq    -48(%rbp), %rax
        prefetchw       (%rax)
        movl    $0, -4(%rbp)
        jmp     .L2
.L3:

prefetchw is a 3Dnow! instruction, not available on EMT64.

-- 
GCC emits 3DNow!-specific instruction for __builtin_prefetch
https://launchpad.net/bugs/66702

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to