aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/c-c++-common/gomp/declare-variant-3.c
blob: 0d772d7aaabaa0ffea8a704debb8f86a3dff745f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
void f1 (void);
#pragma omp declare variant (f1) match (construct={target})
void f2 (void);
void f3 (void);
#pragma omp declare variant (f3) match (construct={teams})
void f4 (void);
void f5 (void);
#pragma omp declare variant (f5) match (construct={parallel})
void f6 (void);
void f7 (void);
#pragma omp declare variant (f7) match (construct={for})
void f8 (void);
void f9 (void);
#pragma omp declare variant (f9) match (construct={target,teams,parallel,for})
void f10 (void);
void f11 (void);
#pragma omp declare variant (f11) match (construct={teams,for,parallel})
void f12 (void);
void f13 (void);
#pragma omp declare variant (f13) match (device={kind(any)})
void f14 (void);
#pragma omp declare variant (f13) match (device={kind("host")})
void f15 (void);
#pragma omp declare variant (f13) match (device={kind(nohost)})
void f16 (void);
#pragma omp declare variant (f13) match (device={kind(cpu)})
void f17 (void);
#pragma omp declare variant (f13) match (device={kind("gpu")})
void f18 (void);
#pragma omp declare variant (f13) match (device={kind(fpga)})
void f19 (void);
#pragma omp declare variant (f13) match (device={kind(any)})
void f20 (void);
#pragma omp declare variant (f13) match (device={kind(host,nohost)})
void f21 (void);
#pragma omp declare variant (f13) match (device={kind("cpu","gpu","fpga")})
void f22 (void);
#pragma omp declare variant (f13) match (device={kind(cpu,nohost)})
void f23 (void);
#pragma omp declare variant (f13) match (device={isa(avx)})
void f24 (void);
#pragma omp declare variant (f13) match (device={isa(sse4,"avx512f",avx512vl,avx512bw)})
void f25 (void);
#pragma omp declare variant (f13) match (device={arch("x86_64")})
void f26 (void);
#pragma omp declare variant (f13) match (device={arch(riscv64)})
void f27 (void);
#pragma omp declare variant (f13) match (device={arch(nvptx)})
void f28 (void);
#pragma omp declare variant (f13) match (device={arch(x86_64),isa("avx512f","avx512vl"),kind(cpu)})
void f29 (void);
#pragma omp declare variant (f13) match (implementation={vendor(amd)})
void f30 (void);
#pragma omp declare variant (f13) match (implementation={vendor(arm)})
void f31 (void);
#pragma omp declare variant (f13) match (implementation={vendor("bsc")})
void f32 (void);
#pragma omp declare variant (f13) match (implementation={vendor(cray)})
void f33 (void);
#pragma omp declare variant (f13) match (implementation={vendor(fujitsu)})
void f34 (void);
#pragma omp declare variant (f13) match (implementation={vendor(gnu)})
void f35 (void);
#pragma omp declare variant (f13) match (implementation={vendor(ibm)})
void f36 (void);
#pragma omp declare variant (f13) match (implementation={vendor("intel")})
void f37 (void);
#pragma omp declare variant (f13) match (implementation={vendor(llvm)})
void f38 (void);
#pragma omp declare variant (f13) match (implementation={vendor(pgi)})
void f39 (void);
#pragma omp declare variant (f13) match (implementation={vendor(ti)})
void f40 (void);
#pragma omp declare variant (f13) match (implementation={vendor(unknown)})
void f41 (void);
#pragma omp declare variant (f13) match (implementation={vendor(gnu,llvm,intel,ibm)})
void f42 (void);
#pragma omp declare variant (f13) match (implementation={extension(my_cute_extension)})	/* { dg-warning "unknown property 'my_cute_extension' of 'extension' selector" } */
void f43 (void);
#pragma omp declare variant (f13) match (implementation={extension(some_other_ext,another_ext)})	/* { dg-warning "unknown property 'some_other_ext' of 'extension' selector" } */
void f44 (void);											/* { dg-warning "unknown property 'another_ext' of 'extension' selector" "" { target *-*-* } .-1 } */
#pragma omp declare variant (f13) match (implementation={unified_shared_memory})
void f45 (void);
#pragma omp declare variant (f13) match (implementation={unified_address})
void f46 (void);
#pragma omp declare variant (f13) match (implementation={dynamic_allocators})
void f47 (void);
#pragma omp declare variant (f13) match (implementation={reverse_offload})
void f48 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(seq_cst)})
void f49 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(relaxed)})
void f50 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(acq_rel)})
void f51 (void);
#pragma omp declare variant (f14) match (implementation={atomic_default_mem_order(acq_rel),vendor(gnu),unified_address,extension(foobar)})	/* { dg-warning "unknown property 'foobar' of 'extension' selector" } */
void f52 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(3):amd)})
void f53 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(4):"arm")})
void f54 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(5):bsc)})
void f55 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(6):cray)})
void f56 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(7):fujitsu)})
void f57 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(8):gnu)})
void f58 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(9):ibm)})
void f59 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(10):intel)})
void f60 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(11):llvm)})
void f61 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(12):pgi)})
void f62 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(13):"ti")})
void f63 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(14):unknown)})
void f64 (void);
#pragma omp declare variant (f13) match (implementation={vendor(score(15):gnu,llvm,intel,ibm)})
void f65 (void);
#pragma omp declare variant (f13) match (implementation={extension(score(16):my_cute_extension)})	/* { dg-warning "unknown property 'my_cute_extension' of 'extension' selector" } */
void f66 (void);
#pragma omp declare variant (f13) match (implementation={extension(score(17):some_other_ext,another_ext)})	/* { dg-warning "unknown property 'some_other_ext' of 'extension' selector" } */
void f67 (void);												/* { dg-warning "unknown property 'another_ext' of 'extension' selector" "" { target *-*-* } .-1 } */
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(score(18):seq_cst)})
void f68 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(score(19):relaxed)})
void f69 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(score(20):acq_rel)})
void f70 (void);
#pragma omp declare variant (f13) match (implementation={atomic_default_mem_order(score(21):acq_rel),vendor(score(22):gnu),unified_address,extension(score(22):foobar)})	/* { dg-warning "unknown property 'foobar' of 'extension' selector" } */
void f71 (void);
#pragma omp declare variant (f13) match (user={condition(0)})
void f72 (void);
#pragma omp declare variant (f13) match (user={condition(272-272*1)})
void f73 (void);
#pragma omp declare variant (f13) match (user={condition(score(25):1)})
void f74 (void);
#pragma omp declare variant (f13) match (device={kind("any")})
void f75 (void);
#pragma omp declare variant (f13) match (implementation={vendor(nvidia)})
void f78 (void);
#pragma omp declare variant (f13) match (user={condition(score(0):0)})
void f79 (void);