__restrict__ c99
void f(int *a, int *b, int *c)
{
*a += *c;
*b += *c;
}
void f2(int *__restrict__ a, int* b, int* __restrict__ c)
{
*a += *c;
*b += *c;
}
Disassembly of section .text:
0000000000000000 <f>:
0: 8b 02 mov (%rdx),%eax
2: 01 07 add %eax,(%rdi)
4: 8b 02 mov (%rdx),%eax
6: 01 06 add %eax,(%rsi)
8: c3 retq
9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000000010 <f2>:
10: 8b 02 mov (%rdx),%eax
12: 01 07 add %eax,(%rdi)
14: 01 06 add %eax,(%rsi)
16: c3 retq
Disassembly of section .text:
0000000000000000 <_Z1fPiS_S_>:
0: 8b 02 mov (%rdx),%eax
2: 01 07 add %eax,(%rdi)
4: 8b 02 mov (%rdx),%eax
6: 01 06 add %eax,(%rsi)
8: c3 retq
9: 0f 1f 80 00 00 00 00 nopl 0x0(%rax)
0000000000000010 <_Z2f2PiS_S_>:
10: 8b 02 mov (%rdx),%eax
12: 01 07 add %eax,(%rdi)
14: 01 06 add %eax,(%rsi)
16: c3 retq