Mercurial > hg > CbC > CbC_gcc
comparison libatomic/libatomic_i.h @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
1 /* Copyright (C) 2012-2017 Free Software Foundation, Inc. | 1 /* Copyright (C) 2012-2018 Free Software Foundation, Inc. |
2 Contributed by Richard Henderson <rth@redhat.com>. | 2 Contributed by Richard Henderson <rth@redhat.com>. |
3 | 3 |
4 This file is part of the GNU Atomic Library (libatomic). | 4 This file is part of the GNU Atomic Library (libatomic). |
5 | 5 |
6 Libatomic is free software; you can redistribute it and/or modify it | 6 Libatomic is free software; you can redistribute it and/or modify it |
238 # define EXPORT_ALIAS(X) /* exported symbol in non-alternate file */ | 238 # define EXPORT_ALIAS(X) /* exported symbol in non-alternate file */ |
239 #elif defined(N) && IFUNC_NCOND(N) | 239 #elif defined(N) && IFUNC_NCOND(N) |
240 # if IFUNC_NCOND(N) == 1 | 240 # if IFUNC_NCOND(N) == 1 |
241 # define GEN_SELECTOR(X) \ | 241 # define GEN_SELECTOR(X) \ |
242 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ | 242 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ |
243 static typeof(C2(libat_,X)) * C2(select_,X) (void) \ | 243 static typeof(C2(libat_,X)) * C2(select_,X) (IFUNC_RESOLVER_ARGS) \ |
244 { \ | 244 { \ |
245 if (IFUNC_COND_1) \ | 245 if (IFUNC_COND_1) \ |
246 return C3(libat_,X,_i1); \ | 246 return C3(libat_,X,_i1); \ |
247 return C2(libat_,X); \ | 247 return C2(libat_,X); \ |
248 } | 248 } |
249 # elif IFUNC_NCOND(N) == 2 | 249 # elif IFUNC_NCOND(N) == 2 |
250 # define GEN_SELECTOR(X) \ | 250 # define GEN_SELECTOR(X) \ |
251 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ | 251 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ |
252 extern typeof(C2(libat_,X)) C3(libat_,X,_i2) HIDDEN; \ | 252 extern typeof(C2(libat_,X)) C3(libat_,X,_i2) HIDDEN; \ |
253 static typeof(C2(libat_,X)) * C2(select_,X) (void) \ | 253 static typeof(C2(libat_,X)) * C2(select_,X) (IFUNC_RESOLVER_ARGS) \ |
254 { \ | 254 { \ |
255 if (IFUNC_COND_1) \ | 255 if (IFUNC_COND_1) \ |
256 return C3(libat_,X,_i1); \ | 256 return C3(libat_,X,_i1); \ |
257 if (IFUNC_COND_2) \ | 257 if (IFUNC_COND_2) \ |
258 return C3(libat_,X,_i2); \ | 258 return C3(libat_,X,_i2); \ |
261 # elif IFUNC_NCOND(N) == 3 | 261 # elif IFUNC_NCOND(N) == 3 |
262 # define GEN_SELECTOR(X) \ | 262 # define GEN_SELECTOR(X) \ |
263 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ | 263 extern typeof(C2(libat_,X)) C3(libat_,X,_i1) HIDDEN; \ |
264 extern typeof(C2(libat_,X)) C3(libat_,X,_i2) HIDDEN; \ | 264 extern typeof(C2(libat_,X)) C3(libat_,X,_i2) HIDDEN; \ |
265 extern typeof(C2(libat_,X)) C3(libat_,X,_i3) HIDDEN; \ | 265 extern typeof(C2(libat_,X)) C3(libat_,X,_i3) HIDDEN; \ |
266 static typeof(C2(libat_,X)) * C2(select_,X) (void) \ | 266 static typeof(C2(libat_,X)) * C2(select_,X) (IFUNC_RESOLVER_ARGS) \ |
267 { \ | 267 { \ |
268 if (IFUNC_COND_1) \ | 268 if (IFUNC_COND_1) \ |
269 return C3(libat_,X,_i1); \ | 269 return C3(libat_,X,_i1); \ |
270 if (IFUNC_COND_2) \ | 270 if (IFUNC_COND_2) \ |
271 return C3(libat_,X,_i2); \ | 271 return C3(libat_,X,_i2); \ |