1 /* { dg-do compile } */
2 /* { dg-options "-O2 -muniform-simt -mptx=_" } */
3
4 enum memmodel
5 {
6 MEMMODEL_RELAXED = 0
7 };
8
9 unsigned long long int *p64;
10 unsigned long long int v64;
11
12 int
13 main()
14 {
15 __atomic_fetch_add (p64, v64, MEMMODEL_RELAXED);
16
17 return 0;
18 }
19
20 /* { dg-final { scan-assembler-times "atom.add.u64\[\t \]+_," 1 } } */
21 /* { dg-final { scan-assembler-times "bar.warp.sync" 1 } } */
22 /* { dg-final { scan-assembler-not "shfl.sync.idx" } } */